Episode Details
Back to Episodes
Patterns and Practices for Scalable Apps
Episode 42
Published 6 years, 2 months ago
Description
Video
Related Episodes
- Episode 39: Managing Code Quality with Anne Cahalan
- Episode 24: Continuous Integration with Kyle Newsome
- Episode 23: Modularizing in Xcode with Abbey Jackson
- Episode 31: Future Proofing Your Apps with Gui Rambo
- Episode 15: Test-Driven Development with Joshua Greene and Michael Katz
- Episode 14: iOS App Architecture with René Cacheaux and Josh Berlin
Related Links
- iOS Continuous Integration: How To Avoid Merge Hell
- SwiftUI: Everything is possible if you think like Apple
- How to avoid iOS app failure with Test-Driven Development
- Swift Package Continuous Integration Guide
Sponsors
- Specialize in helping businesses build apps for iPhone, iPad, Mac and Apple Watch
- 10 years of experience developing for a variety of Apple platform
- Helping dev shops which lack experience with Apple platforms and Swift
Contact me if you need help today.
We have an opening for sponsors
- Do you have a product or service which can target our ever growing community of developers as well as technology and business leaders?
Contact me today if you are interested in sponsoring or go to our Patreon page.
Why Good Patterns and Practices Matter
- Bug fixes and code upgrades become more difficult to execute
- Adding new features can be a real challenge if there's a lack of organization.
- Without breaking each layer and functionality apart, it makes testing excruciating.
- Without consistency, new developers will have a hard time understanding how the code works.
- By using the right patterns, modularizing your code, and maintaining good code quality; you can keep your app development project running smoothly and save money in the long run.
Architectural Patterns
- Understand the legacy of Objective-C
- How Model View Controller is intrinsic to UIKit
- How do Delegation Pattern fits
- Why Protocol Oriented Programming works so well with Swift and Testing?
- Why Functional Programming makes it easier to build complex functionality?
- Why the shift to Model-View-ViewModel?
- How Reactive Programming, the Subscriber-Publisher model, and Combine makes sense for UI development?
Modularizing Layers of Functionality
- Modularity ensures individual pieces of functionality can work independently.
- While each piece of code and functionality remains simple, it is their multitude and integration which is complex.
- Each module is an Interchangeable