19 books
—
1 voter
Discover new books on Goodreads
Meet your next favorite book
Software Design Books
Showing 1-50 of 512
Domain-Driven Design: Tackling Complexity in the Heart of Software (Hardcover)
by (shelved 44 times as software-design)
avg rating 4.15 — 5,908 ratings — published 2003
Design Patterns: Elements of Reusable Object-Oriented Software (Hardcover)
by (shelved 42 times as software-design)
avg rating 4.20 — 12,044 ratings — published 1994
A Philosophy of Software Design (Paperback)
by (shelved 34 times as software-design)
avg rating 4.22 — 4,881 ratings — published 2018
Head First Design Patterns (Paperback)
by (shelved 27 times as software-design)
avg rating 4.30 — 9,083 ratings — published 2004
Clean Code: A Handbook of Agile Software Craftsmanship (Paperback)
by (shelved 26 times as software-design)
avg rating 4.35 — 23,793 ratings — published 2007
Refactoring: Improving the Design of Existing Code (Addison-wesley Object Technology Series)
by (shelved 24 times as software-design)
avg rating 4.24 — 8,880 ratings — published 1999
Designing Data-Intensive Applications (ebook)
by (shelved 22 times as software-design)
avg rating 4.69 — 11,134 ratings — published 2015
Patterns of Enterprise Application Architecture (Hardcover)
by (shelved 22 times as software-design)
avg rating 4.12 — 3,901 ratings — published 2002
Code Complete: A Practical Handbook of Software Construction (Paperback)
by (shelved 17 times as software-design)
avg rating 4.30 — 9,509 ratings — published 1993
Clean Architecture (Paperback)
by (shelved 16 times as software-design)
avg rating 4.21 — 7,280 ratings — published 2017
Implementing Domain-Driven Design (Hardcover)
by (shelved 16 times as software-design)
avg rating 4.05 — 1,311 ratings — published 2013
Fundamentals of Software Architecture: An Engineering Approach (Paperback)
by (shelved 12 times as software-design)
avg rating 4.23 — 2,380 ratings — published 2020
Building Microservices: Designing Fine-Grained Systems (Paperback)
by (shelved 12 times as software-design)
avg rating 4.22 — 5,266 ratings — published 2014
Refactoring to Patterns (Addison Wesley Signature Series)
by (shelved 12 times as software-design)
avg rating 4.05 — 1,440 ratings — published 2004
Working Effectively with Legacy Code (Paperback)
by (shelved 12 times as software-design)
avg rating 4.14 — 4,691 ratings — published 2004
The Pragmatic Programmer: From Journeyman to Master (Paperback)
by (shelved 11 times as software-design)
avg rating 4.33 — 24,560 ratings — published 1999
Learning Domain-Driven Design: Aligning Software Architecture and Business Strategy (Paperback)
by (shelved 9 times as software-design)
avg rating 4.43 — 804 ratings — published 2021
System Design Interview – An insider's guide (Kindle Edition)
by (shelved 9 times as software-design)
avg rating 4.25 — 3,596 ratings — published 2020
Domain-Driven Design Distilled (Paperback)
by (shelved 9 times as software-design)
avg rating 3.81 — 1,356 ratings — published
Agile Software Development, Principles, Patterns, and Practices (Alan Apt Series)
by (shelved 9 times as software-design)
avg rating 4.26 — 1,323 ratings — published 2002
Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions (Addison-Wesley Signature Series (Fowler))
by (shelved 9 times as software-design)
avg rating 4.12 — 1,554 ratings — published 2003
Release It!: Design and Deploy Production-Ready Software (Pragmatic Programmers)
by (shelved 8 times as software-design)
avg rating 4.25 — 3,281 ratings — published 2007
Software Architecture: The Hard Parts: Modern Trade-Off Analyses for Distributed Architectures (Paperback)
by (shelved 7 times as software-design)
avg rating 4.25 — 912 ratings — published 2021
Tidy First?: A Personal Exercise in Empirical Software Design (Paperback)
by (shelved 7 times as software-design)
avg rating 3.92 — 1,149 ratings — published
Patterns Principles and Practices of Domain Driven Design (Paperback)
by (shelved 7 times as software-design)
avg rating 4.36 — 393 ratings — published 2014
Growing Object-Oriented Software, Guided by Tests (Addison-Wesley Signature Series (Beck))
by (shelved 7 times as software-design)
avg rating 4.19 — 2,468 ratings — published 2009
Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development (Hardcover)
by (shelved 7 times as software-design)
avg rating 3.85 — 1,052 ratings — published 1997
Design of Design, The: Essays from a Computer Scientist (Paperback)
by (shelved 7 times as software-design)
avg rating 3.77 — 623 ratings — published 2010
Domain Modeling Made Functional: Tackle Software Complexity with Domain-Driven Design and F# (Paperback)
by (shelved 6 times as software-design)
avg rating 4.49 — 685 ratings — published
Dependency Injection in .NET (Paperback)
by (shelved 6 times as software-design)
avg rating 4.43 — 792 ratings — published 2011
UML Distilled: A Brief Guide to the Standard Object Modeling Language (Paperback)
by (shelved 6 times as software-design)
avg rating 3.80 — 1,517 ratings — published 1997
Object-Oriented Analysis and Design with Applications (Hardcover)
by (shelved 6 times as software-design)
avg rating 3.91 — 607 ratings — published 1990
Modern Software Engineering: Doing What Works to Build Better Software Faster (Paperback)
by (shelved 5 times as software-design)
avg rating 4.14 — 1,240 ratings — published
99 Bottles of OOP (ebook)
by (shelved 5 times as software-design)
avg rating 4.55 — 676 ratings — published
Test-Driven Development: By Example (Paperback)
by (shelved 5 times as software-design)
avg rating 4.10 — 4,426 ratings — published 2002
Agile Principles, Patterns, and Practices in C# (Robert C. Martin Series)
by (shelved 5 times as software-design)
avg rating 4.28 — 776 ratings — published 2006
Practical API Design: Confessions of a Java Framework Architect (Hardcover)
by (shelved 4 times as software-design)
avg rating 3.72 — 64 ratings — published 2008
Software Engineering at Google: Lessons Learned from Programming Over Time (Paperback)
by (shelved 4 times as software-design)
avg rating 4.19 — 2,034 ratings — published 2020
Microservice Patterns (Paperback)
by (shelved 4 times as software-design)
avg rating 4.24 — 720 ratings — published
Software Design Decoded: 66 Ways Experts Think (Mit Press)
by (shelved 4 times as software-design)
avg rating 3.55 — 209 ratings — published
Object-Oriented Software Construction (Book/CD-ROM)
by (shelved 4 times as software-design)
avg rating 4.04 — 271 ratings — published 1988
Building Evolutionary Architectures: Support Constant Change (Paperback)
by (shelved 4 times as software-design)
avg rating 3.74 — 1,086 ratings — published 2022
Distributed Systems: Principles and Paradigms (Paperback)
by (shelved 4 times as software-design)
avg rating 3.98 — 490 ratings — published 2001
How to Design Programs: An Introduction to Programming and Computing (Hardcover)
by (shelved 4 times as software-design)
avg rating 4.02 — 271 ratings — published 2001
User Stories Applied: For Agile Software Development (Addison-Wesley Signature Series (Beck))
by (shelved 4 times as software-design)
avg rating 3.89 — 2,866 ratings — published 2004
97 Things Every Software Architect Should Know (Paperback)
by (shelved 4 times as software-design)
avg rating 3.62 — 789 ratings — published 2009
Programming Pearls (Paperback)
by (shelved 4 times as software-design)
avg rating 4.20 — 3,226 ratings — published 1986
Thinking In Systems: A Primer (Paperback)
by (shelved 3 times as software-design)
avg rating 4.18 — 24,596 ratings — published 2008
Data-Oriented Programming Unlearning objects (Paperback)
by (shelved 3 times as software-design)
avg rating 3.67 — 85 ratings — published
The Essence of Software: Why Concepts Matter for Great Design (Kindle Edition)
by (shelved 3 times as software-design)
avg rating 4.18 — 78 ratings — published
“Let me try to explain to you, what to my taste is characteristic for all intelligent thinking. It is, that one is willing to study in depth an aspect of one's subject matter in isolation for the sake of its own consistency, all the time knowing that one is occupying oneself only with one of the aspects. We know that a program must be correct and we can study it from that viewpoint only; we also know that it should be efficient and we can study its efficiency on another day, so to speak. In another mood we may ask ourselves whether, and if so: why, the program is desirable. But nothing is gained—on the contrary!—by tackling these various aspects simultaneously. It is what I sometimes have called "the separation of concerns", which, even if not perfectly possible, is yet the only available technique for effective ordering of one's thoughts, that I know of. This is what I mean by "focusing one's attention upon some aspect": it does not mean ignoring the other aspects, it is just doing justice to the fact that from this aspect's point of view, the other is irrelevant. It is being one- and multiple-track minded simultaneously.”
― Selected Writings on Computing: A personal Perspective
― Selected Writings on Computing: A personal Perspective
“Software will give you respect, but hardware will give you the Power.”
― RubyMotion iOS Development Essentials
― RubyMotion iOS Development Essentials












