{"id":38268,"date":"2016-10-21T15:25:35","date_gmt":"2016-10-21T20:25:35","guid":{"rendered":"http:\/\/juancasac.wordpress.com\/?p=261"},"modified":"2016-10-21T15:25:35","modified_gmt":"2016-10-21T20:25:35","slug":"software-design-patterns-17","status":"publish","type":"post","link":"https:\/\/kenscourses.com\/tc1019fall2016\/syndicated\/software-design-patterns-17\/","title":{"rendered":"Software design patterns"},"content":{"rendered":"<p>Design patterns are optimized, reusable solutions to the programming problems that we encounter every day. A design pattern is not a class or a library that we can simply plug into our system; it&#8217;s much more than that. It is a template that has to be implemented in the correct situation (Bautista, 2010).<\/p>\n<p>The Gang of Four are the authors of the book, &#8220;Design Patterns: Elements of Reusable Object-Oriented Software&#8221;. This important book describes various development techniques and pitfalls in addition to providing 23\u00a0object-oriented programming design patterns (Carr, 2009).<br \/>\n<img class=\"alignnone size-full wp-image-283\" src=\"https:\/\/juancasac.files.wordpress.com\/2016\/10\/gof-design-patterns-15-638.jpg?w=680\" alt=\"gof-design-patterns-15-638\" srcset=\"https:\/\/juancasac.files.wordpress.com\/2016\/10\/gof-design-patterns-15-638.jpg 638w, https:\/\/juancasac.files.wordpress.com\/2016\/10\/gof-design-patterns-15-638.jpg?w=150 150w, https:\/\/juancasac.files.wordpress.com\/2016\/10\/gof-design-patterns-15-638.jpg?w=300 300w\" sizes=\"(max-width: 638px) 100vw, 638px\"   \/><br \/>\nGof design patterns (Vaka, 2013).<\/p>\n<p><img class=\"alignnone size-full wp-image-294\" src=\"https:\/\/juancasac.files.wordpress.com\/2016\/10\/the23.gif?w=680\" alt=\"the23\"   \/><br \/>\nWhen To Use Software Design Patterns (Hegoda, 2013).<\/p>\n<p>One of the hardest question is which software design pattern to be applied when. Usually there isn\u2019t a pattern to figure out which design pattern should be used. It comes through the understanding &amp; experience of using design patterns correctly (Hegoda, 2013).<\/p>\n<p>Design patterns are related to object-oriented programming, in this video Derek Banas makes a great tutorial that\u00a0includes the topics:<br \/>\n<div class=\"jetpack-video-wrapper\"><iframe class='youtube-player' type='text\/html' width='680' height='413' src='https:\/\/www.youtube.com\/embed\/vNHpsC5ng_E?version=3&#038;rel=1&%23038;fs=1&%23038;autohide=2&%23038;showsearch=0&%23038;showinfo=1&%23038;iv_load_policy=1&%23038;wmode=transparent' allowfullscreen='true' style='border:0;'><\/iframe><\/div><\/p>\n<p>References:<\/p>\n<p>Carr, R. (22 August 2009). Gang of Four Design Patterns. Black Wasp. Retrieved from:\u00a0http:\/\/www.blackwasp.co.uk\/gofpatterns.aspx<\/p>\n<p>Bautista, K. (7 July 2010).\u00a0A Beginner\u2019s Guide to Design Patterns. Envatotuts+. Retrieved from:\u00a0https:\/\/code.tutsplus.com\/articles\/a-beginners-guide-to-design-patterns&#8211;net-12752<\/p>\n<p>Hegoda, D. (6 October 2013).\u00a0Why? When to? Software Design Patterns. dasonhegoda.com. Retrieved from:\u00a0http:\/\/dasunhegoda.com\/software-design-patterns\/158\/<\/p>\n<p>Vaka, S. (16 January 2013).\u00a0Gof design patterns. Slideshare. Retrieved from:\u00a0http:\/\/www.slideshare.net\/wwwvaka\/gof-design-patterns-16016273<\/p><br \/>  <a rel=\"nofollow\" href=\"http:\/\/feeds.wordpress.com\/1.0\/gocomments\/juancasac.wordpress.com\/261\/\"><img alt=\"\" border=\"0\" src=\"http:\/\/feeds.wordpress.com\/1.0\/comments\/juancasac.wordpress.com\/261\/\" \/><\/a> <img alt=\"\" border=\"0\" src=\"https:\/\/pixel.wp.com\/b.gif?host=juancasac.wordpress.com&#038;blog=99166493&%23038;post=261&%23038;subd=juancasac&%23038;ref=&%23038;feed=1\" width=\"1\" height=\"1\" \/>","protected":false},"excerpt":{"rendered":"<p>Design patterns are optimized, reusable solutions to the programming problems that we encounter every day. A design pattern is not a class or a library that we can simply plug into our system; it&#8217;s much more than that. It is a template that has to be implemented in the correct situation (Bautista, 2010). The Gang &hellip; <a href=\"https:\/\/kenscourses.com\/tc1019fall2016\/syndicated\/software-design-patterns-17\/\" class=\"more-link\">Continue reading <span class=\"screen-reader-text\">Software design patterns<\/span><\/a><\/p>\n","protected":false},"author":36,"featured_media":283,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[5,4],"tags":[134,333],"class_list":["post-38268","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blogs","category-syndicated","tag-mastery-topics","tag-software-design"],"_links":{"self":[{"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/posts\/38268","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/users\/36"}],"replies":[{"embeddable":true,"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/comments?post=38268"}],"version-history":[{"count":2,"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/posts\/38268\/revisions"}],"predecessor-version":[{"id":38269,"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/posts\/38268\/revisions\/38269"}],"wp:attachment":[{"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/media?parent=38268"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/categories?post=38268"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/kenscourses.com\/tc1019fall2016\/wp-json\/wp\/v2\/tags?post=38268"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}