why iphone? - cs50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · main.storyboard h...
TRANSCRIPT
![Page 1: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/1.jpg)
Amazing iPhone Apps w ith Ob jective-C
A CS50Sem inar by Zack Chauvin’17
![Page 2: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/2.jpg)
Why iPhone?
![Page 3: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/3.jpg)
Why Objective-C?
Wealth of Resources
Established language
Similarity to C
Dominates Industry
![Page 4: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/4.jpg)
Xcode
![Page 5: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/5.jpg)
Broad Overview ofObj-C
![Page 6: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/6.jpg)
Similarity to .c/.h
![Page 7: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/7.jpg)
Object-Oriented Programming
![Page 8: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/8.jpg)
Instance and Class Methods
![Page 9: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/9.jpg)
Model View Controller
![Page 10: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/10.jpg)
Analogy
Model
Controller
View
![Page 11: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/11.jpg)
Code Example: Scary Bugs
![Page 12: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/12.jpg)
Final Tips
![Page 13: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/13.jpg)
Make a small practice app
before you jump into
the final project!
![Page 14: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/14.jpg)
Usegitto collaborate with
partners and save work!
![Page 15: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/15.jpg)
Run your code often
to catch bugs early!
![Page 16: Why iPhone? - CS50cdn.cs50.net/2015/fall/seminars/objective_c/objective_c.pdf · Main.storyboard h RWTMasterViewContro ler.h ... ( return type)myMethodTakesASt ring: (NSString*) stringVar](https://reader034.vdocuments.us/reader034/viewer/2022051722/5aa89faa7f8b9a90188bbc5c/html5/thumbnails/16.jpg)
Resources
raywenderlich.com
Stanford iOS Course (2013)
http://rypress.com/tutorials/objective-c