cs193p – Lecture #1 – Logistics, iOS8 Overview

1st slide from cs193p course @ Stanford

Please note, this blog entry is from a previous course. You might want to check out the current one.

Like every year lecture #1 is an general introduction of the course with an overview about iOS, MVC and this time the Swift.

… and again Paul Hegarty stresses the importance of being familiar with object oriented programming as prerequisites for the course and that it is not for absolute beginners.

In the iOS overview Paul Hegarty shortly explains the different layers of iOS. Beginning with

  • the core OS which includes the kernel, the file system, power management, security, C-API, …
  • the core services which provide the basic functionality of core location, SQLite, file access, threading, …
  • the media layer with core audio, OpenGL, ES, Quartz, …
  • the cocoa touch layer providing multi touch, map kit, camera handling, controls, core motion, localization, the view hierarchy, …

The second part of the lecture is a demonstration showing:

  • creating projects in Xcode,
  • building a user interface using Autolayout,
  • running an app on the iOS simulator,
  • using println to as debuggin log and its \() notation to show variable contents,
  • defining classes in Swift and specifying instance variables and methods,
  • connecting properties – instance variables – from Swift code to the user-interface outlets,
  • connecting user-interface elements to invoke methods in Swift-code actions,
  • accessing iOS documentation,
  • and the concept of optionals – ?, unwrapping implicitly by declaring with !, and unwrapping explicitly with ! and if let

The lecture as well as its slides are available via iTunes under the name “1. Logistics, Overview of iOS”. The code for the demo is available on GitHub.


Leave a Reply

Your email address will not be published.