Individual Programming Assignment 1

From CS 160 User Interfaces Sp10

Jump to: navigation, search

Due: before class on February 1

10 points - Programming



In your first assignment you will learn how to:

  • Work in XCode (Apple's IDE) and Interface Builder (Apple's GUI editor)
  • Start programming in Objective-C
  • Build an iPhone application and test it in the simulator

You will create an application with a simple user interface that asks the user to enter their name (e.g., Bob) , and that will then show a customized greeting (e.g., Hello, Bob!) when a button is pressed.


  1. Submit Course Petition and join Apple iPhone Developer program: You MUST first submit your Course Petition so we can add your email address to the list of UC Berkeley Apple iPhone Developers. Do this right away so you have enough time for the remaining steps. Once we add you, you will receive an email from Apple with subject "You are invited to join the iPhone Developer Program". Follow the instructions in the email to complete the sign-up.
  2. You need access to an Apple computer with XCode and the iPhone SDK (3.1.2) installed.
    1. Using your own computer: You have to run OS X Leopard (10.5) or Snow Leopard (10.6) and need ~5GB of free space. Install the latest OS X software updates. Then go to , log in with the developer account you created in step 1, and download the "iPhone SDK 3.1.2 with Xcode 3.X.Y" (3.1.4 for Leopard, 3.2.1 for Snow Leopard).
    2. Using the Orchard Mac Lab: You can use the Macs in 200 Sutardja Dai Hall during CS160 lab hours and open lab times. These machines already have XCode installed. CS160 lab hours are Monday 9am-4pm. Many courses share access to this lab; some courses have exclusive use during certain times. See Prof. Garcia's online lab schedule and plan ahead.
      To successfully run the iPhone Simulator, see this note on How to fix the iPhone development environment in the Orchard Mac Lab.
  3. Now follow the steps in this Apple tutorial: Your First iPhone Application.
    You have to work through the end of the step "Implementing the View Controller".

Grading Criteria

Full credit (10 points) will be given if your application compiles, runs, and matches the functionality of the Apple Tutorial (see solution 1 below).

Up to 5 extra points will be given if you implement additions that make the application more usable or more aesthetically pleasing. For example, you can implement the following:

  • Create an icon for the application.
  • Add a button for clearing the name.
  • Make the application run in full screen (remove status bar).
  • Add a drop-down menu to choose different messages in addition to "Hello".
  • Change the layout

Solution Examples


Submission Instructions

Create a Wiki Page for this assignment

Begin by creating a new wiki page for this assignment. Go to your user page that you created when you made your account. You can get to it by typing the following URL into your browser:

Replace FirstName and LastName with your real first and last names. This will take you to the page you created for yourself when you created your wiki account. If you have trouble accessing this page, please check that you created your wiki account properly.

Edit your user page to add a link to a new wiki page for this assignment. The wiki syntax should look like this:

[[ProgrammingAssignment1-FirstNameLastName|Programming Assignment 1]]

Again replace FirstName and LastName with your name. Look at my user page for an example. Then click on the link and enter the information about your assignment. You should upload one file (described below) and in the wiki page, describe any extra credit functionality you implemented and want us to review.

Upload Project

  • Your submitted project must include both the full source code as well as the executable of the working application.
  • Create a zip file of your project tree (the top-level folder that includes the xcode project file; in Finder: right-click the Folder, choose "Compress Foldername"). Rename the zip file to (e.g.,
  • Upload the zip file to the ProgrammingAssignment1-FirstNameLastName page you just created:
    • Create a new file link like this: [[]]
    • Save the page, then click on the File link you just created to upload the zip file.

Add Link to Your Finished Assignment

One you are finished editing the page, add a link to it at the bottom of the page with your full name as the link text. The wiki syntax will look like this: *[[ProgrammingAssignment1-FirstNameLastName|FirstName LastName]]. Hit the edit button for the last section to see how I created the link for my name.

Tips and Learning Resources

Links to Finished Assignments

Add your submission below this line.

[add comment]
Personal tools