Top 10 WWDC 2016 Videos
Wondering which WWDC 2016 videos are the best for developers to watch? Check out our recommended top 10! By Tim Mitra.
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Sign up/Sign in
With a free Kodeco account you can download source code, track your progress, bookmark, personalise your learner profile and more!
Create accountAlready a member of Kodeco? Sign in
Contents
Top 10 WWDC 2016 Videos
20 mins
- 1) Platforms State of the Union
- 2) What’s New in Swift
- 3) What’s New in watchOS 3
- 4) Improving Existing Apps with Modern Best Practices
- 5) What’s New in Cocoa Touch
- 6) Protocol and Value Oriented Programming in UIKit Apps
- 7) What’s New In GameplayKit
- 8) Introducing Swift Playgrounds
- 9) What’s New in SpriteKit
- 10) Visual Debugging with Xcode
- Where to Go From Here?
5) What’s New in Cocoa Touch
This is a more focused look at the enhancements to Cocoa Touch surveyed in the Platform State of the Union. The session starts with a discussion of what’s been introduced since the last WWDC in 2015: the iPad Pro, the Apple Pencil, the Smart Keyboard, and 3D Touch. We already have the tools and we can take advantage of adaptability to build for larger devices, with Traits, Size Classes and size-based layouts.
Next, the session looks at the core technology improvements. First, Swift 3 with its additional first argument to give functions greater clarity. GCD now has a full object API allowing greater control over objects in the queues. Foundation in Swift has dropped some of the redundant naming as well as converting reference types into value types. For example, DateComponents, and colors properties dropping UIColor from the name.
The Wide Color support starts the look at image handling and the new UIGraphicRenderer class. The session highlights the benefits of Asset Catalogs, the Accessibility Inspector, and improvements in speech recognition, enhanced Dynamic Type and Text input. Customizable Peek & Pop is also previewed, as are new features in UICollectionView and its parent UIScrollView class.
This is a really important overview and points out many more ways that iOS is changing.
6) Protocol and Value Oriented Programming in UIKit Apps
Last year’s Protocol Oriented Swift was the breakout sensation from WWDC 2015. This year’s session follows up with an application of protocols and value types in a model-view-controller application. Based on local reasoning as clearer way of understanding a large code base, the speakers break down how to use these principles and preserve objects in the code. Rather than duplicating code, by adding common objects as structs to protocols, normally dissimilar classes can share properties.
The session covers how to use composition of values rather than inheritance to maintain local reasoning. Elements used as lightweight structs can be leveraged without the worry of what the super class is doing or what a subclass may override. Using protocol-oriented code makes testing objects possible as well. UIView and SKView classes can conform to a protocol that serves up a common layout property such as a frame.
The use of associated types makes protocols even more powerful, and using structs in logic makes it possible to test view elements without the GUI. This session provides simple yet effective analogies to show how protocol and value-oriented programming in Swift is both powerful and simplifies the tasks in your apps.
7) What’s New In GameplayKit
At WWDC 2015, Apple introduced GameplayKit, their sophisticated tooling for building games. GameplayKit introduced seven major systems and this year they’ve added improvements to Agents, Pathfinding and Game AI. New this year is the addition of a new Spacial Partitioning, Procedural Generations and access to all the tools right inside Xcode.
Pathfinding now utilizes triangulation rather than line of sight to navigate obstacles. This can be edited graphically in Xcode. Agents, groups of player nodes, can now be used in 2D as well as 3D games. Spacial Partitioning allows objects to be grouped by proximity.
Procedural Generations is really cool. You can create game elements on the fly by applying various noise theories, combining them to create coherent randomness and apply the elements to generated environments. For example, applying one type of noise to terrain, with another applied to temperature, lets you easily create deserts, tundra and savannas.
Game AI builds on last year’s MinMax modeling and introduces Monte Carlo strategy. Game decisions are made quickly, and decision trees can be traversed with low overhead. Xcode Editor integration brings entity and component editors, along with Navigation graph editing for Pathfinding and scenes outline view. There’s even a state machine quick-look tool built-in.
GameplayKit greatly enhances your ability to create compelling games. If you are making games, or learning to make games, this session has the tools for you.
8) Introducing Swift Playgrounds
Ever since I got my iPad 1.0, I have wanted to write code on it. I have tried out just about every app there is that provides some type of code writing functionality and even app layout tools.
Playgrounds in Xcode have been a great way for developers to quickly flesh out ideas and eventually build that code into their apps, so I was super excited to see the announcement of Swift Playgrounds for iPad in iOS 10, which puts the power of Swift into the hands of all budding and seasoned developers.
During the Platform State of the Union and in the Keynote, you’re shown the basics of Swift Playgrounds. Apple is positioning the tools as a springboard for education and provides beautiful lessons to teach coding principles. This session digs a bit deeper and further demonstrates the full power of Swift Playgrounds.
Last year Playgrounds in Xcode got multipage support and the ability to share source code and assets. Swift Playgrounds for iPad also makes use of these conventions. The session delves into how you can author playground lessons and presentations yourself. The speakers demonstrate the underlying structure as well as some tips, tricks and best practices for authoring.
Swift Playgrounds are great for trying out code ideas to explore the iOS SDK, APIs and frameworks. You can also gain some insight into protocol-oriented programming by examining how the protocols are used under the hood, as well as tapping and dragging out for-loops and arrays literally at the tip of your fingers. It’s just fun for all ages.
9) What’s New in SpriteKit
SpriteKit is Apple’s 2D graphic framework for building games on iOS, macOS and tvOS. This year it comes to the Apple Watch in watchOS 3. Xcode 8 has a new Integrated Layout Manager, which enables access to many gaming tools (see What’s New In GameplayKit).
Xcode 8 also has a brand new tile map editor – a feature we have been hoping for since the advent of SpriteKit! Editing tile maps can be tedious, but Xcode 8 adds the ability to paint tile maps, and group and animate tile elements. Tile maps can be layered for composition and layers can be transformed at different rates to create parallax effects.
This session also covers GameplayKit integrations, discussing how components can be applied to nodes. Xcode 8 also has a new Scene Outline view. You can see all of the nodes in your game, examine and adjust the parent-child relationships.
New in SpriteKit this year is Warp Transformations. Sprites can be manipulated and iOS takes care not to make the distortions too obvious. New focus integration on tvOS is covered as well along with some best practices and performance enhancements.