What do you think of when you hear th word “Geometry?”
Shapes!
Rectangles, circles, triangles, square, trapezium, convex polygon, parallelogram, irregular polygons, kite, quadrilaterals…The list goes on and on, and through the ingenuity of mathematicians, we have come to recognize these shapes with associated formulas and properties which has uses beyond their original purpose.
Remember back in Calculus classes where sometimes the magical triangle and its formula or the pythagorean theorem you learned in middle/high school somehow made its way into the problem? That’s how design patterns are like in software engineering.
Design patterns are a template to solve common problems that came to be recognized. They are like a Swiss Army Knife to use to open, not a can or a bottle of wine, but design problems that can be solved more structurally and efficiently through its application.
While daunting at first if you were to attempt to decipher the individual components of certain design patterns, they exists to solve problems. The final project built in ICS 314 Software Engineering has the following design patterns:
Javascript
Meteor
Manoa Marketplace: