This is the book manuscript for "Exploring Mac App Development Strategies".
Example code is on GitHub, too.
- Introduction, and my motivation to document the process
- Part 1: Bootstrapping
- Getting comfortable with Swift, porting Objective-C code to recreate the problem space
- Get Core Data and related tests running
- Prepare the user interface in its own layer
- Have tests in place for the app's domain
- Part 2: Solving the actual problem
- My first, naive take
- Ports & Adapters-style solution
- Part 3: Putting a Domain in Place
- Sending Domain Events
- Handling Errors
- Doing real work in the background
- Part 4: Using Core Data for Convenience
- Using Protocols to Hide NSManagedObject Internals
- Using Cocoa Bindings with Core Data
- Epilogue
- Appendix
- Interesting links
- On Swift
- About Objective-C API compliance-related problems
Develop Mac Apps With a Clean Architecture and Swift by Christian Tietze is licensed under a Creative Commons Attribution 4.0 International License.