Object-Oriented Programming (OOP) is a programming paradigm based on the concept of objects; these are data structures that contain data in the form of fields, often known as attributes and code. Objects are everywhere, and so it is very important to recognize elements, known as objects, from real-world situations and know how they can easily be translated into object-oriented code.
Object-Oriented Programming with Swift is an easy-to-follow guide packed full of hands-on examples of solutions to common problems encountered with object-oriented code in Swift. It starts by helping you to recognize objects using real-life scenarios and demonstrates how working with them makes it simpler to write code that is easy to understand and reuse.
You will learn to protect and hide data with the data encapsulation features of Swift. Then, you will explore how to maximize code reuse by writing code capable of working with objects of different types. After that, you’ll discover the power of parametric polymorphism and will combine generic code with inheritance and multiple inheritance. Later, you move on to refactoring your existing code and organizing your source for easy maintenance and extensions.
By the end of the book, you will be able to create better, stronger, and more reusable code, which will help you build better applications.
What You Will Learn
- Build solid, stable, and reliable applications using Swift
- Work with encapsulation, abstraction, and polymorphism using Swift 2.0
- Customize constructors and destructors based on your needs
- Develop Swift 2.0 with classes, instances, properties, and methods
- Take advantage of generic code to maximize code reuse and generalize behaviors
- Use state of inheritance, specialization, and the possibility to overload members
- Write high quality object-oriented code to build apps for iOS or Mac OS X
- Leverage the most efficient object-oriented design patterns in your Swift applications
- Write robust, safer, and better code using the blueprints that generate objects
- Build a platform with object-oriented code by using real-world elements and represent them in your app