• No results found

Mobile Application Development ITP 342 (3 Units)

N/A
N/A
Protected

Academic year: 2021

Share "Mobile Application Development ITP 342 (3 Units)"

Copied!
7
0
0

Loading.... (view fulltext now)

Full text

(1)

Mobile  Application  

Development  

ITP  342  (3  Units)  

 

Fall  2014  

 

Objective  

This  course  teaches  how  to  develop  applications  for  mobile  devices  such  as  iPhones  and  iPads  (iOS).   We  will  go  through  the  process  of  building  a  mobile  application  from  start  to  finish  using  the  iOS  SDK   (Software   Development   Kit).   In   lecture   sessions,   you   will   learn   the   basics   of   the   Objective-­‐C   programming   language,   how   to   design   mobile   interfaces,   how   to   use   the   libraries   to   build   applications  that  have  the  proper  look  and  feel,  how  to  use  table  views,  how  to  design  and  handle   user   input,   and   other   aspects   as   time   permits.   During   the   lab   sessions,   students   will   create   applications  using  the  Xcode  IDE  (Integrated  Development  Environment).  

Concepts  

Mobile  app  development,  object-­‐oriented  programming,  data  persistence  

Prerequisites  

• ITP  365  or  CSCI  104  

• May  be  waived  for  other  programming  classes  such  as  EE  355  

Instructor  

Trina  Gregory  

Contacting  the  Instructor  

[email protected]  

Office  Hours  

Listed  on  Blackboard  under  Contacts  

Lab  Assistants  

Listed  on  Blackboard  under  Contacts  

Lecture/Lab  

2  hours,  twice  a  week,  for  a  total  of  4  hours  

Required  Textbooks  

Beginning   iOS   7   Development:   Exploring   the   SDK   by   Jack   Nutting,   Fredrik   Olsson,   David   Mark,   Jeff   LaMarche;   Apress;   paperback:   978-­‐1-­‐4302-­‐6022-­‐6;   digital   available:   Kindle   and   eBook;   on-­‐line   version   available   for   free   on   Safari   Books   Online   using   USC   username   and   password   at:  

http://proquest.safaribooksonline.com.libproxy.usc.edu/book/programming/mobile/9781430260226  

Optional  Textbooks  

iOS  Programming:  The  Big  Nerd  Ranch  Guide  by  Christian  Keur,  Aaron  Hillegass,  Joe  Conway;  Big  Nerd   Ranch   Guides;   paperback:   978-­‐0-­‐321-­‐94205-­‐0;   digital:   978-­‐0-­‐13-­‐349187-­‐6;   on-­‐line  version  available  for  free  on  Safari  Books  Online  using  USC  username  and  password  at:  

http://proquest.safaribooksonline.com.libproxy.usc.edu/book/programming/mobile/9780133491876    

Website  

(2)

Grading  

The  following  percentage  breakdown  will  be  used  in  determining  the  grade  for  the  course.  

Assignments      50%   Midterm      25%   Final  Project      25%   Total   100%      

Grading  Scale  

The  following  shows  the  grading  scale  to  be  used  to  determine  the  letter  grade.  

93%  and  above      A  

90%  -­‐  92%      A-­‐   87%  -­‐  89%      B+   83%  -­‐  86%      B   80%  -­‐  82%      B-­‐   77%  -­‐  79%      C+   73%  -­‐  76%      C   70%  -­‐  72%      C-­‐   65%  -­‐  69%      D   64%  and  below      F  

If  you  are  taking  the  class  with  a  grade  of  P/NP,  you  must  earn  a  grade  of  70%  or  higher  in  order  to   receive  a  P.  

 

Policies  

No   make-­‐up   exams   (except   for   documented   medical   or   family   emergencies)   will   be   offered.   The   University  determines  the  Final  Exam  schedule.  No  changes  can  be  made  to  it.  The  final  project  is  due   during  the  final  exam  time  for  this  class,  and  attendance  is  required.  

 

