Everybody involved in a mid size project or bigger is concerned about architecture. We have all been told that a good architecture can help us to have a more agile, robust, and easier to work with application, but it is not always clear how nor the architecture everybody else is talking about. By establishing parallelisms with Andy Weir's story, The Martian, I will go through the most relevant problems we usually find, explain how a well though out architecture can be valuable to us, and share some code that implements it.
I will use Swift in all of the code examples, because, in my opinion, it is very well suited to implement those advanced architectures. I will highlight its advantages and disadvantages compared Objective-C and other languages from an architectural point of view.
If you care:- The talk includes only minor spoilers- No, it isn't about MVC, but beyond that
33. Take me Outta Here
func presentCell(cell: SpeakerCellProtocol, indexPath:
NSIndexPath) {
let index = indexPath.row
guard index < speakers.count else { return }
let speaker = speakers[index]
cell.displayName(speaker.name)
cell.displayTitle(speaker.title)
}
Know
That!
40. #SwiftMars
Recommendations
Pay attention to your architecture; It always
pays off
Use Principles to take decisions
Take advantage of the language and adapt
the patterns to it
In case of doubt, ask for an architecture
loan and ship it