Lars Roettig

Book Review of Object Design Style Guide by Matthias Noback

By Lars Roettig1 min

Introduction

As Software Developers, we need to know how a suitable object looks like if working with an object-oriented programming language like PHP, Java, C#. To learn the syntax of the programming language (classes, methods, properties, etc.), it doesn’t take too much effort, but with a proper design for your objects, it mutch more complex.

I’m always looking for ways to make the job easier, and less demanding. I’m writing tests for my code, to prevent regressions. I keep my code simple, so debugging it will be easier. By writing this book, I’ve tried to do the same thing. Following the rules in this guide will free up the mental energy you’ll need for the more difficult parts of object design.

Matthias Noback - Object Design Style Guide

Who this book is for?

This book is for programmers with at least some basic knowledge of an object-oriented programming language. You should understand the language’s possibilities regarding class design. That is, I expect you to know what it means to define a class, instantiate it, extend it, mark it as abstract, define a method, call it, define parameters and parameter types, define return types, define properties and their types, etc. I also expect you to have some actual experience with all of this, even if it’s not much. I think you should be able to read this book if you’ve just finished a basic programming course, but also if you’ve been working with classes for years.

What is in this book

The book contains nine sections:

  1. Creating services
  2. Creating other objects
  3. Manipulating objects
  4. Using objects
  5. Retrieving information
  6. Performing tasks
  7. Dividing responsibilities
  8. Changing the behavior of services
  9. A field guide to objects

I can highly recommended. Grab a copy now! This book has helped me better understand object design and deepen architectural patterns. It is an excellent complement to clean code. I was able to understand the examples much better through generalization.

Edit post on GitHub

Written by
Lars Roettig
Software Engineer at TechDivision GmbH and Maintainer of the Community Engineering Team at Magento. He has 8 years of professional SoftwareEngineering experience. Lars is passionate about Magento and Open Source.
You may also like

Useful? Share it!

Lars Roettig
Legal
  • Imprint
  • Privacy Statement
Employee at: