100 Best Object Oriented Programming Books of All Time

We've ranked the best object oriented programming books using expert recommendations, sales data, and millions of reader ratings. At Shortform, we know books. Our book guides are the best in the world. Learn why.

Design Patterns: Elements of Reusable Object-Oriented Software book cover1

Design Patterns: Elements of Reusable Object-Oriented Software

Erich; Helm John Gamma

5.0
Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalog of simple and succinct solutions to commonly occurring design problems. Previously undocumented, these 23 patterns allow designers to create more flexible, elegant, and ultimately reusable designs without having to rediscover the design solutions themselves.

The authors begin by
2

Code Complete

Steve McConnell

5.0
Widely considered one of the best practical guides to programming, Steve McConnell's original CODE COMPLETE has been helping developers write better software for more than a decade. Now this classic book has been fully updated and revised with leading-edge practices--and hundreds of new code samples--illustrating the art and science of software construction. Capturing the body of knowledge availab
Clean Code: A Handbook of Agile Software Craftsmanship book cover3

Clean Code: A Handbook of Agile Software Craftsmanship

Robert C. Martin

4.9
Even bad code can function. But if code isn t clean, it can bring a development organization to its knees. Every year, countless hours and significant resources are lost because of poorly written code. But it doesn t have to be that way.
Noted software expert Robert C. Martin presents a revolutionary paradigm with Clean Code: A Handbook of Agile Software Craftsmanship . Martin has teamed up with
99 Bottles of OOP book cover4

99 Bottles of OOP

Sandi Met

4.9
"Everybody complains about the weather but nobody does anything about it." Likewise, everyone has an opinion about what good code looks like, but those opinions don't help you create it. This book fills that gap. It explains the process of writing good code, and teaches you to achieve beautifully programmed ends by way of extremely practical means.
What It's About

99 Bottles of OOP is a practical g
The Great Gatsby book cover5

The Great Gatsby

F. Scott Fitzgerald

4.9
A young man, newly rich, tries to recapture the past and win back his former love, despite the fact that she has married.
Domain-Driven Design: Tackling Complexity in the Heart of Software book cover6

Domain-Driven Design: Tackling Complexity in the Heart of Software

Eric Evans

4.8
"Eric Evans has written a fantastic book on how you can make the design of your software match your mental model of the problem domain you are addressing. "His book is very compatible with XP. It is not about drawing pictures of a domain; it is about how you think of it, the language you use to talk about it, and how you organize your software to reflect your improving understanding of it. Eric th
Patterns of Enterprise Application Architecture book cover7

Patterns of Enterprise Application Architecture

Martin Fowler

4.8
The practice of enterprise application development has benefited from the emergence of many new enabling technologies. Multi-tiered object-oriented platforms, such as Java and .NET, have become commonplace. These new tools and technologies are capable of building powerful applications, but they are not easily implemented. Common failures in enterprise applications often occur because their develop
Refactoring: Improving the Design of Existing Code book cover8

Refactoring: Improving the Design of Existing Code

Martin Fowler

4.7
Fully Revised and Updated-Includes New Refactorings and Code Examples"Any fool can write code that a computer can understand. Good programmers write code that humans can understand."
--M. Fowler (1999) For more than twenty years, experienced programmers worldwide have relied on Martin Fowler's Refactoring to improve the design of existing code and to enhance software maintainability, as well as to
9

Growing Object-Oriented Software, Guided by Tests

Steve Freeman, Nat Pryce

4.7
Foreword by Kent Beck "The authors of this book have led a revolution in the craft of programming by controlling the environment in which software grows." --Ward Cunningham "At last, a book suffused with code that exposes the deep symbiosis between TDD and OOD. This one's a keeper." --Robert C. Martin "If you want to be an expert in the state of the art in TDD, you need to understand the ideas i
Practical Object Oriented Design in Ruby book cover10

Practical Object Oriented Design in Ruby

Sandi Metz

4.7
The Complete Guide to Writing More Maintainable, Manageable, Pleasing, and Powerful Ruby Applications Ruby's widely admired ease of use has a downside: Too many Ruby and Rails applications have been created without concern for their long-term maintenance or evolution. The Web is awash in Ruby code that is now virtually impossible to change or extend. This text helps you solve that problem by using
Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming book cover11

Python Crash Course, 3rd Edition: A Hands-On, Project-Based Introduction to Programming

Eric Matthes

4.6
Head First Design Patterns book cover12

Head First Design Patterns

Eric Freeman, Bert Bates, Kathy Sierra, Elisabeth Robson

4.6
You're not alone.

At any given moment, somewhere in the world someone struggles with the same software design problems you have. You know you don't want to reinvent the wheel (or worse, a flat tire), so you look to Design Patterns--the lessons learned by those who've faced the same problems. With Design Patterns, you get to take advantage of the best practices and experience of others, so that you
Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software 2nd Edition book cover13

