Frameworks and startup time

I've been playing with this project the last two weeks and am really excited about it. Thanks for making it and providing such clear documentation and videos!

As someone who works on a large project, one huge selling point for me is that making the code more modular can lead to faster compile times. Two issues I'm concerned with are the impact of dynamically linking frameworks on startup time and the complexity of managing dozens of frameworks.

In the example TicTacToe project I see 13 frameworks and the app is not that complicated.

I guess I'm wondering:

  1. Is a super modular approach like the one in TicTacToe feasible given the impact on startup time?
  2. If a super modular approach isn't feasible, what factors or heuristics should developers consider when deciding how to break their features up between frameworks?
  3. What tools or workflows people would recommend for managing a project with lots of framework targets (I could see xcconfigs helping a lot here)?

I know that some of this will depend on the specifics of your project, but I think there are probably some general guidelines we could come up with as well. I think it would be cool to gather up some best practices and possibly link to them in the readme since the modularity is such a huge feature of the architecture.

1 Like