WWDC showcases Apple's Xcode 13, Xcode Cloud, TestFlight for Mac, SwiftUI

Posted:
in General Discussion edited June 9
Apple's wide spectrum of developer tools are getting a series of major upgrades to help coders build better, faster code more quickly, in addition to providing collaborative features to help development teams work together more effectively. The result: more, better apps for end users.


New Public APIs

Historically, Apple has often released its own new OS and app features internally and then gradually opened up public access to third party developers-- sometimes over the course of a number of years.

This year, however, a remarkable number of new features unleashed by Apple in iOS 15 and macOS Monterey are being simultaneously released with a public API so developers can jump right in and build that new functionality into their own apps.

Susan Prescott, Apple's VP of Worldwide Developer Relations, emphasized in the WWDC Keynote that "there are a lot of new APIs this year!"

Notable examples include SharePlay, a new way to collaboratively watch or listen to synchronized movies and music with others; Object Capture, for quickly stitching together images into a 3D model for use in AR; as well as a variety of other new OS-level features such Voice Isolation, Focus, Notifications, Nearby Interactions, and the new system-wide Quick Note-- sort of an unlimited, deluxe Clipboard on a cloud of steroids.

In simultaneously releasing public API access to new OS and app features, Apple is ensuring that third party developers have time to prepare their own apps and tools to take full advantage of the new features of its software updates shipping to the public later this fall. This new speed in delivering APIs in tandem with new features is partly attributable to Apple being much larger and far more proficient that it was back in the days when it struggled to catch up with competing vendors and tried to keep its WWDC releases top secret for competitive reasons.

It wasn't that long ago that Apple's novel UI concepts and other features pioneered in macOS and in apps like Safari and Photos were launched as experimental, internal "private frameworks," and only incrementally opened up-- sometimes years later-- to allow outside developers to build extensions or to make use of Apple's internal features in their own apps, by way of a public "Application Programming Interface," designed to make it possible for outside code to closely integrate with Apple's.

Apple's Swift new language

On top of a flurry of new and expanded APIs, Apple is also directing new attention to Swift, its language of the future for building apps and talking to all these APIs. Swift certainly isn't new; Apple's been publicly working on it since 2014.

However, legacy issues have long forced Apple-- and many of its developers-- to continue writing and maintaining lots of existing OS and app code in existing languages like ObjectiveC rather than the new, continuously evolving Swift. But that's changing.

"Today, the majority of the top thousand apps are built using Swift," Prescott announced in the WWDC Keynote. Apple also acknowledged that the company itself used Swift to deliver Music and other new apps to modernize and replace iTunes in macOS Catalina two years ago. That's about as bold and confident of an endorsement as any developer could make.

The biggest news for Swift this year is new language support designed specifically to make it easier, safer and faster to create performant concurrent code without introducing complex bugs.

Concurrency enables code to maximize parallel execution, and is particularly critical to taking full advantage of processors with multiple cores. The new structured concurrency in Swift also affords better compiler performance, resulting in faster development and better apps.

SwiftUI for modern, accessible, localized apps

In addition to being a development language, Swift is also the namesake of Apple's graphical UI framework introduced in 2019. While Swift is targeted at creating better code, SwiftUI aims to eliminate lots of code by creating standard user interface elements and functionality that are declared-- or even simply laid out using graphical drag and drop tools.

By allowing SwiftUI to take over much of the heavy lifting in building the user interface, apps can gain a consistent appearance that is easy to update and enhance, as well as accounting for changes such as Dark Mode, user accessibility features and foreign language localizations.

This year, Apple is enhancing SwiftUI with features that make it easier to incorporate list views with the swipe gestures that debuted in Mail, as well as improving in app search using very little code. On macOS Monterey, SwiftUI simplifies building apps with multicolumn tables. Apple is also making it easier for custom controls to provide accessibility support.

New app development on iPad

A new generation of developers who love iPad have been clamoring for Apple's Xcode development suite for the Mac to get ported to their tablet. Instead, Apple took the more obvious-- in hindsight-- path of enhancing Swift Playgrounds for iPad to gain the ability to create full iOS and iPad apps and even submit them to the App Store for public distribution.