Head First Design Patterns: Building Extensible and Maintainable Object-Oriented Software 2nd Edition

Eric Freeman, Elisabeth Robson

4.5

What will you learn from this book? You know you don't want to reinvent the wheel, so you look to Design Patterns: the lessons learned by those who've faced the same software design problems. With Design Patterns, you get to take advantage of the best practices and experience of others so you can spend your time on something more challenging. Something more fun. This book shows you the patterns th

Fluent Python: Clear, Concise, and Effective Programming book cover14

Fluent Python: Clear, Concise, and Effective Programming

Luciano Ramalho

4.5
Python's simplicity lets you become productive quickly, but this often means you aren't using everything it has to offer. With this hands-on guide, you'll learn how to write effective, idiomatic Python code by leveraging its best and possibly most neglected features. Author Luciano Ramalho takes you through Python's core language features and libraries, and shows you how to make your code shorter,
Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14 book cover15

Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14

Scott Meyers

4.4
Coming to grips with C++11 and C++14 is more than a matter of familiarizing yourself with the features they introduce (e.g., auto type declarations, move semantics, lambda expressions, and concurrency support). The challenge is learning to use those features effectively--so that your software is correct, efficient, maintainable, and portable. That's where this practical book comes in. It describes
Learning Python book cover16

Learning Python

Mark Lutz

4.4
Portable, powerful, and a breeze to use, Python is the popular open source object-oriented programming language used for both standalone programs and scripting applications. Python is considered easy to learn, but there's no quicker way to mastery of the language than learning from an expert teacher. This edition of "Learning Python" puts you in the hands of two expert teachers, Mark Lutz and Davi
Tour of C++, A (C++ In-Depth Series) book cover17

Tour of C++, A (C++ In-Depth Series)

Bjarne Stroustrup

4.4

In A Tour of C++, Third Edition, Bjarne Stroustrup provides an overview of ISO C++, C++20, that aims to give experienced programmers a clear understanding of what constitutes modern C++. Featuring carefully crafted examples and practical help in getting started, this revised and updated edition concisely covers most major language features and the major standard-library components needed for effec

Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming book cover18

Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming

Eric Matthes

4.4
Second edition of the best selling Python book in the world. A fast-paced, no-nonsense guide to programming in Python. This book teaches beginners the basics of programming in Python with a focus on real projects.

This is the second edition of the best selling Python book in the world. Python Crash Course, 2nd Edition is a straightforward introduction to the core of Python programming. Author Eric
19

LabVIEW Graphical Programming, Fifth Edition

Richard Jennings and Fabiola De la Cueva

4.3
Publisher's Note: Products purchased from Third Party sellers are not guaranteed by the publisher for quality, authenticity, or access to any online entitlements included with the product.



LabVIEW programming techniques, tips, and practices


Learn to build effective LabVIEW programs using the detailed information contained in this thoroughly revised resource. This edition updates all content to
20

Elegant Objects

Yegor Bugayenko

4.3
TL;DR There are 23 practical recommendations for object-oriented programmers. Most of them are completely against everything you've read in other books. For example, static methods, NULL references, getters, setters, and mutable classes are called evil.
Python Illustrated: Not another boring Python book, learn programming the fun way book cover21

Python Illustrated: Not another boring Python book, learn programming the fun way

Maaike van Putten, Imke van Putten

4.3

Learn Python coding concepts the fun way through humour, storytelling, and beginner-friendly examples that make your first step into the world of Python programming enjoyableKey FeaturesFollow an adorable, illustrated teaching cat with sharp coding instincts as your guideBuild confidence and coding skills with step-by-step explanations that gradually increase your understandingReinforce your learn

22

Object-Oriented Analysis and Design with Applications

Grady Booch, Robert A. Maksimchuk, Michael W. Engle, Bobbi J. Young, Jim Conallen, Kelli A. Houston

4.3
Grady Booch and his co-authors draw upon the rich and varied results of object-oriented software development projects and offer improved methods for their analysis and design, lightly making use of UML notation. Booch illustrates essential concepts, explains the method, and shows successful applications in a variety of fields. Booch also gives pragmatic advice on a host of issues, including classi
Working Effectively with Legacy Code book cover23

Working Effectively with Legacy Code

Michael Feathers

4.3
Get more out of your legacy systems, more performance, functionality, reliability, and manageability.Is your code easy to change? Can you get nearly instantaneous feedback when you do change it? Do you understand it? If the answer to any of these questions is no, you have legacy code, and it is draining time and money away from your development efforts.

In this book, Michael Feathers offers start-t
JavaScript: The Definitive Guide book cover24

JavaScript: The Definitive Guide

David Flanagan

