From 2a011f5ae2e01855f7913a9a100fb3bb705f3f21 Mon Sep 17 00:00:00 2001 From: Ian Dinwoodie Date: Sat, 27 Apr 2019 19:42:07 -0400 Subject: [PATCH] Added introduction. --- README.md | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 2edabe5..336d4a9 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ ![C++ Design Patterns for Humans](https://user-images.githubusercontent.com/20260845/56855972-fb720600-691e-11e9-9efc-4755d6b4cb5b.png) -*** +--- +

🎉 Ultra-simplified explanation to design patterns! 🎉

@@ -17,4 +18,22 @@ This work, "C++ Design Patterns for Humans", is a derivative of CC BY 4.0.

-*** +--- + +## Introduction + +Design patterns are solutions to recurring problems; **guidelines for how to +tackle certain problems**. They are not classes, packages, or libraries that +you can plug into your application and wait for the magic to happen. These are, +rather, guidelines on how to tackle certain problems in certain situations. + +> Design patterns are solutions to recurring problems; guidelines for how to +tackle certain problems. + +Wikipedia describes design patterns as: + +> [...] a general reusable solution to a commonly occurring problem within a +given context in software design. It is not a finished design that can be +transformed directly into source or machine code. It is a description or +template for how to solve a problem that can be used in many different +situations.