ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf ·...
Transcript of ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf ·...
![Page 1: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/1.jpg)
ST 49995/59995 Application Development for Mobile Device
(iPhone, iTouch, IPad)
![Page 2: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/2.jpg)
Our goal
• To build iPhone & iPod touch applications using Cocoa Touch
![Page 3: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/3.jpg)
Development Environment
![Page 4: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/4.jpg)
Quick Survey
• C Programming • Object Oriented Programming
– C++, Java, Objective-C? • Do you own a Mac machine? • Have you done the iPhone SDK and done
iPhone development? • Have submitted apps to the App Store?
![Page 5: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/5.jpg)
Hardware and Software Requirement
• Required Hardware & Software: – Intel-based Macintosh, running Mac OS X 10.5
Leopard – iPhone SDK
• iPhone or iPod touch is not required – Assignments may be completed using the iPhone
Simulator • MacLab (365)
– Four Macs with iPhone SDK installed
![Page 6: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/6.jpg)
IPhone SDK • Iphone developer university program
– The iOS Developer University Program is a free program designed for higher education institutions looking to introduce iOS development into their curriculum.
• Steps to get free SDK – All Program participants must first register as Apple Developers. – Students can then be invited by their Course Instructor to join a
team. – During the invitation acceptance process, students are required
to review and agree to the iOS Developer Program Student Agreement prior to becoming an active member of the team.
![Page 7: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/7.jpg)
Texbooks • Required Textbooks: N/A • Recommended Textbook:
– Learn Objective-C on the Mac – Beginning iPhone 3 Development (Exploring the
iPhone SDK) – The iPhone Developer's Cookbook: Building
Applications with the iPhone SDK • 6 Free Apple E-book (iBOOKStorge)
– The Objective-C Programming Language – iOS Application Programming – …
• Apple Development Center
![Page 8: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/8.jpg)
Cocoa Touch & iPhone SDK
• Based on Cocoa – Mature, polished, highly consistent APIs
• Provides a very rich starting point for exploring app design
• Shows “real-world” implementations of OO design patterns
• Designs learned on iPhone translate directly to Mac OS X
![Page 9: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/9.jpg)
Objective-C
• ObjC is a language focused on simplicity and the elegance of OO design – Based on ANSI C – Brings many object oriented principles, but
with a minimal amount of syntax (SmallTalk) • A data point to compare with designs of C,
C++ and Java
![Page 10: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/10.jpg)
Homeworks and Projects
• 4-5 homeworks • One presentation (during the last month in
the class) – Study an open-source Iphone Apps
• One course project – Topic Selected in early March – Demo in the last day of class
• Team-up for Presentation and Course Project (2 students)
![Page 11: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/11.jpg)
Final Projects • 2 months to work on them • By yourself or with a partner • Categories to consider:
– Student life apps – Educational tools – Games – Social / location-aware software
• Find a project that you or your friends would actually like to use!
• Post it on the app store (internally)
![Page 12: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/12.jpg)
Main Topics • Objective C
– Inheritance, Memory Management, Properties, Categories, Protocols
• Foundation Kit • SDK (Xcode/Interface Builder) • Application design patterns • View controllers • Presenting data
– Table views • Loading & saving data
– Property lists, Core Data, web services • Text input • Address Book and other system integration • Core Location/Map…
![Page 13: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/13.jpg)
Lab and Office Hour
• We will try to run several labs • Office hours: Monday/Wednesday 4:30pm
-5:30pm • Class Schedule
![Page 14: ST 49995/59995 Application Development for Mobile Devicejin/MobileApps10/01_introduction.pdf · Cocoa Touch & iPhone SDK • Based on Cocoa – Mature, polished, highly consistent](https://reader033.fdocuments.net/reader033/viewer/2022052804/604d4540f6b20360e0514bb7/html5/thumbnails/14.jpg)
Questions