4.3
Since 1996, JavaScript: The Definitive Guide has been the bible for JavaScript programmers—a programmer's guide and comprehensive reference to the core language and to the client-side JavaScript APIs defined by web browsers. The 6th edition covers HTML5 and ECMAScript 5, with new chapters on jQuery and server side JavaScript. It's recommended for experienced programmers who want to learn the progr
Java: The Complete Reference, Thirteenth Edition book cover25

Java: The Complete Reference, Thirteenth Edition

Herbert Schildt

4.3
Java with Generative AI: a QuickStudy Laminated Reference Guide book cover26

Java with Generative AI: a QuickStudy Laminated Reference Guide

Robin Nixon

4.3

Essential reference guide for Java programmers of all skill levels to use AI to speed up tedious tasks, reduce mistakes, and gather suggestions for better ways to use the language they already know. In just 6 laminated pages you can reference the skills to deliberately direct AI tools to explain unfamiliar code, navigate libraries faster, design cleaner architecture, and write better tests. Used t

27

Python Programming For Beginners: Learn Python In 5 Days with Step-By-Step Guidance, Hands-On Exercises And Solution (Coding Made Easy Book 1)

James Tudor

4.3
Programming Rust: Fast, Safe Systems Development book cover28

Programming Rust: Fast, Safe Systems Development

Jim Blandy, Jason Orendorff, Leonora F. S. Tindall

4.3

Systems programming provides the foundation for the world's computation. Writing performance-sensitive code requires a programming language that puts programmers in control of how memory, processor time, and other system resources are used. The Rust systems programming language combines that control with a modern type system that catches broad classes of common mistakes, from memory management err

Design Patterns in Ruby book cover29

Design Patterns in Ruby

Russ Olsen

4.3
Praise for Design Patterns in Ruby

" Design Patterns in Ruby documents smart ways to resolve many problems that Ruby developers commonly encounter. Russ Olsen has done a great job of selecting classic patterns and augmenting these with newer patterns that have special relevance for Ruby. He clearly explains each idea, making a wealth of experience available to Ruby developers for their own daily
30

The Object-Oriented Thought Process

Matt Weisfeld

4.3
Object-oriented programming (OOP) is the foundation of modern programming languages, including C++, Java, C#, Visual Basic .NET, Ruby, Objective-C, and Swift. Objects also form the basis for many web technologies such as JavaScript, Python, and PHP.
It is of vital importance to learn the fundamental concepts of object orientation before starting to use object-oriented development environments. OO
Python QuickStart Guide: The Simplified Beginner's Guide to Python Programming Using Hands-On Projects and Real-World Applications (Coding & Programming - QuickStart Guides) book cover31

Python QuickStart Guide: The Simplified Beginner's Guide to Python Programming Using Hands-On Projects and Real-World Applications (Coding & Programming - QuickStart Guides)

Robert Oliver

4.3
Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# book cover32

Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F#

Scott Wlaschin

4.3
You want increased customer satisfaction, faster development cycles, and less wasted work. Domain-driven design (DDD) combined with functional programming is the innovative combo that will get you there. In this pragmatic, down-to-earth guide, you'll see how applying the core principles of functional programming can result in software designs that model real-world requirements both elegantly and c
Head First Java: A Brain-Friendly Guide book cover33

Head First Java: A Brain-Friendly Guide

Kathy Sierra, Bert Bates, Trisha Gee

4.3

What will you learn from this book?Head First Java is a complete learning experience in Java and object-oriented programming. With this book, you'll learn the Java language with a unique method that goes beyond how-to manuals and helps you become a great programmer. Through puzzles, mysteries, and soul-searching interviews with famous Java objects, you'll quickly get up to speed on Java's fundamen

The Self-Taught Programmer: The Definitive Guide to Programming Professionally book cover34

The Self-Taught Programmer: The Definitive Guide to Programming Professionally

Cory Althoff

4.3
I am a self-taught programmer. After a year of self-study, I learned to program well enough to land a job as a software engineer II at eBay. Once I got there, I realized I was severely under-prepared. I was overwhelmed by the amount of things I needed to know but hadn't learned yet. My journey learning to program, and my experience at my first job as a software engineer were the inspiration for th
C++ Crash Course: A Fast-Paced Introduction book cover35

C++ Crash Course: A Fast-Paced Introduction

Josh Lospinoso

4.3
A fast-paced, thorough introduction to modern C++ written for experienced programmers. After reading C++ Crash Course, you'll be proficient in the core language concepts, the C++ Standard Library, and the Boost Libraries.

C++ is one of the most widely used languages for real-world software. In the hands of a knowledgeable programmer, C++ can produce small, efficient, and readable code that any prog
JavaScript QuickStart Guide: The Simplified Beginner's Guide to Building Interactive Websites and Creating Dynamic Functionality Using Hands-On Projects (Coding & Programming - QuickStart Guides) book cover36

