Dynamic Frameworks vs Static Libraries

updated 10 months ago; latest suggestion 10 months ago

This proposal has been withdrawn...

When discussing how to include 3rd party dependencies in our apps, especially with Swift, the topic of dynamic frameworks vs static libraries has come up a lot. Even though this topic has been top of mind, many of us still don't know the differences and trade offs between these options.

This talk will go in depth into the differences between dynamic frameworks, static libraries, and other product types you may be less familiar with. We'll build each one from scratch, and then dissect them using some little known tools such as otool and nm so we can truly understand the differences between them. We'll cover how popular package managers, such as CocoaPods, Carthage, and SwiftPM, handle these trade offs. Finally we'll discuss the trade offs in binary size vs app launch time and which you may choose to use in your apps.

Suggestions

  • 8b2f2d3e6553c2b4048b93300959895ab76b4154?size=100x100 8b2f2d3e6553c2b4048b93300959895ab76b4154 suggests 10 months ago

    Now that frameworks are a thing on iOS, this is pretty important. I'm not sure "build each one from the command line" is really something that would be exciting for me. However otool and nm are definitely tools folks should know more about.

    You might consider demystifying how to build a framework/library that builds for both iOS & Mac.

  • 7acfd6c9d263a6f6c5c6a9a76e6c3a02f89f6dc6?size=100x100 7acfd6c9d263a6f6c5c6a9a76e6c3a02f89f6dc6 suggests 10 months ago

    I would like to know more about the topic and how it is related to all the dependency managers out there (SPM, Pods, Carthage...)