Join Scott Gardner for an in-depth discussion in this video Nest types, part of Swift 3 Essential Training: Beyond the Basics.
- [Instructor] It is generally considered good design…to separate concerns in your code.…For example, define separate types…based on their primary responsibilities.…Sometimes, however, a type's only purpose…is to provide some feature or behavior…within the context of another type.…When this is the case, nesting a type…within another type, is a good choice.…I'm starting out with some enumerations…that model various types of things you might work with…if you were designing a dungeon role playing game,…fighting dragons and such.…
I have weapon, armor, and player class type enumerations.…These enumerations encapsulate…different kinds of other types, such as weapon,…armor,…and player types,…which I'll define as structures.…Rather than make these types classes and create sub-classes…only in order to differentiate their type,…I can nest each enumeration…directly within its related type.…
Now, I add a property to the weapon type…to store the weapon type.…And while I'm at it, because this is a weapon,…I'll also add a property to keep track…
- Adding source files, resources, links, and literals
- Adding pages to a playground
- Using overflow operators and bitwise operators
- Using ranges with strings
- Creating complex sequences
- Chaining higher-order functions
- Defining lazy properties
- Using failable initializers
- Mutating methods
- Working with singletons
- Nesting function types
- Creating error types and recursive enumerations
- Extending concrete types
- Referencing selectors and key paths
- Working with protocol-oriented programming
- Defining class-only protocols and optional protocols
- Using option sets, type checking, and casting operators
Skill Level Intermediate
Core Data for iOS and macOS Enterprise Developerswith Jon Bott1h 46m Intermediate
Distributing Your iOS App for Testing with TestFlightwith Ron Buencamino35m 10s Intermediate
iOS App Development: Test-Driven Developmentwith Harrison Ferrone2h 14m Intermediate
3. Strings and Characters
4. Sequences and Collections
5. Control Flow
6. Value and Reference Types
9. Access Control
Understand access control3m 47s
Next steps1m 2s
- Mark as unwatched
- Mark all as unwatched
Are you sure you want to mark all the videos in this course as unwatched?
Take notes with your new membership!
Type in the entry box, then click Enter to save your note.
1:30Press on any video thumbnail to jump immediately to the timecode shown.