Class -
In the FlickrFetcher class that we originally included with the Paparazzi 2 files, we had an error in:
- (NSArray *)fetchManagedObjectsForEntity:(NSString*)entityName withPredicate:(NSPredicate*)predicate
The method takes "entityName", but we were then hardcoding a value of "FlickrUser" instead of using the variable being passed in. If you've already downloaded these files, line 77 should read:
NSEntityDescription *entity = [NSEntityDescription entityForName:entityName inManagedObjectContext:context];
instead of
NSEntityDescription *entity = [NSEntityDescription entityForName:@"FlickrUser" inManagedObjectContext:context];
If you haven't yet downloaded the files, they should now be correct on the website.
Also, some of you have noticed that your project may not build without importing a new Framework for CoreData functionality. In Xcode if you open the Targets group on the left and double click on the target you have in there that will open the Target Info pane. In the General tab there's a Linked Libraries list at the bottom. Is CoreData.framework in there? If not, use the plus button below the list to add it and then you should be good to go.
Good luck,
Alan
_________________
Apologies for the delay in posting slides and sample projects. Thursday's lecture covered the important topic of performance on the iPhone. With limited memory and resources, it's crucial to stay on top of your performance in order to have a robust and well performing application.
Big thanks to Chris Marcellino for the guest lecture today! Today's lecture was all about using data in your iPhone apps. Data from local files, databases, plists, the internet. There are a bunch of sample projects included in the files today.
Also available is the Paparazzi2 project, along with extra files and fake data to use. Paparazzi2 is due on 2/10.
Today's lecture covered how to use scroll and table views. A sample project is included for you to play around with.
This week brings the start of our 4-week assignment series building Paparazzi. Today's lecture covered Navigation and Tab Bar view controllers.
Today's lecture covered some of the common designs for iPhone applications, the Model-View-Controller design pattern and introduced View Controllers, a central piece of most iPhone applications.
Apologies for not getting this posted after Tuesday's lecture, but here's the assignment for this week. It's the second part of the HelloPoly assignment which brings a custom view into the mix.
Thursday's lecture dove into how applications work, introduced Model-View-Controller which is the central design pattern to iPhone applications, explored Nib files and discussed controls and the target-action design.
Invites to the iPhone development team for our class will go out shortly. This will let you start installing your applications on iPhones and iPod touches.
Be sure to come to the extra Friday session tomorrow (Jan 15th) from 4-5pm at building 260, room 113. The TAs will cover Xcode project navigation, finding help and documentation, and the built in debugging tools. Along the way, we'll also create a simple graphing app and learn some handy hotkey shortcuts. See you tomorrow!
Paul's office hours are now posted: Thursday 2 - 4 PM in Gates B26B.
Assignment 2A and 2B are now available, both are due Weds 1/20. Part A continues the WhatATool command line utility while Part B starts our first iPhone application.
Enrollment for the class has been finalized although there is still a little shuffling as some enrolled students have ended up not being able to take the class. If you're at all unclear about your status in the class please email cs193p@cs.stanford.edu.
Today's lecture we covered creating custom Objective-C classes, the lifecycle of objects and how the reference counted memory management works in Cocoa Touch, the magic of autorelease pools and finally how Objective-C properties work.
The lectures from last week are now available on iTunes U. You can get to the class page in iTunes for this quarter by clicking here. Here are specific links for Lecture 1 and Lecture 2.
Emails have been sent out to all the students who submitted surveys with the results of the admission process. If you were admitted, please be sure to sign up in Axess. If you weren't, please be sure to drop the class. If you have any questions, please drop us a line.
This Friday (tomorrow) the TAs will hold a special session of office hours in Gates 360, from 3:30-5:00 PM.
The intent of this office hours is to both help students with questions about the course/assignments, but also to help any students that are having issues installing the iPhone SDK on their machines. If you are having issues getting set up, please have already downloaded the SDK before arriving (you can get it at http://developer.apple.com/iphone/).
We're making good progress on the enrollment surveys and hope to have the process completed tomorrow afternoon. An email will go out to everyone that submitted a survey letting you know whether you are in or not.
At the same time we should have the developer team straightened out, details will follow. If you want to get a jump on the assignment before we have the team set up, you can sign up for a free iPhone developer account at http://developer.apple.com/iPhone which will give you access to the iPhone SDK (simulator only).
David's office hours are Mondays 4-6 PM in Gates 360.
Today we went over the basics of Objective-C and introduced a variety of Foundation framework classes.
We kicked off a new quarter of 193P to a jam packed room (including Rein and Kalev, our youngest students ever who are getting a jump following in their mom's footsteps!). We're looking forward to a great quarter and can't wait to see the amazing apps that all the students come up with.
The lecture slides and handouts will be posted here, usually shortly after lecture but we'll try to do them before whenever possible. Have a look at the class overview handout which has answers to a lot of the frequently asked questions. If you have questions about the class that aren't answered in the overview, please don't hesitate to to drop us a line at cs193p@cs.stanford.edu.
If you are looking to enroll in the class, you MUST fill out a survey. You can find the survey here: http://tinyurl.com/cs193p-2010. You need to fill out this survey by Weds Jan. 6, by noon. We will determine enrollment and email students who are admitted hopefully by the end of the week. We will have a waiting list of students in case spaces open up in the first couple weeks.
The first week's assignment is also posted. It consists of 2 parts: the first is very simple and intended to get you situated with the development tools and environment, the second is an introduction to Objective-C by way of a command line utility.
Keep an eye on this page for any announcements related to the class, it should be your first stop for any questions. We will also post links to the iTunes U videos when they become available.
A couple bits of news about the upcoming quarter for 193P. First, the logistics:
Date/Time: Tuesday & Thursday, 4:15 PM - 5:30 PM
Location: Education 128
Lecturers: Alan Cannistraro & Josh Shaffer
TAs: Paul Salzman & David Jacobs
We are expecting to be sold out again so if you're interested in taking the class please show up to the first lecture where we will have details about how enrollment will work.
We're getting ready for another round of 193P in the Winter 2010 quarter! The class is being updated to cover iPhone OS 3.0. Keep an eye on this site for more details.
Enrollment is limited to active Stanford students only. We are hoping to offer 193P on iTunes U again. If you have any questions, please drop us a line.