cs193p – Lecture #2 – Xcode 4

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

Lecture #2 provides a short walk through of the Xcode developing environment. The first half of the lecture discusses the various classes of the model for the playing card game. The second is a life demonstration on how to start a project in Xcodes, placing buttons and labels in Storyboard and connecting them to the view controller.

At the end of the lecture the app called Matchismo displays a playing card and allows to flip it to show both sides of the card.

Assignment #0 is to follow the steps from the demonstration, add the model classes from the first half of the lecture and finally allow to flip through all cards of a deck.

To implement this last step, add a new property to hold the model of the game – the card deck – to the view controller. Don’t forget to include the model class:
Continue reading “cs193p – Lecture #2 – Xcode 4”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs193p – Lecture #1 – iOS, MVC, Objective-C

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

Lecture #1 is an general introduction of the course with an overview about iOS, MVC and Object C.

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.
Continue reading “cs193p – Lecture #1 – iOS, MVC, Objective-C”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

iOS Dev – Lecture #3: Foundation Classes

The third lecture starts with a review of the last lectures followed by an introduction to data structures in Objective-C. Numbers are represented as int, float, double, NSNumber, booleans as BOOL, Strings as NSString and NSMutableString, dates as NSDate, and binary data as NSData. Further primitives are NSIndex and NSValue.
As collections there are arrays represented as NSArray and NSMutableArray, sets as NSSet and NSMutableSet, and dictionaries as NSDictionary and NSMutableDictionary.
In addition there are blocks for executable code.

Foundation classes are by default immutable which has the advantage of having no unwanted side-effects when passing objects to methods. To be changeable after initialization they have to be defined as Mutable.
Continue reading “iOS Dev – Lecture #3: Foundation Classes”

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

iOS Dev – Lectures #1 & #2: Introduction & Objective-C

The first lecture provides an introduction to mobile development on the iOS device family. As assignment it is required to read the iOS Human Interface Guidelines.

The second lecture explains the programming language Objective-C and Memory Management.

The lecture videos and its slices are available on iTunes.

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs106a – Lecture #25 to #28: Finally Java

The twenty-fifth lecture starts with a discussion of the next assignment as introduces concurrency in the theoretical part.

The twenty-sixth lecture discusses the differences between the ACM library set and “standard” java, end explains how to embed/compile java programs to run outside the development environment.

The twenty-seventh lecture explains which other classes are available at Stanford and what to expect.

The twenty-eight lecture is a wrap up and outlook for future classes.

Code for these lectures are available on github.

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs106a – Lecture #22 to #24: Guess? Java

The twenty-second lecture starts by explaining the features of the next assignment #6. The theoretical part explains containers and data structures, and finishes showing how to pars a file to extract its data.

Prerequisites to the twenty-third lecture is reading chapters 12.1 through 12.3 of “Art and Science of Java”. The lecture discusses searching and sorting.

The twenty-fourth lecture continues with collections and introduces programming patterns.

Code for these lectures are available on github.

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail

cs106a – Lecture #19 to #21: Java, Java, Java

Prerequisites to the nineteenth lecture is reading chapter 13 of “Art and Science of Java”. The lecture continues discussing ArrayLists and HashMaps introducing interfaces.

Prerequisites to the twentieth lecture is reading chapters 10.5 and 10.6 of “Art and Science of Java”. The lecture discusses the implementation of graphical user interfaces.

Prerequisites to the twenty-first lecture is reading chapters 10.7 and 10.8 of “Art and Science of Java”. The lecture continues with graphical user interfaces introducing layouts.

Code for these lectures are available on github.

FacebooktwitterredditpinterestlinkedintumblrmailFacebooktwitterredditpinterestlinkedintumblrmail