Embracing new API's whilst retaining backwards compatibility

Swift Developer Podcast - App development and discussion - En podcast af Peter Witham

Kategorier:

This week, I delved into whether to embrace or avoid new APIs in Apple's upcoming operating systems. I encountered a few challenges while working on my Mac iOS app, which I aimed to have a modern look. Inspired by Apple developer videos, I wanted to incorporate features like a navigation split view and fancy backgrounds, similar to the design of CleanMyMac.

However, I hit a snag when they were in a part of the app's window. Even AI couldn't solve it. Finally, I found a solution in a video on the Apple developer portal, which involved using modifiers only available in macOS 15. Faced with a choice, I implemented conditional code to keep compatibility with macOS 14 while enabling new features for macOS 15 and beyond.

Using conditional code, such as #if available(macOS 15, *), I can target specific OS versions and ensure my app remains functional across different versions without cutting off users. This technique can be applied to various scenarios, not just API availability, making it a versatile tool.

Become a Patreon member and help this Podcast survive
https://www.patreon.com/compileswift

Please leave a review and show your support
https://lovethepodcast.com/compileswift

Follow me on Mastodon
https://iosdev.space/@Compileswift

Thanks to our monthly supporters
  • Adam Wulf
  • bitSpectre
  • Arclite
★ Support this podcast on Patreon ★

Visit the podcast's native language site