Skip to content

Design Patterns from the Book 'Head First Design Patterns' implemented in C++ and Python

Notifications You must be signed in to change notification settings

dhairyagupta2603/Head-First-Design-Patterns

Repository files navigation

HEAD FIRST DESIGN PATTERNS

This repository contains implementations of the main Design Patterns mentioned in the Head First Design Patterns book authored by Eric Freeman, Elisabeth Robson, Bert Bates, Kathy Sierra.

The book has its implementaions written in Java to illustrate the design patterns utilizing the full extent of the OO nature of the language. I have tried to convert the code into C++ and Python, to seek the diffrences in implementaions that could occur as well as the similarities.

  • C++ : I have used C++17 with smart pointers for the implementation which did prove difficult in some patterns. It may be possible to further optimize it
  • Python : I have used Python 3.11 and have used the inbuilt 'abc' mobule for implementing interfaces. Even though Python has dynamically typed variable declarations, diffrent from C++ and Java, I have tried to keep the spirit of the code same even if it is not requied in some cases

NOTE

  • some of the code used Java specific packages like Swing. I have not implemented it.
  • All code for each pattern is in a single file so that it is easier to go though

About

Design Patterns from the Book 'Head First Design Patterns' implemented in C++ and Python

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published