Sep 23
2020
3 Powerful Insights From Apple’s API Strategy
Apple is one of the biggest technology companies in the world. It is also one of the largest API platforms. Thus, developers can learn a lot from examining Apple’s strategy when it comes to APIs. In this article, we’ll consider powerful insights we can learn from how Apple uses APIs and maintains them.
Build Your Apps With Your Public APIs
When iOS was first launched, Apple developers used internal classes to handle operations such as tables and scrolling in the in-built applications.
These internal classes, however, were not available to third-party developers. Instead, Apple created public APIs that were comparatively harder to use and less performant than the internal classes.
To make it easier for third-party developers to build apps for iOS, Apple rewrote their apps to use the same classes as the external developers. They chose to do this even though it meant slowing down their apps for a while. Doing this, however, forced Apple to improve the performance and ease-of-use of their public interface.
If your development team has to work with special APIs that aren’t available to third-party developers to build your application, there are likely multiple issues with your external API. Working with the same APIs available to external developers including other free public APIs will enable you to ensure that your external API is easy to use and efficient.
Focus On The End User Experience
Software developers often talk about the Developer Experience (DX) when it comes to consuming APIs. While it is vital that the Developer Experience be as ideal as possible, there is another very important component that must not be overlooked – the end user experience.
Apple takes the user experience of the apps on their devices very seriously. If a developer fails to keep up with Apple’s API changes, it reflects poorly on Apple. Apple views the end users of third party applications as their customers. This focus on the end users prevents Apple from shipping bad APIs or promising to provide developers with features that might not work.