JavaScript QuickStart Guide: The Simplified Beginner's Guide to Building Interactive Websites and Creating Dynamic Functionality Using Hands-On Projects (Coding & Programming - QuickStart Guides)

Robert Oliver

4.3

THE ULTIMATE BEGINNER'S GUIDE TO LEARNING JAVASCRIPT IN 2025! **Includes FREE Digital Bonuses! GitHub Repository, Cheat Sheets, and More!**Learn Why QuickStart Guides are Loved by Over 1 Million Readers Around the World Master the most popular programming language in the world. Learn how to bring websites to life with the power of JavaScript, add dynamic interactivity and rich animations to otherw

Learn Python in One Day and Learn It Well (2nd Edition): Python for Beginners with Hands-On Project. the Only Book You Need to Start Coding in Python Immediately book cover37

Learn Python in One Day and Learn It Well (2nd Edition): Python for Beginners with Hands-On Project. the Only Book You Need to Start Coding in Python Immediately

Jamie Chan

4.3
(2nd Edition: Covers Object Oriented Programming)
Master Python Programming with a unique Hands-On Project


Have you always wanted to learn computer programming but are afraid it'll be too difficult for you? Or perhaps you know other programming languages but are interested in learning the Python language fast?

This book is for you. You no longer have to waste your time and money learning Python from
Mastering Regular Expressions book cover38

Mastering Regular Expressions

Jeffrey E. F. Friedl

4.3
Regular expressions are an extremely powerful tool for manipulating text and data. They are now standard features in a wide range of languages and popular tools, including Perl, Python, Ruby, Java, VB.NET and C# (and any language using the .NET Framework), PHP, and MySQL.

If you don't use regular expressions yet, you will discover in this book a whole new world of mastery over your data. If you alr
39

The Art of the Metaobject Protocol

Gregor Kiczales, Jim des Rivieres, Daniel G. Bobrow

4.2

The CLOS metaobject protocol is an elegant, high-performance extension tothe CommonLisp Object System. The authors, who developed the metaobject protocol andwho were among the group that developed CLOS, introduce this new approach toprogramming language design, describe its evolution and design principles, andpresent a formal specification of a metaobject protocol for CLOS.Kiczales, desRivi?res, a

Mastering Object-Oriented Python: Build powerful applications with reusable code using OOP design patterns and Python 3.7, 2nd Edition book cover40

Mastering Object-Oriented Python: Build powerful applications with reusable code using OOP design patterns and Python 3.7, 2nd Edition

Steven F. Lott

4.2
Introducing Python: Modern Computing in Simple Packages book cover41

Introducing Python: Modern Computing in Simple Packages

Bill Lubanovic

4.2
Easy to understand and fun to read, this updated edition of Introducing Python is ideal for beginning programmers as well as those new to the language. Author Bill Lubanovic takes you from the basics to more involved and varied topics, mixing tutorials with cookbook-style code recipes to explain concepts in Python 3. End-of-chapter exercises help you practice what you've learned.

You'll gain a stro
42

MATLAB Programming for Engineers

Stephen J. Chapman

4.2
Master today's MATLAB technical programming language while strengthening problem-solving skills with the help of Chapman's successful MATLAB PROGRAMMING FOR ENGINEERS, 6th Edition. You learn how to write clean, efficient and well-documented programs as you simultaneously gain an understanding of the many practical functions of MATLAB. You study the latest version of MATLAB R2018a and work with new
43

Programming Rust: Fast, Safe Systems Development

Jim Blandy

4.2
Rust is a new systems programming language that combines the performance and low-level control of C and C++ with memory safety and thread safety. Rust's modern, flexible types ensure your program is free of null pointer dereferences, double frees, dangling pointers, and similar bugs, all at compile time, without runtime overhead. In multi-threaded code, Rust catches data races at compile time, mak
Head First Java book cover44

Head First Java

Kathy Sierra and Bert Bates

4.2
Learning a complex new language is no easy task especially when it s an object-oriented computer programming language like Java. You might think the problem is your brain. It seems to have a mind of its own, a mind that doesn't always want to take in the dry, technical stuff you're forced to study.

The fact is your brain craves novelty. It's constantly searching, scanning, waiting for something un
45

PHP Advanced and Object-Oriented Programming: Visual Quickpro Guide

Larry Ullman

4.2
Readers can take their PHP skills to the next level with this fully revised and updated PHP Advanced: Visual QuickPro Guide, Third Edition! Filled with fourteen chapters of step-by-step content and written by bestselling author and PHP programmer Larry Ullman, this guide teaches specific topics in direct, focused segments, shows how PHP is used in real-world applications. The book teaches developi
Test Driven Development: By Example book cover46

Test Driven Development: By Example

Kent Beck

