26
Mobile Applica,on Development Spring 2012- COP 4655 U1 M/W 6:25 – 7:40pm – ECS 138 Steve Luis lecture1

Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Applica,on  Development    

Spring 2012- COP 4655 U1 M/W 6:25 – 7:40pm – ECS 138

Steve Luis  

lecture1  

Page 2: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Agenda  

•  Syllabus  Review  •  Mobile  Applica,on  Development  Intro  •  Development  Pla>orm  

Spring 2012 - COP 4655  

2  

Page 3: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Applica,on  Development  

•  Design  and  develop  so@ware  for  mobile  devices  like  a  phone  or  tablet.  

•  Understand  how  mobile  apps  are  different  from  conven,onal  desktop  apps.  

•  Learn  how  to  use  the  language,  OS,  IDE  and  frameworks  to  effec,vely  create  mobile  applica,ons.  

•  Realize  the  full  poten,al  of  your  app  by  u,lizing  the  capabili,es  of  mobile  device.    

3  Spring 2012 - COP 4655  

Page 4: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

4  

hOp://www.livbit.com/ar,cle/2009/08/18/evolu,on-­‐of-­‐mobile-­‐phones-­‐in-­‐matryoshka-­‐style/  

Spring 2012 - COP 4655  

Page 5: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

•  Cellular  Phones    – 1980s  –  early  1990s  – 1G  Analog  – Dial  tone  – alphanumeric  LED  display  – Device  specific  OS  – Manufacturer  so@ware  only  

 

5  Spring 2012 - COP 4655  

Page 6: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

•  Feature  Phones  – 1990s  to  mid  2000s  – 2G  Digital  –  full  featured  telephony  – addressable  screens  – Embedded  reusable  OS  – simple  applica,ons  – calendar/SMS/games  – Limited  3rd  party  apps    

6  Spring 2012 - COP 4655  

Page 7: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

•  Smart  Phone    – mid  2000s  to  ???  – 3G  Mul,-­‐Network  –  Integrated  telephony  – high-­‐res  screens  – Sensing  devices  –  full  OS/so@ware  stack  – 3rd  party  -­‐  media  rich  applica,ons  

 7  Spring 2012 - COP 4655

 

Page 8: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

•  Portable  Computers  •  Laptops  •  Netbooks  

8  Spring 2012 - COP 4655  

Page 9: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

•  PDAs  

9  Spring 2012 - COP 4655  

Page 10: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Devices:  A  brief  history  

•  Tablet  

10  Spring 2012 - COP 4655  

Page 11: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

What  makes  mobile    development  different?  

11  Spring 2012 - COP 4655  

Page 12: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

What  makes  mobile    development  different?  

•  Desktop  =  large  screen,  mouse,  sta,onary    •  Laptop  =  smaller  desktop  UX,  keyboard  •  Mobile  =    

– Hand-­‐held,  small,  hi  res,  screen  – Mul,-­‐touch:  Gesture  – Anywhere:  not  just  sieng    – Aware:  sensors  – Always  on  and  connected  

   

12  Spring 2012 - COP 4655  

Page 13: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Special  Development  Considera,ons  

•  Limited  opera,ng  memory  •  Small  screen  •  Real-­‐,me  applica,on  constraints  •  Applica,on  response  ,me  •  Suspend/Resume  •  System  and  applica,on  reliability  

13  Spring 2012 - COP 4655  

Page 14: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Mobile  Development  Pla>orm  

•  Mac  OS  10.6.7  •  Xcode  4.1  •  Apple  iOS  4.3  SDK  •  Objec,ve  –  C  2.0    

14  Spring 2012 - COP 4655  

Page 15: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

iPhone          &            iPad  

15  Spring 2012 - COP 4655  

Page 16: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Fall 2011 - COP 4655  

16  

Page 17: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Fall 2011 - COP 4655  

17  

Page 18: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

18  Spring 2012 - COP 4655  

Page 19: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Apple  iOS  

•  Unix  based  Mach  Kernel  and  BSD  interfaces    •  Same  as  Mac  OS  X  with  some  varia,ons    •  Virtual  Memory  wo/  paging    •  Background  applica,ons  

19  Spring 2012 - COP 4655  

Page 20: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

iOS  App  Run,me  Environment  •  Designed  for  fast  and  secure  execu,on    •  Mul,-­‐tasking  environment    •  Save  state    •  Constrained  memory  à  Purge  app    •  Restore  state  

20  Spring 2012 - COP 4655  

Page 21: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

iOS  SDK  4.3  

21  

Cocoa  Touch  Mul,-­‐touch  events  and  controls  Accelerometer  support  View  hierarchy  Camera  support    Media  OpenAL  audio  mixing  and  recording  Video  playback  Image  file  formats  Quartz  Core  Anima,on  OpenGL  ES  

Core  Services  Networking  Embedded  SQLite  database  Core  Loca,on  Threads  CoreMo,on    Core  OS  TCP/IP  Sockets  Power  management  File  system  Security  

Spring 2012 - COP 4655  

Page 22: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

22  Spring 2012 - COP 4655  

Page 23: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

UIKit  

23  Spring 2012 - COP 4655  

Page 24: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Required  Apple  Developer  Registra,on  

•  So@ware,  Documenta,on,  Tutorials,  Videos,  Sample  Code,  Support  Forum    

•  Free  Apple  Developer  Account  at:  developer.apple.com  

 •  Use  your  FIU  student  email  account  as  ID  

•  Provide  your  ID  to  me  next  class    

24  Spring 2012 - COP 4655  

Page 25: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Class  textbook:  Kochan  

25  

Reading  Assignment:    Read  Chapter  1-­‐3    Familiarize  yourself  with  terms  in  Glossary    Complete  by  1/18  

Spring 2012 - COP 4655  

Page 26: Mobile’Applicaon’Development’ lecture1’users.cis.fiu.edu › ~luiss › class › 2012 › spring › cop4655 › L1-Course … · Mobile’Applicaon’Development’ Spring

Class  Textbook:  Conway  &  Hillegass  

26  

Reading  Assignment:    Read  Chapter  1    Complete  by  1/18  

Spring 2012 - COP 4655