ART40545 - Basics of Programming: iOS
Week 11
http://online.wsj.com/article/SB10001424127887323826704578356283893015710.html
phonegap for both ios and android
project debugging
Week 10
Quiz Answers
https://developer.apple.com/appstore/guidelines.html
In a land of confusion, who gets the help?
State Preservation and Restoration//writing a restoration class.
Some good re
http://komarov.mobi/newcritique/
Icloud
Debugging...I'm thinking I go one on one and we pair up....
Week 9
Review because we should have everyone together
Passing an argument through a selector
Social Media Week
Inhouse apps and mysql (pros and cons )and password protection
Getters and setters
xml as a feeder/External
Splash pages
Data Files
More About iCloud
Specific Help-Joan/Tamara
Quiz (take home)
Week 8
Review
Getting into blocks
Geolocation
Getting exact address
Mapkit
Styling->UIView and animations
Your Projects and Needs...
(week 9 will be social week Twitter/Facebook)
Week 7
Go over homework
Review Storyboard app
Saving things on a server
Multimedia
Icloud next week
Geolocation part of next week and probably into week 9
Week 6
HW answers
More on core data
More on sqllite
HIG Technological Requirements
This week's app: Extending off our homework, we will create an Image Journal. Hopefully, we can use this for your projects
First, always store your images in a usable format such as PNG or JPEG instead of NSData. This will save you a lot of headaches.
Second, the rule for storing binary data is:
< 100kb store in the same table as the relevant data
< 1mb store in a separate table attached via a relationship to avoid loading unnecessarily
> 1mb store on disk and reference it inside of Core Data
Project coupling both....camera and storage
Of interest:
@synthesize will generate getter and setter methods for your property. @dynamic just tells the compiler that the getter and setter methods are implemented not by the class itself but somewhere else (like the superclass)
Uses for @dynamic are e.g. with subclasses of NSManagedObject (CoreData) or when you want to create an outlet for a property defined by a superclass that was not defined as an outlet:
Super class:
@property (nonatomic, retain) NSButton *someButton; ... @synthesize someButton;
Subclass:
@property (nonatomic, retain) IBOutlet NSButton *someButton; ... @dynamic someButton;
Week 5
Finalize our homework
The Collections View
Storage Continued
Sqlite versus Core Data
Looking at StoryBoards
Week 4
Troubleshooting announcement....
Homework answer first-then advanced table cells
Delegates and data sources
Finish Controls with exercises
Datasources and Delegates: For now, delegates are used to extend the functionality of a class without resorting to subclassing. They provide a design pattern that maintains very loose coupling between classes, usually more generic ones like views, and those with application specific functionality. Some of the most common examples of classes that use delegates are windows (in Cocoa), tableViews, and textFields/textViews. A tableView, for example, only knows how to draw itself, and while it could be sub-classed to deal with the presentation and manipulation of the data it displays, that is counter to MVC paradigm. Delegate methods are of the
-will
-should
-did
type. They allow the application to set up constraints, pre and post processing and reactions to events. A simple scenario- Text is entered in a textField and the window containing the textField is about to close. What should be done with the input text? The window and textFields are simply containers, they don't and shouldn't know how to handle it, so their delegate is informed about what is about to occur (-windowShouldClose and -textFieldShouldResignFirstResponder for example) and it is the delegate's responsibility to allow or prevent this from taking place, or take some action before allowing it to occur.
Adding plists to our simple table from last week
Lab - In Class....creating a storyboard app
Finish Storyboard in class so that your homework will be easier
Plan tutoring/hangout and the project based content for next week
Hangout Week 3
This week google hangout will be Sunday at 7:00pm . More than likely I plan on how to attack the homework as well as our controls folder and any other questions that may arise.
Week 3
Old Business (Homework Answer, Asynchronous Slider ,
MVC explained...note:Files Owner connects xib with h and m files....
More Objective C basics for reference
More Controls
Datasources and Delegates
Switching Views with a Custom Class
Table Views in Class Lab
Week 2
Catch up on scripts from last week
Conditions, Functions, Enumerations and Arrays (Some basic Obj-C things )
More UI Controls and how to use 'em
Move forward with calculator assignment/Keyboard Control numeric/resign first responder/delegates
Switching Views/Storyboards
Begin Calculator App
Discuss project ideas-what type of navigation? What type of interface? What Frameworks might we need?
Week 1
- Introductions-Course expectations
-Our environment...Learning how to learn in the modern digital world...shedding preexisting habits/tendencies and beliefs
- Introduction to the tools,
-Objective C and Objective C as it relates to IOS,Variables,Datatypes,Operators,Strings,Placeholders,Conditions,Loops,
- Break
- Objective C continued. Code Snippets, Functions
- Objective C and in class exercises/Creating a Basic Interaction
