AppleInsider is supported by its audience and may earn commission as an Amazon Associate and affiliate partner on qualifying purchases. These affiliate partnerships do not influence our editorial content.
Catalyst, meant to simplify porting apps between iPads and the Mac, offers the potential of improving the quality of apps on both platforms, said Apple software engineering head Craig Federighi in an podcast interview published on Thursday.
Until now many developers have had to specialize in either macOS or iOS due to the frameworks involved, Federighi said in conversation with AppStories' Federico Viticci. It required a "real effort to get the expertise and to make the investment," the VP mused.
He argued that many great iPad apps haven't appeared on the Mac as a result, but that since it's now a "no-brainer" to put in a little extra work on reaching Macs, there could be a feedback loop in which developers "go deeper" on the iPad with the knowledge the work will pay off better.
Some of the harsh intitial reaction to Marzipan — Catalyst's predecessor — was attributable to bad design decisions on Apple's part rather than any fundamental technology issues, Federighi added. The company's first Marizpan conversions, such as Home and Apple News, have sometimes been criticized for being minimalist ports that aren't optimized for mice or keyboards.
Contributing to Catalyst is SwiftUI, designed to minimize development work. Federighi described the technology as a "great reset" for the amount of code needed to support new features, such as Dark Mode. It's "completely fluid" and "completely reversible," he went on, allowing people to mix content into regular Swift code at will.
"It just works," Federighi said.
The executive admitted that watchOS developers have so far been unable to exploit the same framework power seen in first-party Apple Watch apps. That's been solved with SwiftUI, he said, further suggesting that it "could be a new era for apps on the Watch" thanks to standalone apps and a dedicated App Store in watchOS 6.