Start Reading

Software Design Principles

70 pages49 minutes


This book is a compilation of software design principles. Knowing these principles and applying them will allow you to develop a better quality software.

Think of the principles as the pillars of a building. They are the support structures that hold the building together and keep it from crumbling down. They serve as guiding posts for other elements, and provide balance and stability.

You will learn the fundamental principles such as Separation of Concern, Low Coupling and High Cohesion, Information Hiding. It also covers principles on higher-level (architectural) and low-level (design and programmatic).

Many of the design principles relate to object-oriented software paradigm. They have been abbreviated and coined for easy remembering, examples include IoC (Inversion of Control), DI (Dependency Injection), LoD (Law of Demeter), Hollywood Principle, Tell don’t Ask, Don’t talk to strangers, etc...

There are also popular groupings such as GRASP (General Responsibility Assignment Software Patterns) principles and SOLID (stands for each letter of the principles included) principles. A whole section of this book is dedicated for Agile development principles.

This is a short and concise book. It’s an easy read. I’m sure you can finish this book on a weekend. You can use it both as a tutorial and reference.

In a software development project, awareness of these principles promotes better communication among team members. Knowing and applying them – when, where, how to use – will result to a maintainable, easy to understand, easy to extend, and overall high quality software.

Read on the Scribd mobile app

Download the free Scribd mobile app to read anytime, anywhere.