Build robust and scalable iOS and Mac OS X game applications About This Book Learn to use and implement the 23 Gang of Four design patterns using Swift 2 Design and architect your code for Swift application development Understand the role, generic UML design, and participants in the class diagram of the pattern by implementing them in a step-by-step approach Who This Book Is For This book is intended for competent Swift developers who want to apply enduring design patterns with Swift to structure and scale their application code. What You Will Learn Choose the appropriate pattern depending on the problem to be solved Understand the generic class diagram of each of the 23 GoF patterns and how each object participates in the pattern Use Swift to implement these patterns even though the language doesn't provide all of the object-oriented programming concepts such as abstract class, interface, and so on Architect your software to avoid the overuse of memory, time spent on calculations, or high network traffic Find the best way to organize your code to make it more secure from the outside world Prepare your code to make it more flexible when the consumer changes or the third-party component hidden code changes Structure your code to change the algorithm to apply at runtime Deliver Flyweight responsibility to your objects In Detail Swift is a multi-paradigm language. It has expressive features familiar to those used to work with modern functional languages, while also keeping the object-oriented features of Objective-C. It remains compatible with Apple's legacy codes and frameworks. A design pattern systematically names, motivates, and explains a general design that addresses a recurring design problem in object-oriented systems. It describes the problem, the solution, when to apply the solution, and its consequences. It also gives implementation hints and examples. Knowledge about design patterns is also one of the best ways to make you different compared to other low-level developers. This book shows you how to use Swift 2 to learn about 23 Gang of Four (GoF) design patterns, and is organized into three categories. The book will present you the five creational patterns, followed by the seven structural patterns, and finishing with the 11 behavioral patterns as defined by the GoF. Each chapter will introduce the pattern by defining its role, which common problems the pattern should be used for, its generic UML representation, how each objects presented in the class diagram participate in the pattern, and what the role of each of these objects is. The book then presents you with a concrete case as an illustration that will be used to implement the pattern using Swift. Style and approach A step-by-step tutorial completed with screenshots and code highlights wherever necessary. Each chapter discusses one or more patterns with its definitions and a simple-to-follow illustration case using a playground or XCText project to implement it with Swift.