Architecting for Reusability
Thibault Klein
Thibault Klein

Architecting for Reusability

Thibault Klein, Senior iOS Engineer

I had the chance to give a talk at the Brooklyn Swift Meetup in March at Etsy about Architecting for Reusability, and how we approached code sharing and reusability at Prolific Interactive.

During this talk, I went through two different scenarios of code reusability for multi-brand projects. I gave insight on how we refactored a project to be more modular using the Factory design pattern and how we architected another project to have flexibility in reusability and customization using B-VIPER.

Key Takeaways:

  • It’s never too late to refactor
  • The simpler, the better for your architecture
  • Perceive the business need to understand what to build
  • Use abstraction through Protocol Oriented Programming
  • Create modularity through Builders
  • Provide flexibility with dependency injection