7 ms·
FWIW, my experience is almost exactly opposite. There’s not enough architecture in the iOS world. The norm is to stitch together the app without clear notion of
by zoul 9y ago
FWIW, my experience is almost exactly opposite. There’s not enough architecture in the iOS world. The norm is to stitch together the app without clear notion of the state or its transitions, everything is hidden in a giant tangle of view controllers, a lot of the state is crammed into the app delegate singleton, everything calls everything else via singletons and good luck finding the UI flow in a web of storyboards where arguments are passed in prepareForSegue. It’s a huge mess.
Talking about target-action or delegation in this context is IMHO a misunderstanding. These are very nice and valid solutions, but in my experience they are simply not enough to build a structured non-trivial app with. They are the basic building blocks, but there has to be something above them.
Of course, it’s also a mistake to go overboard with structure, drowning the important bits in architecture boilerplate. Architecture cannot and must not be followed blindly, as a cooking book. You have to aim for a reasonable compromise, a point of diminishing returns.
- bsaul 9y agoAgree with that. recently gave a talk at a iOS developper meeting, and less than 5% of the dev heard about the concept of a "service layer"
- hashmal 9y agoIt was my experience as well, but over time things "click" and your VCs are suddenly small, there is almost nothing in AppDelegate and the app architecture becomes obvious. I can't explain how to reach that state of mind, though. (and I'm not writing trivial apps…)
- lukeredpath 9y agoiOS is relatively young. It attracts a lot of new programmers. For years iOS suffered from lack of ideas around architecture and solid programming practices. In the last few years I've seen this start to change and now it seems a bit like "ARCHITECTURE ALL THE THINGS!!!". We're in a period of trying out new ideas and figuring out what works and what doesn't. Give it a few more years and these ideas will start to mature.