Patterns and Practices for Scalable Apps

Patterns and Practices for Scalable Apps

In this episode, Leo discusses some patterns and practices for keeping your app scalable and easily maintained.

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
  • Steven Lipton
★ Support this podcast on Patreon ★

Creators and Guests

Leo Dion
Host
Leo Dion
Swift developer for Apple devices and more; Founder of BrightDigit; husband and father of 6 adorable kids

Join our newsletter

checkmark Got it. You're on the list!
image of podcast supporter
Join 1 supporters
Mastodon © Bright Digit, LLC 2018