iOS Development with Swift Classes
One month afternoon classes around the 529 and HWY 6 area.
Course Description:In this 4-week project-based course, students will learn to develop iOS applications using the Swift programming language and the Apple toolset. Additionally, students will learn basic concepts about designing intuitive and usable interfaces.
Throughout the week, students will hear lectures and presentations from the AP COMPUTER SCIENCE Dev Academy. These lectures will cover topics including user experience, resume creation, interview preparation, agile software development and the use of various development tools relating to the Swift Language.
Course Learning Outcomes (From Apple’s Teaching App Development with Swift Course Overview):
The primary learning outcome for this course is that students will be able to design and
create iOS apps. Students will leverage Swift, the iOS SDK, and Apple developer tools. With iOS as the
platform, students will learn object-oriented programming, design patterns, type systems, functional
language features, user interface design, best practices in programming, and problem analysis.
Upon successful completion of this course, students should be able to:
1.Define key programming terms relevant to Swift and iOS programming.
2.Describe the process of creating iOS apps.
3.State the purpose of the Apple developer tools, such as Xcode, Instruments, debugger, analyzer, and iOS Simulator.
4.Distinguish well-written code from poorly written code.
5.Employ the Apple developer tools to create an iOS app.
6.Demonstrate programming best practices in Swift.
7.Examine and subdivide app functionality into properly designed components.
8.Explain and summarize iOS API features including location, mapping, sensors, gestures, multimedia and user interface components.
9.Plan, prepare and build an original iOS app, from concept to working program.
Tentative List of Topics (From Apple project and lesson overviews):
•Running and modifying an iOS app
•Gaining a comfort level with Xcode
•Apply Auto Layout constraints to create adaptive user interfaces
•Discovering how to connect user interface controls to controller code
•Understanding the tools and technologies used to create iOS apps
•Practicing the fundamentals of Swift syntax
•Understanding object-oriented programming with Swift 3
•Discovering Swift data types and collections
•Applying UILabel and UIPickerView components, IBOutlets and IBActions
•Demonstrating Arrays, ranges and the map function
•Describing protocols and delegates
•Using NSUserDefaults and property list files for persistence
•Describing object-oriented inheritance and subclassing
•Discovering how to respond to touch events
•Practicing establishing connections between controllers and views
•Describing how frameworks provide additional app functionality
•Defining URLs and the NSURL class
•Combining additional frameworks in an Xcode project configuration
•Discovering the fundamental features of the MKMapView APICourse Materials:All students enrolled in this course are encouraged to have:
•A Mac computer that they can bring to class everyday, though one can be provided to those in need (contact CareerSource North Central Florida or Gainesville Dev Academy)
•The latest non-beta version of Xcode installed on the Mac laptop that they bring to class. Xcode can be downloaded at the following link (https://developer.apple.com/xcode/download/)
•An Apple ID. Students can create an Apple ID by visiting the following website (https://appleid.apple.com/)