Learning Swift
上QQ阅读APP看书,第一时间看更新

Chapter 3. One Piece at a Time – Types, Scopes, and Projects

In Chapter 2, Building Blocks – Variables, Collections, and Flow Control, we developed a very simple program that helped us organize a party. Even though we separated parts of the code in a logical way, everything was written in a single file and our functions were all lumped together. As projects grow in complexity, this way of organizing code is not sustainable. Just as we use functions to separate out logical components of our code, at scale, we also need to be able to separate out logical components of our functions and data. To do this, we can define code in different files and we can also create our own types that contain custom data and functionality. These types are commonly referred to as objects, as a part of the programming technique called object-oriented programming. In this chapter, we will cover:

  • Structs
  • Classes and inheritance
  • Enumerations
  • Projects
  • Extensions
  • Scope
  • Access control