The   labs   will   be   posted   on   Blackboard   under   the   “Assignments”   section.   Each   lab   will   include   instructions,  a  due  date,  and  a  link  for  electronic  submission.  Labs  must  be  submitted  using  this  link.   Do  not  email  them  to  the  lecturer  or  lab  assistant.  Always  keep  a  backup  copy  of  them.  

 

It  is  your  responsibility  to  submit  your  assignments  on  or  before  the  due  date.  Assignments  turned  in   one  day  late  will  have  10%  of  the  total  points  deducted  from  the  graded  score.  Assignments  turned  in   two  days  late  will  have  20%  of  the  total  points  deducted  from  the  graded  score.  Assignments  turned   in  three  days  late  will  have  50%  of  the  total  points  deducted  from  the  graded  score.  After  three  days,   submissions  will  not  be  accepted  and  you  will  receive  a  0.  

 

ITP  will  have  open  lab  hours  starting  the  second  week  of  the  semester.  They  give  you  an  opportunity   to  work  on  assignments  or  projects.  An  ITP  342  lab  assistant  may  not  be  present.  

(3)

 

Each  time  the  class  meets,  a  roster  will  be  passed  around  the  room.  Please  initial  by  your  name  for   the  appropriate  week.  A  tool  such  as  Top  Hat  Monocle  may  be  used  in  place  of  a  paper  roster.  Do  not   sign  in  for  another  student.  Doing  so  is  an  academic  integrity  violation.  

 

Incomplete  and  Missing  Grades  

The   University   Grading   Handbook   covers   all   grading   concerns   and   can   be   found   at:  

http://www.usc.edu/dept/ARR/grades/gradinghandbook/index.html.    

A  grade  of  Missing  Grade  (MG)  “should  only  be  assigned  in  unique  or  unusual  situations…  for  those   cases   in   which   a   student   does   not   complete   work   for   the   course   before   the   semester   ends.   All   missing   grades   must   be   resolved   by   the   instructor   through   the   Correction   of   Grade   Process.   One   calendar   year   is   allowed   to   resolve   a   MG.   If   an   MG   is   not   resolved   [within]   one   year   the   grade   is   changed  to  [Unofficial  Withdrawal]  UW  and  will  be  calculated  into  the  grade  point  average  a  zero   grade  points.”  

 

A  grade  of  Incomplete  (IN)  “is  assigned  when  work  is  not  completed  because  of  documented  illness   or  other  ‘emergency’  occurring  after  the  twelfth  week  of  the  semester  (or  12th  week  equivalency  for   any  course  scheduled  for  less  than  15  weeks).”  

   

Academic  Integrity  

USC   seeks   to   maintain   an   optimal   learning   environment.   General   principles   of   academic   honesty   include  the  concept  of  respect  for  the  intellectual  property  of  others,  the  expectation  that  individual   work  will  be  submitted  unless  otherwise  allowed  by  an  instructor,  and  the  obligations  both  to  protect   one’s  own  academic  work  from  misuse  by  others  as  well  as  to  avoid  using  another’s  work  as  one’s   own.   All   students   are   expected   to   understand   and   abide   by   these   principles.   SCampus   is   USC’s   Student  Guide  to  Policies  and  Conduct  Code  and  can  be  found  at:  http://scampus.usc.edu.  Section  11   contains  the  Behavior  Violating  University  Standards  and  Appropriate  Sanctions  and  can  be  found  at:  

http://scampus.usc.edu/1100-­‐behavior-­‐violating-­‐university-­‐standards-­‐and-­‐appropriate-­‐sanctions/.   Students  will  be  referred  to  the  Office  of  Student  Judicial  Affairs  and  Community  Standards  (SJACS)   for  further  review,  should  there  be  any  suspicion  of  academic  dishonesty.  The  Review  process  can  be   found  at:  http://www.usc.edu/student-­‐affairs/SJACS/.  An  academic  integrity  tutorial  can  be  found  at:  

http://www.usc.edu/libraries/about/reference/tutorials/academic_integrity/index.php.    

Examples  of  behavior  violating  University  standards:  

• The   submission   of   material   authored   by   another   person   but   represented   as   the   student’s   own   work,  whether  that  material  is  paraphrased  or  copied  in  verbatim  or  near-­‐verbatim  form.  

