code I’m working on is usually not started or finished by me. ▸ I don’t want to leave someone else with the constraints I’ve chosen. ▸ I tend to avoid clever code. I use what the system provides as much as possible. ▸ I started working on my own, not in a team, which is why I have opinions.
The observer pattern, façade, Dependency Injection. ▸ Probably a whole lot of other patterns that I don’t know the names of - I’m not Computer Science educated. ▸ I avoid third party omni dependencies. ▸ I try and use third party code that I understand and can fix. ▸ I sound like an Apple fanboi.
supposed to control a view. ▸ Everything else can get passed off. ▸ Delegation (or even closures) for performing work related to views. ▸ Data sources don’t have to be in the view controller. ▸ Having separate subsystems makes them easier to test.
easier with property observers. ▸ There’s also Key-Value Observing for NSObject based classes. ▸ The functional paradigm that made MVVM and Reactive attractive to me are now available in Swift. ▸ I use Core Data - plenty of change notifications there.