CMSC 498i
CMSC 498i
Instructor
Chuck Pisula
Lecture
Tu/Th – 9:40-10:45
CSI 3120
Lab
Friday – 10:00-11:30
CSI 2107
Class Resources
Useful Links
Press – Check out what is being said about our course on our Press page.
Final Projects – Students teamed up to work on a large semester project. The final projects for Spring 2010 can be found on the Projects page.
Overview
This course will teach fundamental programming principles with a focus on the mobile environment and the iPhone OS. The course will emphasize practical application of numerous academic concepts.
Students should already have a familiarity with C, an understanding of basic OOP, studied basic algorithms and data structures. Course projects will be written in Objective–C using the iPhone SDK 3.1.2 on a Mac. Laptops and iPod touch devices will be provided during lab times. While several campus labs (PG2, McKeldin, CSS) have the required development resources, having individual access to Mac OS X, and an iPhone / iPod Touch will be beneficial
Be prepared, this course will move fast and you write a lot of code.
Course Material
To effectively follow along with the course, make sure to watch the “Lectures / Labs” section of the website. Each week, I’ll be posting new lecture slides and lab material (including any posted solutions) there. There is no assigned book. Reading assignments are listed on the “Lectures / Labs” section each week along with the posted lecture material.
If you want to follow along with the class discussions, visit the CMSC 498i Forum. There’s a lot of useful information up there.
Getting Started
Here are some resources you can check out if you want to get a head start
Objective–C
Learn about the programming language we’ll be using this semester
• There is a quick primer here – “Learning Objective-C: A Primer”
• For a more detailed look, read “Objc.pdf”
Cocoa
Cocoa is the suite of object–oriented software libraries, and integrated development environment used by Mac OS X and iPhone OS.
• You can get an overview of what cocoa is all about in “CocoaFundamentals.pdf”
IDE
Mac OS X and iPhone OS share the same integrated development environment, or IDE. You will use Xcode to edit source code and create applications, and Interface Builder to design your user interface. Here are some resources to get started.
• Interface Builder Basic Concepts