As an iOS / Swift mentor for Thinkful.com, every week I give my students a list of resources as a follow up to our mentoring session. Typically this consists of a short email listing the resources, which can include podcasts, videos, blog posts, etc. I have a ton of resources I like to share over the duration of the course, but I try not to give too many at once so as not to overwhelm. This week, however, most of my students hit a transition point in their learning, as they started working on building their own apps, and we covered a lot of ground in our discussions. So much so, I decided it would be easier to write this blog post covering the related resources.
This week’s resources relate to putting together your UI in Interface Builder – Auto Layout, Adaptive Layout, Size Classes, Dynamic Text, and mastering the Interface Builder IDE. Additionally, we touched on architectural design patterns (MVC, MVVM, etc.). Finally, most of my students are starting to struggle with networking via the AFNetworking library, and using Objective-C libraries (although none of them know any Objective-C) in their Swift apps using bridge headers. So without further ado, here are the resources for this week:
Mastering Auto Layout in iOS (plus adaptive layout, size classes, dynamic text)
written tutorials:
Beginning Auto Layout Tutorial in iOS 7: Part 1
Beginning Auto Layout Tutorial in iOS 7: Part 2
Video: (downloading the PDF of the presentation for reference can be helpful in addition to the video)
- What’s New in Interface Builder
- Designing Intuitive User Experiences
- Building Adaptive Apps with UIKit
- Architecting Modern Apps, Part 1
- Architecting Modern Apps, Part 2
- User Interface Design for iOS 7 Apps
- Interface Builder Core Concepts
- Taking Control of Auto Layout in Xcode 5
- Building User Interfaces for iOS 7
- Introducing Text Kit
- Advanced Text Layouts and Effects with Text Kit
- Using Fonts with Text Kit
Adaptive Layout
written Tutorials:
Beginning Adaptive Layout Tutorial (includes quick intro to Auto Layout, too!)
Supercharging Your Xcode Efficiency – keyboard commands, customizing Xcode, and beyond
UIVisualEffectView
blurred backgrounds in iOS…
Debugging in Xcode
- Debugging in Xcode 6
- Fix Bugs Faster using Activity Tracing
- Advanced Swift Debugging in LLDB
- Improving Your App with Instruments
- Debugging with Xcode
- Advanced Debugging with LLDB
Architectural & Design Patterns
WWDC 2014
- Core iOS Application Architectural Patterns
- Get the most out of iOS’s frameworks by understanding their core idioms and expectations. Learn about pervasive design patterns like “Model, View, Controller”, Target/Action, Delegation and others used throughout Cocoa Touch. Gain practical knowledge of architectural idioms to organize your code for flexibility, clarity and reliability. See how to structure your app to take full advantage of Apple’s frameworks.
- Advanced iOS Application Architecture and Patterns
360iDev Min
BRAD DILLON – HOW I ACCIDENTALLY DISCOVERED MVVM
360iDev
Jay Thrash: Good Intentions: A Path to Building Better View Controllers
Interview with Jay Thrash by Saul Mora (NSBrief Podcast) – follow up on the View Controllers Talk
Reactive Cocoa
Ash Furrow’s write up on Eidolon
Swift Development Branch of Reactive Cocoa on GitHub
Networking Libraries
Alamofire – Swift alternative to AFNetworking
Tools for wireframing, mock ups, templates…
Photoshop Templates, Action Sets, Etc.
Teehan Lax
Michael Flarup’s App Icon Template
Using Swift With Cocoa and Objective-C
https://developer.apple.com/swift/resources/
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/BuildingCocoaApps/
https://itunes.apple.com/us/book/using-swift-cocoa-objective/id888894773?mt=11#
git
free book by Tower – Learn Git (I recommend starting here, it starts with a gentle introduction). Also Tower is my git client of choice, but you can access git directly from Xcode.
Six Revisions – top 10 git tutorials
Leave a Reply