Proportion of private frameworks in macOS has risen significantly
There has been a clear trend in the system files of the Mac operating system macOS over the past five years: Apple is sealing off more functions.
(Image: Apple)
Apple is becoming increasingly secretive with its Mac operating system: an analysis of the system files of various versions of macOS that have been released over the past five years shows a clear shift towards private frameworks. Their number has more than doubled, increasing to 245 percent, while the number of public frameworks has also risen, but only to 147 percent.
Apple blogger Howard Oakley counted the so-called bundles in the /System/Library folder for his analysis. His analysis ranges from macOS 10.14 Mojave to the current version 15.2 (macOS Sequoia). Bundles are directories that look like a single file when viewed in the Finder. They contain help files for programs, but also images and icons, configuration and sound files, among other things.
What distinguishes private from public frameworks
Public frameworks are also accessible to other developers as an official programming interface (API). They are usually announced by Apple with the presentation of the new operating system versions at the WWDC developer conference. One example is the Accelerate Framework, which provides mathematical functions for media processing.
Private frameworks are only intended for internal use by Apple in its own apps. External developers who use them anyway cannot, for example, submit their app to Apple's App Stores. In most cases, the exact functions of private frameworks are also not publicly documented, or only to a limited extent. For the Siri voice assistant, for example, there are 123 private frameworks, but only one public one called SiriKit, which other developers can use.
The why remains unclear
According to Oakley's analysis, there are 400 public and 2154 private frameworks in the current macOS version. In comparison: macOS 10.14.5 had 273 public and 878 private frameworks. The largest increase in the ratio of private to public frameworks occurred with macOS Monterey (12.0.1).
It remains unclear why Apple is relying more and more on private frameworks. As Oakley notes, many of the functions they contain are not necessarily of use or interest to third parties. Nevertheless, the development of the operating system can be seen in relation to other observations, such as the extent to which Apple publishes program code as open source. Oakley cites the Apple file system APFS as an example, which the Mac manufacturer still finds difficult to document publicly.
Possible reasons for compartmentalization
A higher proportion of private frameworks indicates that Apple wants to keep more functionality under its direct control. This may be due to security considerations, for example, in order to protect sensitive system functions from insecure use. However, it could also be an economic isolation of Apple in order to retain control over its own platform.
Videos by heise
However, pragmatic reasons may also play a role in the decision to move more functions to private frameworks. In recent years in particular, Apple has repeatedly faced criticism of its software quality, which observers of the company have linked to the many platforms for which Apple's developers have released new software. As a result, in many cases the code and functions simply could not meet the higher requirements placed on public frameworks. In addition, Apple has to worry less about backward compatibility issues with private frameworks.
(mki)