• Acquisition   of   term   papers   or   other   assignments   from   any   source   and   the   subsequent   presentation   of   those   materials   as   the   student’s   own   work,   or   providing   term   papers   or   assignments  that  another  student  submits  as  his/her  own  work.  

• Obtaining  for  oneself  or  providing  for  another  person  a  solution  to  homework,  a  project  or  other   assignments,  or  a  copy  of  an  exam  or  exam  key  without  the  knowledge  and  expressed  consent  of  

(4)

the  instructor.  

• Unauthorized  collaboration  on  a  project,  homework  or  other  assignment.  Collaboration  between   students  will  be  considered  unauthorized  unless  expressly  part  of  the  assignment  in  question  or   expressly  permitted  by  the  instructor.  

• Fabrication:  Submitting  material  for  lab  assignments,  class  projects  or  other  assignments  which  is   wholly   or   partially   falsified,   invented   or   otherwise   does   not   represent   work   accomplished   or   undertaken  by  the  student.  

• Forgery,  unauthorized  alteration  or  unauthorized  use  of  any  university  document,  records,  keys   or  instruments  of  identification,  or  of  documents  or  records  related  to  functions  of  the  university.    

If   the   instructor,   a   grader,   or   a   lab   assistant   suspects   you   of   academic   dishonesty,   it   has   to   be   reported   to   SJACS.   Do   not   share   lab   assignments   with   another   student.     Do   not   submit   another   student’s  work  as  your  own.  Do  not  look  at  other  students’  papers  during  exams.    Do  not  leave  the   room  during  an  exam.  Do  not  cheat!  As  Trojans,  we  are  faithful,  scholarly,  skillful,  courageous,  and   ambitious.  

 

Students  with  Disabilities  

Any  student  requesting  academic  accommodations  based  on  a  disability  is  required  to  register  with   Disability   Services   and   Programs   (DSP)   each   semester.   A   letter   of   verification   for   approved   accommodations   can   be   obtained   from   DSP.   Please   be   sure   the   letter   is   delivered   to   your   course   instructor  (or  TA)  as  early  in  the  semester  as  possible.  If  you  need  accommodations  for  an  exam,  the   form  needs  to  be  given  to  the  instructor  at  least  two  weeks  before  the  exam.  

 

DSP  is  located  in  STU  301  and  is  open  from  8:30am  to  5:00pm,  Monday  through  Friday.  Contact  info:     213-­‐740-­‐0776   (Phone),   213-­‐740-­‐6948   (TDD   only),   213-­‐740-­‐8216   (FAX),   [email protected],  

http://sait.usc.edu/academicsupport/centerprograms/dsp/home_index.html.    

Emergency  Preparedness/Course  Continuity  in  a  Crisis  

In  case  of  emergency,  when  travel  to  campus  is  difficult,  if  not  impossible,  USC  executive  leadership   will  announce  a  digital  way  for  instructors  to  teach  students  in  their  residence  halls  or  homes  using  a   combination   of   the   Blackboard   LMS   (Learning   Management   System),   teleconferencing,   and   other   technologies.   Instructors   should   be   prepared   to   assign   students   a   “Plan   B”   project   that   can   be   completed  ‘at  a  distance.’  Additional  information  about  Campus  Safety  and  Emergency  Preparedness   can  be  found  at:  http://preparedness.usc.edu.    

(5)

Mobile  Application  Development  

ITP  342  (3  Units)  

 

Course  Outline  

   

Week  1  –  iOS  &  Objective-­‐C  Fundamentals  

-­‐ Course  overview  

-­‐ Intro  to  Xcode  (IDE  for  iOS  development)   -­‐ Testing  apps  in  the  iOS  Simulator  

-­‐ Variables  and  data  types   -­‐ Classes  and  method  messaging  

Assignment/Lab  

First  iOS  app  –  “Hello  World”    

Week  2  –  User  Interaction  

-­‐ Connections  -­‐  IBOutlets  and  IBActions   -­‐ Storyboards  and  Interface  Builder   -­‐ Icon  images  