Swift Playgrounds was initially designed to walk learners through a series of "playgrounds" that teach programming concepts by enabling the user to type in Swift code and immediately see the real world results.

The next logical step is to make Swift learners into full Swift developers, right on their iPad, without having to first master the full complexity of Xcode or buy equipment capable of running Apple's full integrated development environment.

Xcode 13 and Xcode Cloud

For professional Mac developers building code for all of Apple's platforms, Apple has greatly enhanced Xcode 13, its IDE that only runs on the Mac. The biggest news is Xcode Cloud, a new service that simplifies the development cycle by handling build testing, debugging, device testing, and code signing on Apple's servers.

In conjunction, Apple has also enhanced Xcode 13 with new collaborative features that allow teams to work on projects hosted on Xcode Cloud, GitHub, Bitbucket and GitLab and to review different code versions, add comments and perform sophisticated testing all offloaded to Apple.



In conjunction with the new release of TestFlight for Mac, developers will now also be able to distribute beta versions of their apps to both Mac and mobile users, collecting feedback from testers that they can use to improve their code for public release.

The new collaborative features in Xcode 13, as well as the hosted Xcode Cloud service, promise to make development teams more productive and responsive. Xcode Cloud in particular helps developers to test their code against a wide range of devices, without having to maintain and manually test how their apps look across various models of iPhones and iPads.

Additionally, Apple's new tools work with Mac Catalyst to help bring the vast array of iOS and iPad apps to the Mac in a way that looks and feels truly native to the Mac experience.

Augmented Reality

Apple has recently concentrated development efforts on supporting the creation of AR experiences. Rather than being a passing fad the way face-mounted smartphone VR was, AR has found a viable market in online sales.

Online merchants using AR models of their products that buyers can view in their own homes have reported a 94% higher purchase rate. That boost in sales is driving the efforts to deliver even more 3D models that can be viewed anywhere in realistic AR, clearly a core reason why Apple is working to simplify this process using the aforementioned Object Capture API.

There are now over 9,000 developers working on AR apps, and Apple has the largest platform of mobile AR devices, with an installed base of over a billion iPhones and iPads capable of test driving AR.

Follow all the details of WWDC 2021 with the comprehensive AppleInsider coverage of the whole week-long event from June 7 through June 11, including details of all the new launches and updates.

Stay on top of all Apple news right from your HomePod. Say, "Hey, Siri, play AppleInsider," and you'll get latest AppleInsider Podcast. Or ask your HomePod mini for "AppleInsider Daily" instead and you'll hear a fast update direct from our news team. And, if you're interested in Apple-centric home automation, say "Hey, Siri, play HomeKit Insider," and you'll be listening to our newest specialized podcast in moments.
dewme

Comments

  • Reply 1 of 2
    darthwdarthw Posts: 61member
    Great article DED, I love everything you write. However, you could use some help proof reading your articles before posting, several typos in this article. But thanks for the great writing!
    Alex_Vjony0
  • Reply 2 of 2
    emoelleremoeller Posts: 523member
    For those that only saw the Keynote this is a nice overview of what WWDC2021 is all about.  Apple is really trying to get folks of all skill levels into programming and Swift is now the new "Visual Basic" in terms of light weight programming.  A lot can be accomplished using SwiftUI but in the end it will always be limited by API's that Apple puts out.

    Xcode, the next step up (essentially Unix for Apple) gets a huge boost from its new Cloud implementation - meaning it can now be shared with a teams anywhere.   The new debug tools are also state of the art, as is the new streamlined beta/feedback system.

    For those who feel they can't program (everyone can program, really) there is Shortcuts (the light version of Automation that has been around in MacOS for decades).   As with Swift, Shortcuts  it is limited in terms of what Apple provides.   But I am glad that Automation is still  available and will soon be somewhat cross compatible with Shortcuts.

    So few people utilize these tools, but it is really what computers are all about - getting things done more quickly and efficiently.   


    williamlondonAlex_Vdewmejony0
Sign In or Register to comment.