4.2
Follows two TDD projects from start to finish, illustrating techniques programmers can use to increase the quality of their work. The examples are followed by references to the featured TDD patterns and refactorings. This book emphasises on agile methods and fast development strategies.
Programming Language Pragmatics book cover47

Programming Language Pragmatics

Michael Scott, Jonathan Aldrich

4.2

Programming Language Pragmatics is the most comprehensive programming language textbook available today, with nearly 1000 pages of content in the book, plus hundreds more pages of reference materials and ancillaries online. Michael Scott takes theperspective that language design and language implementation are tightly interconnected, and that neither can be fully understood in isolation. In an app

48

Microsoft® Visual C#® 2005 Express Edition: Build a Program Now!

Patrice Pelland

4.2
Build a software program—such as your own Web browser or weather-reporting application—without any programming experience! Featuring learn-by-doing projects and plenty of visual examples, this hands-on book is your quick start to creating applications for Microsoft Windows.

Have fun as you discover how to:


Design a rich user interface with easy-to-use tools “Drag and drop” text boxes, buttons, and o
49

Programming Python

Mark Lutz

4.2
If you've mastered Python's fundamentals, you're ready to start using it to get real work done. Programming Python will show you how, with in-depth tutorials on the language's primary application domains: system administration, GUIs, and the Web. You'll also explore how Python is used in databases, networking, front-end scripting layers, text processing, and more. This book focuses on commonly use
50

Object-Oriented Programming in Common LISP: A Programmer's Guide to Clos

Sonya E. Keene

4.2
51

C# 7.0 in a Nutshell: The Definitive Reference

Joseph Albahari and Ben Albahari

4.2
When you have questions about C# 7.0 or the .NET CLR and its core Framework assemblies, this bestselling guide has the answers you need. Since its debut in 2000, C# has become a language of unusual flexibility and breadth, but its continual growth means there's always more to learn.

Organized around concepts and use cases, this updated edition provides intermediate and advanced programmers with a c
52

Sams Teach Yourself C++ in One Hour a Day

Siddhartha Rao

4.2
In just one hour a day, you'll have all the skills you need to begin programming in C++. With this complete tutorial, you'll quickly master the basics, and then move on to more advanced features and concepts. Completely updated for the C++14 standard, with a preview of C++17, this book presents the language from a practical point of view, helping you learn how to use C++ to create faster, simpler,
53

Elegant Objects (Volume 2)

Yegor Bugayenko

4.2
SysML Distilled: A Brief Guide to the Systems Modeling Language book cover54

SysML Distilled: A Brief Guide to the Systems Modeling Language

Lenny Delligatti

4.2
The Systems Modeling Language (SysML) extends UML with powerful systems engineering capabilities for modeling a wider spectrum of systems and capturing all aspects of a system's design. SysML Distilled is the first clear, concise guide for everyone who wants to start creating effective SysML models.

