Make School 2017 - Mastering iOS Development

19

Transcript of Make School 2017 - Mastering iOS Development

MASTERING IOS DEVELOPMENT

TIMELINE

Assigned Project

Week 4 - 6

Personal Project

Week 7 - 13 + Winter Break

10/12 - 10/30 11/2 - 12/31

Ship

1/4 - 1/8

Lectures

PREREQUISITES

Summer Academy iOS Development Track!

LEARNING APPROACH

Summer Academy: Step-by-step instructions on how to implement

app

Twitter Bot Project: Step-by-step challenges

Advanced iOS Course: Project Specification, Lectures,

Outside Resources, Code Reviews → Come up with your entirely own solution

LEARNING APPROACH

Lectures will give you a high-level overview (the stuff that’s

hard to Google) and introduce you to concepts and

terminology

Lectures will provide recommended reading to dive into the

details of each topic

COVERED TOPICS

View Programming

Application Development

Platform Specifics

Tooling ArchitectureAdvanced

Topics

Auto Layout, Storyboards,

System UI Components,

Custom UI Components, Localization & Accessibility

Networking,

Threading,

Persistence,

Client-Server-

Sync

Standard

Libraries, Error Handling,

Memory

Management

Xcode, Instruments, Debugging,

Dependency Management

How to structure an iOS App, Distributing Information within Apps

Automated Testing,

Functional/Functional Reactive

Programming, Anatomy of an

iOS App

EVALUATION

EVALUATION

Weekly Code Reviews for assigned project

Develop on separate branch, have master be review-ready at

any time

Feedback Form will be used to capture feedback

OUTSIDE RESOURCES

MEETUPS

Swift Language User Group

NSMeetup

Find a dozen more on

meetup.com

RECORDED TALKS

Recorded Talks of Swift Language User Group

WWDC 2015: Talks by Apple Engineers on topics ranging from

Swift over recent framework changes to app design

Recorded Conference Talks: Swift Summit, AltConf, 360iDev

(list of all Cocoa conferences)

NEWSLETTERS

iOS Dev Weekly

This Week in Swift

iOS Goodies

BLOGS

NSHipster

Advanced: mikeash.com/pyblog

No longer updated, still great: objc.io

ASSIGNED PROJECT

TRIP PLANNERApp that allows users to plan trips

Trips consist of multiple waypoints

Users can search for waypoints by using the Google Places API

Waypoint locations are visualized within a MapView

TRIP PLANNER

Custom API Server written in Flask

Local persistence using Core Data

Communication with Google Places API

Synchronization of Trips with Server

TRIP PLANNER

At the end of the project we will provide you with an example

solution!