In this episode, Leo discusses some patterns and practices for keeping your app scalable and easily maintained.
Show Notes
Video
Related Episodes
Related Links
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
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?
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 Part.
- Modularity allows for use in multiple operating systems and devices.
- How does Xcode and Swift allow for modularity
- Why Framework Targets are the most mature way still to create independent
- Where Workspaces and Projects fit with with Independent Apps and Products
- Why Swift Packages are the future
Maintaining Quality Code
- Good Architectural Patterns means Easy Testing
- Code Coverage is a good metric but not the only one.
- Reduce Complexity in your code for easier maintenance
- Consistent Styling makes version control and team management easier
- Code Reviews Help get an additional set of eyes even though they may be your own.
- Continuous Integration of components and apps are the best way to ensure quality code
Social Media
Credits
Thanks to our monthly supporters
- Bertram Eber
- Edward Sanchez
- Satoshi Mitsumori
- Steven Lipton
★ Support this podcast on Patreon ★
Creators & Guests
Host
Leo Dion
Swift developer for Apple devices and more; Founder of BrightDigit; husband and father of 6 adorable kids
What is Empower Apps?
An exploration of Apple business news and technology. We talk about how businesses can use new technology to empower their business and employees, from Leo Dion, founder of BrightDigit.