Assignment/Lab  

Lab  1  –  Pirate  vs  Ninja  

 

Week  3  –  Properties  and  User  Interface  

-­‐ Basic  user  interface  components   -­‐ Properties  

-­‐ Primitives  

Assignment/Lab  

Lab  2  –  MadLibs    

Week  4  –  MVC  (Model  View  Controller)  

-­‐ Model   -­‐ Delegates  

Assignment/Lab  

Lab  2  –  MadLibs    

Week  5  –  Collections  and  Gestures  

-­‐ Collections  classes  –  NSArray,  NSDictionary   -­‐ Gestures  –  Tap,  Swipe  

Assignment/Lab  

Lab  3  –  iFortunes    

(6)

Week  6  –  Accelerometer  and  Animation   -­‐ Motion  Events,   -­‐ Accelerometer,  Gyroscope   -­‐ Animation   Assignment/Lab   Lab  3  –  iFortunes    

Week  7  –  Text  Input  and  Memory  Management  

-­‐ Delegation   -­‐ Segues   -­‐ Code  Blocks  

-­‐ Memory  Management  –  MRR  &  ARC  

Assignment/Lab  

Lab  4  –  add  text  input  &  table  view    

Week  8  –  Tables  and  Tab  Bars  

-­‐ Table  Views   -­‐ Tab  Bars   -­‐ Singletons  

Assignment/Lab  

Lab  4  –  add  tab  bar  &  singleton    

Week  9  –  Midterm  

-­‐ More  user  interface  components   -­‐ Midterm  review  

-­‐ Midterm    

Week  10  –  Data  Persistence  

-­‐ User  defaults   -­‐ File  persistence  

Assignment/Lab  

Lab  5  –  add  data  persistence    

Week  11  –  Audio  and  Notifications  

-­‐ Audio  –  play  sounds  

-­‐ Vibration  –  force  device  to  vibrate   -­‐ Notifications  

Assignment/Lab  

Lab  5  –  add  audio    

Week  12  –  iPad  

-­‐ Master-­‐detail  app   -­‐ Split  view  and  popup   -­‐ Web  View  

(7)

-­‐ Activity  Indicator  

Assignment/Lab  

Lab  6  –  Websites    

Week  13  –  Core  Location  

-­‐ Core  Location   -­‐ Location  Manager   -­‐ Map  Kit   Assignment/Lab   App  Proposal    

Week  14  –  Camera  and  Photo  Library  

-­‐ Accessing  the  camera   -­‐ Photo  library  

-­‐ Pickers  

Assignment/Lab  

Final  Project    

Week  15  –  Other  Topics  

-­‐ Auto  Layout  and  UIKit  

-­‐ Internationalization  and  Localization   -­‐ APIs  and  REST  

-­‐ Deployment  

Assignment/Lab  

Final  Project    

Final  Project  

-­‐ Final  project  app  

-­‐ Each  student  will  give  a  demonstration  of  their  “Final  Project”  app  

Date,  Time,  and  Place  

Friday,  December  12,  2014,  2  –  4  pm,  KAP  160    

   

This  schedule  is  subject  to  change.  

References

Related documents

For the 2013-14 Academic Year, Blue Ridge Community College’s Small Business Center (SBC) ranked second in the state for entrepreneur events and fifth in the state for overall SBC

Even farther from Jungian theory regarding the mandala, today's self- healing books, such as Susanne Fincher's self-help mandala book not only suggest that people create mándalas

Nos referimos a: la mística capuchina Maria Àngela Astorc (Barcelona, 1592-Murcia, 1665), autora del Directorio y práctica espiritual para la crianza y educación de las novicias,

Reading: Instructor Notes Lab 3: BitTorrent Lab Case 2: BitTorrent Case Week 6 – Executable File Analysis.. Week 13 – Court

databases and file collections) in an architecture that requires the mapping of data from one or more operational data sources to a target database management system (DBMS, e.g.,

[r]

[r]

The Effect of Learning and Creativity Models on the Economic Learning Outcomes of Grade XI Berastagi High School Students. Wisnu