st 49995/59995 application development for mobile devicejin/mobileapps10/01_introduction.pdf ·...

14
ST 49995/59995 Application Development for Mobile Device (iPhone, iTouch, IPad)

Upload: others

Post on 14-Oct-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Questions