After WWDC, there are a lot of sessions on the Apple site. It takes a lot of time to figure out what to watch and what does not. Since I spent the whole week at the conference and looked through a lot of topics, I wanted to collect in one place a short list of new products and videos that need to be viewed on each topic.
The article will be most relevant for mobile developers who use the capabilities and embedded iOS frameworks when developing native applications.
In each category, the sessions are arranged in the recommended viewing order where possible.
It is worth starting with
▸ 101 - Keynote and
▸ 102 - Platforms State of the Union ,
These sessions provide an overview of all news with pictures and examples of work.
Perhaps the most pleasant news of the conference: in iOS 10, third-party applications will have access to SiriKit. More precisely, this Siri will get access to what is happening in the applications, and will be able to activate functions and even display the interface of your application directly in the system panel.
You can configure Siri for a specific application in a rather limited way:
Siri behaves differently on the clock, in the car, on the iPhone or with voice activation. This behavior is fully transferred to third-party applications. The dialogue engine is able to recognize both single and multi-step requests.
The most annoying is the predefined set of domains (Domains) for recognition: voice calls, taxi order, sending messages and some others. Of course, Apple engineers promise to complement domains in the future. But the implemented domains work great: you can choose different wording, slang, conversation sequence. This is no comparison with what is happening in the chatbots market, which essentially solve the same problem.
▸ 217 - Introducing SiriKit
▸ 225 - Extending Your Apps with SiriKit
SiriKit is not the only entry point to the application. Content can be searched through Spotlight, it can be advertised based on Handoff, messages from applications can appear in iMessage, and iBeacon Geofencing and Beacons allow you to offer location-based applications. How to work with so many entry points in the following sessions:
▸ 240 - Increase Usage of Your App With Proactive Suggestions
▸ 223 - Making the Most of Search APIs
In iOS 10, the user will receive a new alert design. In addition to the fact that they will be displayed in the form of identical banners throughout the entire system, the Title field will be added. If you make Force Touch on the notification, then you can display a part of the application interface through App Extensions, but this View will not be interactive. You can also attach media files (pictures, gifs, audio, video) in the format of links in the payload fields to notifications.
▸ 708 - Advanced Notifications
▸ 724 - What's New in the Apple Push Notification Service
▸ 707 - Introduction to Notifications
IMessage has added a bunch of new features, but for us, the developers, two are important: stickers and App Extensions.
Stickers can be created directly in Xcode, both static and animated versions are supported. Stickers can be placed in a separate iMessage AppStore, that is, you do not need to create a parent application.
For large applications, the ability to write extensions in iMessage is available. For example, the table reservation application can be used to send a reservation card to friends. In this case, the card will seem even to someone who does not have the application, and this is an additional channel for viral distribution.
Of course, applications can embed images and links into the chat. All this works through App Extensions, that is, the interface is displayed right inside iMessage. Sent messages will be visible on the poppy and the clock.
▸ 204 - iMessage Apps and Stickers, Part 1
▸ 224 - iMessage Apps and Stickers, Part 2
In the developer tools a lot of new. In addition to renaming the heap of the system API (see the Swift section), new buns have been added.
▸ 205 - What's New in Cocoa Touch
▸ 213 - Improving Existing Apps with Modern Best Practices
▸ 216 - Advances in UIKit Animations and Transitions
▸ 230 - Enhancing VoIP Apps with CallKit
▸ 220 - Leveraging Touch Input on iOS
▸ 236 - What's New in Auto Layout
▸ 228 - A Peek at 3D Touch
▸ 219 - What's New in UICollectionView in iOS 10
It is also worth paying attention to the sessions about working with AutoLayout and Size Classes in the Xcode section.
There are always a lot of changes in system frameworks, the competition with Android and the need to provide developers with the most relevant tools. For the user, this is not very noticeable at first glance (except that support for extended RGB on new iPads and iPhones), but the possibilities of developers are expanding.
▸ 720 - Concurrent Programming With GCD in Swift 3
▸ 716 - Core Location Best Practices
▸ 711 - NSURLSession: New Features and Best Practices
▸ 714 - Networking for the Modern Internet
▸ 719 - Optimizing I / O for Performance and Battery Life
▸ 712 - Working with Wide Color
▸ 242 - What's New in Core Data
Several sessions about launch speed optimization and polishing of iOS applications:
▸ 406 - Optimizing App Startup Time
▸ 420 - Optimizing Web Content in Your App
▸ 221 - Optimizing On-Demand Resources
Last year, a mechanism for working with XLIFF was presented. This time the sessions are about better practices than about new mechanisms:
▸ 238 - Measurements and Units
▸ 201 - Internationalization Best Practices
▸ 232 - What's New in International User Interfaces
In Cupertino unrealistic bother with privacy and security. Most experts, including Russian ones, admit that the iOS security model is much more thoughtful and secure than the Android implementation. Full control over software and hardware allows you to organize multi-layered protection, which is why for almost 10 years of the platform’s existence there have not been a single massive case of theft of user data or tools.
▸ 705 - How iOS Security Really Works
▸ 706 - What's New in Security
In iOS 9.3, the shared iPad mode was introduced, when several appleID accounts can use one device. This is true for schools or businesses.
In fact, the whole mechanism is to save and load content via iCloud: between sessions, everything is blocked and the data remains individual. There are optimizations due to which the iPad will not transfer all data again, if at least once they have already been downloaded. This applies to on-demand resources, and to keychain, and to loaded UserPreferences.
The HealthKit, ResearchKit and CareKit frameworks presented earlier have not yet become widely spread on the Russian market, but success stories in the west speak for themselves.
▸ 304 - Best Practices for Buildings
▸ 237 - Getting Started with CareKit
▸ 209 - Getting the Most Out of HealthKit
▸ 234 - What's New in ResearchKit
▸ 713 - Health and Fitness with Core Motion
In watchOS 3, most of the innovations relate to the correction of those defects that made previous versions of the platform non-usable. Appeared AppDock, which not only contains links to launch favorite applications, but also causes the system to keep them in a running state and run in a split second. For the same, there is a mechanism for updating the background of all application components: a screenshot in the dock, Complication on the main screen and applications on the iPhone.
Also, third-party applications now have access to all digital crown events, full control over touch input processing (swipe, drag, pan, long press gestures) and constant access to accelerometer data. There is a hope that with all this you can make the same fast and responsive applications, as on iOS.
Notifications on watchOS can now be local - that is, show only on the clock and not get on the phone.
▸ 235 - Building Great Workout Apps
▸ 208 - What's New in watchOS 3
Frankly, you can stop at session 208. Everything else is the same, but in a different sauce:
▸ 211 - Quick Interaction Techniques for watchOS
7 227 - Architecting for Performance on watchOS 3
▸ 218 - Keeping Your Watch App Up to Date
There were fewer design sessions this year, and the content is not very interesting. Of course, all the information is collected in the guidelines, but the illustration does not hurt.
As you know, Apple systems from last year use the new San Francisco font family. This year, monospace varieties are added in all styles: SFMono. In Xcode 8, all of them will be included by default, from the features: the width of characters of one point is the same in all styles, numbers and symbols are specifically configured for development, there are Cyrillic characters in the fonts.
For watchOS, Apple designers have a few recommendations. Applications must first be "glanceable", that is, deliver content in a minimum number of steps. The typical time of interaction with the clock should remain within 2 seconds.
▸ 804 - Designing Great Apple Watch Experiences
Also this year, the traditional Keynote design sessions continued. In detail, the process of prototyping and screening options.
▸ 805 - Iterative UI Design
▸ 801 - Inclusive App Design
▸ 802 - Designing for tvOS
Every year passes Design Awards. Get inspired here:
▸ 103 - Apple Design Awards
For Swift 3, in addition to syntax changes, thousands of methods were renamed in system frameworks. Apple calls it “Grand Renaming”, and the system APIs are finally getting rid of the old legacy.
▸ 402 - What's New in Swift
▸ 403 - Swift API Design Guidelines
▸ 419 - Protocol and Value Oriented Programming in UIKit Apps
▸ 207 - What's New in Foundation for Swift
▸ 404 - Getting Started with Swift
▸ 416 - Understanding Swift Performance
Since Swift was launched a year ago in the open source, Apple is promoting it as a language for server development as well.
▸ 415 - Going Server-side with Swift Open Source
Swift Playgrounds is coming soon on the iPad - a code editor for teaching children to programming in Swift.
▸ 408 - Introducing Swift Playgrounds
Xcode gets better every year, although there are still nasty jambs and problems.
The system for signing applications for testing on devices has been seriously reworked. If earlier only the thrill-seekers used the Fix Issue button, now the signature logic will allow the system to resolve most problems on its own. Now in the project settings it is recommended to enable the Automatic Signing setting, and all certificates and provisioning profiles will be generated and configured according to the AppleID developer account. This means that you can safely work on several working machines and safely commit the project settings for colleagues. Also, Capabilities settings will automatically work.
Of course, you still have the opportunity to do everything yourself, in order to clearly send the assembly to the app.
▸ 401 - What's New in Xcode App Signing
▸ 213 - Improving Existing Apps with Modern Best Practices
▸ 409 - Advanced Testing and Continuous Integration
▸ 417 - Debugging Tips and Tricks
▸ 414 - Using and Extending the Xcode Source Editor
▸ 410 - Visual Debugging with Xcode
▸ 413 - Introduction to Xcode
▸ 222 - Making Apps Adaptive, Part 1
▸ 233 - Making Apps Adaptive, Part 2
The tools also have updates and new features.
▸ 411 - System Trace in Depth
▸ 412 - Thread Sanitizer and Static Analysis
▸ 418 - Using Time Profiler in Instruments
Changes in iTunesConnect are small but important:
▸ 305 - What's New in iTunes Connect
▸ 301 - Introducing Expanded Subscriptions in iTunes Connect
▸ 302 - Introducing Search Ads
All other sessions (and there is still a lot about the development of games, macOS and tvOS) can be viewed on developer.apple.com
Source: https://habr.com/ru/post/303616/
All Articles