You are on page 1of 5

CSCI 4702 Mobile Programming Hawaii Pacific University Dr.

Samuel Joseph, Spring 2011 CSCI 4702 meets online

Instructor Dr. Samuel Joseph Associate Professor of Computer Science Skype Username tansaku. Office hours By arrangement Prerequisite CSCI 2911 & 2912

email sjoseph@hpu.edu

Credits, Course Type 3 credits, upper division class

Course Description A course on the programming of applications for mobile computing including devices such as mobile phones, pads and tablets. Students will learn best practices in programming for mobile devices including iPhones, iPads and Android smart phones. At the end of the course students will be proficient in developing mobile applications and using device emulators for coding and testing. This course will at times include joint projects with students in the mobile design course, MULT 4702. Instructors Comments Everyone has their own study style, but I believe there is no substitute for staying ahead in a class. Get the readings done each week. Do all the assignments. If you get stuck on anything email the mailing list asking for help. If the workload is too heavy or circumstances prevent you from submitting work on time, LET THE INSTRUCTOR KNOW IMMEDIATELY. Do your best to stay ahead, and ask for help early if you run into trouble. Class Website: https://sites.google.com/site/csci4702mobileprogramming/ [Under Construction] Check the class website frequently any changes to homework or to the syllabus, as well as clarifications on homework, and other important notices, will be posted there. Required Email Communication All students must be readily reachable through campus email. If campus email is not your regularlyused email address, forward the campus email to your regular address. Ask me if you need to know how to do this. I will try to use your regular email address if I have it, but I may also use the campus email. If the class website isnt working, my primary method of contacting you will be through campus email. Software: Web and email access are critical for the course, and access to Skype for audio and text chat would be extremely helpful, although not a prerequsite. All students are required to have daily access to: Campus Pipeline and campus email Class website

Page 1 of 5

Backups: Make a copy of your work and anything turned in (e.g., on a thumb drive). Never turn in your only copy of something. Save every returned submission until final grades are posted. Otherwise if there is a problem, you may have to redo the work, or you may lose credit. Course Time Requirements: The average student will need to spend 8-12 hours out of class time per week working on this class. The Five Themes of the Core Curriculum (see the Academic Catalog) Communication and epistemology skills are improved by using problem solving skills in the mobile device programming domain.. Required Course Texts There is no textbook for this course. All materials are available on the web: http://developer.apple.com/iphone/ http://developer.android.com/ Lectures and assignments in this course are partly based on two other existing courses. Stanfords CS-193P iPhone Application Development course, and CSUs CIS-493 Android Development. Homework Always check the syllabus and the class website for guidance on the homework and class. Late Homework When assigned, assignments must be done prior to the specified deadline. One grade level will be dropped for each day an assignment is late. Moreover, late assignments may not be graded until later in the semester. Extra Credit. Except in extraordinary and unusual circumstances, I do not accept extra credit submissions of work. Rather than wait until the end of the semester to ask how you can raise your grade, work hard and stay ahead from the beginning of class. Additionally, if you make a strong effort in this class that is visible to me (e.g., by coming to me for help), I may increase your grade. See further notes below about moving grades to the next higher grade.

This syllabus is subject to change. Any changes will be specified on the class website.

Page 2 of 5

Grading Scheme: Grading of the final project and each assignment will be on a 100-point scale: Points 93 100 90 92 87 89 83 - 86 80 82 77 79 Grade A AB+ B BC+ Points 73 - 76 70 72 67 69 60 - 66 Below 60 Grade C CD+ D F

Weight: Project

Notes: 40% A good proportion of your grade will come from your final project you may work in teams of 2. The project will involve developing a mobile application of your choice, and if you are collaborating with MULT 3610 students, collaborating with on the interface design and user-testing. 10% will come from the first project submission (outline design plan and prototype) and 30% from the final project submission and presentation. 40% There are 8 assignments and each will be worth 5 percentage points. 20% Posting appropriately to the mailing list and/or attending online skype/ustream. A grade of up to approximately 1.4% will be awarded each week depending on attendance and level of contribution. 100%

. Assignments Participation

Total

Students who demonstrate to me that they are making a good effort, and whose grade is on the border with the next higher grade, may in some cases have their grade moved up to a higher grade. A good effort includes good participation, handing in assignments on time reading prior to class, and asking questions in class that reflect that you have done the reading, visiting me to get help as early as possible after you need help, working at least 8-12 hours every week outside of class on this course, and so forth.

Page 3 of 5

Schedule SEE CLASS WEBSITE FOR DETAILS AND UPDATES TO HOMEWORK ASSIGNMENTS [dates based on Fall 2010]
Week Date Main Topics Introduction to Online Class, Android, iPhone Skype Google Groups Google Docs Android iPhone Introduction to ObjectiveC and Android Object Oriented Programming Review Objective C language Common Foundation classes Android App LifeCycle Android MVC Design Android Layout Builder Android Views and UI Events More Objective C Creating Custom Classes Object Lifecycle Autorelease Objective-C Properties Android Views Android Drawing Android Text & Images iPhone/iPad Application LifeCycle iOS MVC design Interface Builder and Nib Files Controls and Target Action iOS Views iOS Drawing iOS Text & Images Application Design Designing Android Applications Android Menus & TabLayouts Designing iOS Applications More iOS MVC iOS View Controllers High level Interface Layout Android Layouts Droid Draw Android Intents iOS Navigation Controllers iOS Tab Bar Controllers More Interface Layouts Android Debugger Android ScrollViews Android ListViews iOS ScrollViews iOS TableViews Assignment

6-10 Sep

Assignment 1: Install IDEs & Android HelloHPU

13-17 Sep

Assignment 2: iPhone HelloHPU

20-24 Sep

Assignment 3: Project ideas

27 Sep-1 Oct

Assignment 4: Calculator

4-7 Oct

Assignment 5: Calculator II

11-15 Oct

Assignment 6: Calculator III

18-22 Oct

Assignment 7: Calculator IV

Page 4 of 5

25-29 Oct

Data Access Android & iOS Local Data Storage Android & iOS Internet Access Memory Usage & Concurrency Android Leaks Android Garbage Collection Android Threads iOS Leaks and Autorelease iOS Operations & Queues Location Services & Web Views Loading & Navigating WebViews Map Overlays Geocoding Annotations Reverse Geocoding Contacts (Address Book) Android Content Providers Android Intent Filter Recap iOS CoreFoundation Merging External Contacts Hardware Android Media Store & Camera iOS Image Picker & Camera iOS Accelerometer iOS Battery Life & Power Management Misc Unit Testing Localization Work on project. Present projects!

Assignment 8: Places

1-5 Nov

Assignment 9: Places II

8-12 Nov

10

15-19 Nov

Assignment 10: Places III

11

22-26 Nov

12 13 14

29 Nov 3 Dec 6-10 Dec 13-17 Dec

TRY TO STAY AHEAD IN THE COURSE

Page 5 of 5

You might also like