(Drawing on his pioneering experience at Lockheed Martin and NASA, Lenny Delligatti illuminates Sy
55

Object-Oriented Programming in C++

Robert Lafore

4.2
Object-Oriented Programming in C++ begins with the basic principles of the C++ programming language and systematically introduces increasingly advanced topics while illustrating the OOP methodology. While the structure of this book is similar to that of the previous edition, each chapter reflects the latest ANSI C++ standard and the examples have been thoroughly revised to reflect current practice
Python Pocket Reference book cover56

Python Pocket Reference

Mark Lutz

4.2
Updated for both Python 3.4 and 2.7, this convenient pocket guide is the perfect on-the-job quick reference. You’ll find concise, need-to-know information on Python types and statements, special method names, built-in functions and exceptions, commonly used standard library modules, and other prominent Python tools. The handy index lets you pinpoint exactly what you need.

Written by Mark Lutz—widel
57

Agile Software Development, Principles, Patterns, and Practices

Robert C. Martin

4.2
Written by a software developer for software developers, this book is a unique collection of the latest software development methods. The author includes OOD, UML, Design Patterns, Agile and XP methods with a detailed description of a complete software design for reusable programs in C++ and Java. Using a practical, problem-solving approach, it shows how to develop an object-oriented application--
Object Oriented Design Interview: An Insider’s Guide book cover58

Object Oriented Design Interview: An Insider’s Guide

Desmond Zhou, Fawaz Bokhari, Alex Xu

4.2

Object-oriented design interviews have become increasingly popular in technical hiring. This shift reflects companies’ growing emphasis on skills that align with real-world software development. OOD interviews are important at companies like Amazon, Bloomberg, and Uber, serving as a practical coding exercise. These interviews test your ability to build logical, maintainable systems and gauge how e

59

Secrets of the JavaScript Ninja

John Resig

4.2
Secrets of the JavaScript Ninja uses practical examples to clearly illustrate each core concept and technique. This completely revised edition shows you how to master key JavaScript concepts such as functions, closures, objects, prototypes, and promises. It covers APIs such as the DOM, events, and timers. You’ll discover best practice techniques such as testing, and cross-browser development, all
60

Object-Oriented Software Construction (Book/CD-ROM)

Bertrand Meyer

4.2
This is, quite simply, the definitive reference on the most important development in software technology for the last 20 years: object-orientation.

A whole generation was introduced to object technology through the first edition of this book. This long-awaited new edition retains the qualities of clarity, practicality and scholarship that made the first an instant bestseller, but has been thorough
61

Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development

Craig Larman

4.2
Applying UML and Patterns is the world’s #1 business and college introduction to “thinking in objects” - and using that insight in real-world object-oriented analysis and design. Building on two widely acclaimed previous editions, Craig Larman has updated this book to fully reflect the new UML 2 standard, to help you master the art of object design, and to promote high-impact, iterative, and skill
C++ Primer book cover62

C++ Primer

Stanley B. Lippman

4.1
Bestselling Programming Tutorial and Reference Completely Rewritten for the New C++11 Standard Fully updated and recast for the newly released C++11 standard, this authoritative and comprehensive introduction to C++ will help you to learn the language fast, and to use it in modern, highly effective ways. Highlighting today's best practices, the authors show how to use both the core language and it
63

UML Distilled: A Brief Guide to the Standard Object Modeling Language

Martin Fowler

4.1
More than 300,000 developers have benefited from past editions of UML Distilled . This third edition is the best resource for quick, no-nonsense insights into understanding and using UML 2.0 and prior versions of the UML. Some readers will want to quickly get up to speed with the UML 2.0 and learn the essentials of the UML. Others will use this book as a handy, quick reference to the most common
Programming in Haskell book cover64

Programming in Haskell

Graham Hutton

4.1
Haskell is a purely functional language that allows programmers to rapidly develop clear, concise, and correct software. The language has grown in popularity in recent years, both in teaching and in industry. This book is based on the author's experience of teaching Haskell for more than twenty years. All concepts are explained from first principles and no programming experience is required, makin
Kotlin in Action, Second Edition book cover65

Kotlin in Action, Second Edition

Sebastian Aigner, Roman Elizarov, Svetlana Isakova, and Dmitry Jemerov

4.1
JavaScript from Beginner to Professional: Learn JavaScript quickly by building fun, interactive, and dynamic web apps, games, book cover66

JavaScript from Beginner to Professional: Learn JavaScript quickly by building fun, interactive, and dynamic web apps, games,

Laurence Lars Svekis, Maaike Van Putten, and Rob Percival

4.1
Think Python: How to Think Like a Computer Scientist book cover67

Think Python: How to Think Like a Computer Scientist

Allen B. Downey

4.1
If you want to learn how to program, working with Python is an excellent way to start. This hands-on guide takes you through the language a step at a time, beginning with basic programming concepts before moving on to functions, recursion, data structures, and object-oriented design. This second edition and its supporting code have been updated for Python 3.

Through exercises in each chapter, you'l
68

Aprende inglés sin ir a clases

John Galeano

4.1
Learning Python: Powerful Object-Oriented Programming book cover69

Learning Python: Powerful Object-Oriented Programming

Mark Lutz

4.1

Get a comprehensive, in-depth introduction to the core Python language with this hands-on book. Based on author Mark Lutz's popular training course, this updated sixth edition will help you quickly write efficient, high-quality code with Python. It's an ideal way to begin, whether you're new to programming or a professional developer versed in other languages. Complete with quizzes, exercises, and

Java: Learn Java in One Day and Learn It Well. Java for Beginners with Hands-on Project. book cover70

Java: Learn Java in One Day and Learn It Well. Java for Beginners with Hands-on Project.

LCF Publishing

4.1
(2016 Edition) Learn Java Programming Fast with a unique Hands-On Project. Book 4 of the Learn Coding Fast Series. Covers Java 8.

Have you always wanted to learn computer programming but are afraid it'll be too difficult for you? Or perhaps you know other programming languages but are interested in learning the Java language fast?

This book is for you. You no longer have to waste your time and mone
71

The Chalet School in the Oberland

Elinor M. Brent-Dyer

4.1
Java 8 in Action: Lambdas, Streams, and Functional-Style Programming book cover72

Java 8 in Action: Lambdas, Streams, and Functional-Style Programming

Raoul-Gabriel Urma, Mario Fusco, et al.

4.1
Summary

"Java 8 in Action" is a clearly written guide to the new features of Java 8. The book covers lambdas, streams, and functional-style programming. With Java 8's functional features you can now write more concise code in less time, and also automatically benefit from multicore architectures. It's time to dig in!

Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats f
73

Head First Python: A Brain-Friendly Guide

Paul Barry

4.1
Want to learn the Python language without slogging your way through how-to manuals? With Head First Python, you'll quickly grasp Python's fundamentals, working with the built-in data structures and functions. Then you'll move on to building your very own webapp, exploring database management, exception handling, and data wrangling. If you're intrigued by what you can do with context managers, deco
74

Object-Oriented Design Heuristics

Arthur J. Riel

4.1
Provides a set of metrics that helps determine the quality of object-oriented models. This book offers insight into object-oriented design improvement. The more than sixty guidelines presented in this book are language-independent and allow you to rate the integrity of a software design.
From Mathematics to Generic Programming book cover75

From Mathematics to Generic Programming

Alexander Stepanov

4.1
In this substantive yet accessible book, pioneering software designer Alexander Stepanov and his colleague Daniel Rose illuminate the principles of generic programming and the mathematical concept of abstraction on which it is based, helping you write code that is both simpler and more powerful. If you're a reasonably proficient programmer who can think logically, you have all the background you'l
76

The Chalet School Does It Again

Elinor M. Brent-Dyer

4.1
77

Indestructibles: Plip-Plop Pond!

Kaaren Pixton

4.1
Show baby all the animals that love to splash in a book that’s indestructible!

Who plays in the mud? Turtle!
Who glides across the water? Swan!
Who sings on a tree branch? Kingfisher!


Indestructibles is the trusted series for easing little ones into story time. Beloved by babies and their parents, Indestructibles are built for the way babies “read” (i.e., with their hands and mouths) and are:


Ri
78

IOS 13 Programming Fundamentals with Swift: Swift, Xcode, and Cocoa Basics

Matt Neuburg

4.1
Move into iOS development by getting a firm grasp of its fundamentals, including the Xcode 10 IDE, Cocoa Touch, and the latest version of Apple's acclaimed programming language, Swift 5. With this thoroughly updated guide, you'll learn the Swift language, understand Apple's Xcode development tools, and discover the Cocoa framework.


Explore Swift's object-oriented concepts
Become familiar with built-
79

Head First Learn to Code: A Learner's Guide to Coding and Computational Thinking

Eric Freeman

4.1
What will you learn from this book?

It's no secret the world around you is becoming more connected, more configurable, more programmable, more computational. You can remain a passive participant, or you can learn to code. With Head First Learn to Code you'll learn how to think computationally and how to write code to make your computer, mobile device, or anything with a CPU do things for you. Using
80

C++ in One Hour a Day, Sams Teach Yourself

Siddhartha Rao

4.1
Learn C# in One Day and Learn It Well: C# for Beginners with Hands-on Project book cover81

Learn C# in One Day and Learn It Well: C# for Beginners with Hands-on Project

Jamie Chan

4.1
Master C# Programming with a unique Hands-On Project (Updated for VS Community 2017)

Have you always wanted to learn computer programming but are afraid it'll be too difficult for you? Or perhaps you know other programming languages but are interested in learning the C# language fast?

This book is for you. You no longer have to waste your time and money learning C# from boring books that are 600 pag
Java All-In-One for Dummies book cover82

Java All-In-One for Dummies

Doug Lowe

4.1
Your one-stop guide to programming with Java If you've always wanted to program with Java but didn't know where to start, this will be the java-stained reference you'll turn to again and again. Fully updated for the JDK 9, this deep reference on the world's most popular programming language is the perfect starting point for building things with Java--and an invaluable ongoing reference as you cont
C++ All-In-One for Dummies book cover83

C++ All-In-One for Dummies

John Paul Mueller

4.1
Get ahead of the C++ curve to stay in the game C++ is the workhorse of programming languages and remains one of the most widely used programming languages today. It's cross-platform, multi-functional, and updates are typically open-source. The language itself is object-oriented, offering you the utmost control over data usage, interface, and resource allocation. If your job involves data, C++ prof
84

Object-Oriented JavaScript

Stoyan Stefanov

4.1
A Practical Guide to Sysml: The Systems Modeling Language book cover85

A Practical Guide to Sysml: The Systems Modeling Language

Sanford Friedenthal

4.1
Think Java: How to Think Like a Computer Scientist book cover86

Think Java: How to Think Like a Computer Scientist

Allen B. Downey and Chris Mayfield

4.0
Currently used at many colleges, universities, and high schools, this hands-on introduction to computer science is ideal for people with little or no programming experience. The goal of this concise book is not just to teach you Java, but to help you think like a computer scientist. You’ll learn how to program—a useful skill by itself—but you’ll also discover how to use programming as a means to a
87

An Introduction to Object-Oriented Programming with Java

C. Thomas Wu

4.0
"An Introduction to Object-Oriented Programming with Java" takes a full-immersion approach to object-oriented programming. Proper object-oriented design practices are emphasized throughout the book. Students learn how to use the standard classes first, then learn to design their own classes. Wu uses a gentler approach to teaching students how to design their own classes, separating the coverage in
88

Scala Cookbook

Alvin Alexander

4.0
Save time and trouble when using Scala to build object-oriented, functional, and concurrent applications. With more than 250 ready-to-use recipes and 700 code examples, this comprehensive cookbook covers the most common problems you’ll encounter when using the Scala language, libraries, and tools. It’s ideal not only for experienced Scala developers, but also for programmers learning to use this J
89

Object Thinking

David West

4.0
In OBJECT THINKING, esteemed object technologist David West contends that the mindset makes the programmer not the tools and techniques. Delving into the history, philosophy, and even politics of object-oriented programming, West reveals how the best programmers rely on analysis and conceptualization on thinking rather than formal process and methods. Both provocative and pragmatic, this book give
Natural Language Processing with Python book cover90

Natural Language Processing with Python

Steven Bird, Ewan Klein, Edward Loper

4.0
This book offers a highly accessible introduction to natural language processing, the field that supports a variety of language technologies, from predictive text and email filtering to automatic summarization and translation. With it, you'll learn how to write Python programs that work with large collections of unstructured text. You'll access richly annotated datasets using a comprehensive range
91

Design Patterns Explained: A New Perspective on Object-Oriented Design (Software Patterns Series)

Alan Shalloway and James R. Trott

4.0
One of the great things about the book is the way the authors explain concepts very simply using analogies rather than programming examples this has been very inspiring for a product I'm working on: an audio-only introduction to OOP and software development." Bruce Eckel ..".I would expect that readers with a basic understanding of object-oriented programming and design would find this book useful
92

Ruby Science

Ruby Dixo

4.0
The reference for writing fantastic Rails applications

You build web applications, and you love Ruby on Rails because it provides a framework for developing applications that are are fast, fun, and easy to change. Over time these applications can become bloated, development slows down, and changes to the codebase become painful.

This book was written to help you learn to detect emerging problems in
Learning Java: An Introduction to Real-World Programming with Java book cover93

Learning Java: An Introduction to Real-World Programming with Java

Marc Loy, Patrick Niemeyer, and Daniel Leuck

4.0
94

Introduction to Programming with Greenfoot: Object-Oriented Programming in Java with Games and Simulations

Michael Kolling

4.0
"Introduction to Programming with Greenfoot: Object-Oriented Programming in Java with games and Simulations" is ideal for introductory courses in Java Programming or Introduction to Computer Science. "The only textbook to teach Java programming using Greenfoot--this is "Serious Fun." " Programming doesn't have to be dry and boring. This book teaches Java programming in an interactive and engaging
95

Night Work (Kate Martinelli, #4)

Laurie R. King

4.0
Kate and her partner, Al Hawkin, are called to a scene of carefully executed murder: the victim is a muscular man, handcuffed and strangled, a stun gun's faint burn on his chest and candy in his pocket. The likeliest person to want him dead, his often-abused wife, is meek and frail—and has an airtight alibi. Kate and Al are stumped, until a second body turns up—also zapped, cuffed, and strangled..
96

Java Illuminated

Julie Anderson

4.0
Written for the one- to three-term introductory programming course, the fifth edition of Java Illuminated provides learners with an interactive, user-friendly approach to learning the Java programming language. Comprehensive but accessible, the text takes a progressive approach to object-oriented programming, allowing students to build on established skills to develop new and increasingly complex
Murach's C# Programming Book (8th Edition) Comprehensive Guide for Windows Forms Apps & Database Development - Self-Paced Learning for Beginners & Professional Developers book cover97

Murach's C# Programming Book (8th Edition) Comprehensive Guide for Windows Forms Apps & Database Development - Self-Paced Learning for Beginners & Professional Developers

Joel Murach

4.0

Professional Programming Guide Murach's C# (8th Edition) is the definitive guide for learning C# programming. This comprehensive book covers essential software engineering concepts, from basic syntax to advanced software architecture. With clear examples and detailed explanations, developers of all skill levels can master Windows Forms development, database integration, and object-oriented program

98

A Medal for Murder (Kate Shackleton, #2)

Frances Brody

4.0
“Kate Shackleton joins Jacqueline Winspear’s Maisie Dobbs… They make excellent heroines.” --Literary Review

A pawn-shop robbery
It's no rest for the wicked as Kate Shackleton picks up her second professional sleuthing case. But exposing the culprit of a pawn-shop robbery turns sinister when her investigation takes her to Harrogate - and murder is only one step behind ...

A fatal stabbing
A night at th
99

Object-Oriented Programming with C++

BALAGURUSAMY

4.0
100

C# 8.0 and .NET Core 3.0 – Modern Cross-Platform Development: Build applications with C#, .NET Core, Entity Framework Core, ASP.NET Core, and ML.NET using Visual Studio Code, 4th Edition

Mark J. Price

4.0