B490: Mobile Computing
Instructor: Kay Connelly
LH 301E
Office Hours:
Lecture: Tue, Thu 9:05-9:55 am, LH 115 Lab: Friday 11:00 am-1:00 pm, LH 115
Credits: 3 credits Web: https://oncourse.iu.edu
Prerequisites: Experience with object oriented programming
Overview
This is an advanced undergraduate programming course that teaches students the skills necessary to develop applications for mobile computing devices (e.g. PDAs). Students will check out a Pocket PC for the semester, and will work to develop Pocket PC applications using Microsoft Visual Studio .NET, the .NET Compact Framework and C#. The course will start with a review of object oriented programming and an introduction to .NET CF and C#. Topics include system I/O, graphics, GUIs, networking, Web Services, SQL CE, threads and application deployment as relates to handheld devices.
There are two 50-minute lectures every week and one 2-hour lab meeting. The class is organized around a sequence of lab assignments.
Grading
Grades are assigned on a straight 90%, 80%, etcÉ scale. Grades are weighted as follows:
Laboratory
Lab will begin with an overview of the topic and lab assignment. There are 7 programming lab assignments for the semester, each worth 10% of your final grade. Unless otherwise directed, you must perform the lab assignment by yourself. It is not expected that you will be able to complete the assignment during the 2-hour lab. The assignments must be turned in by midnight of their due date. Late labs will be docked 10% per day, up to 2 days late.
Microsoft .NET Compact Framework, Andy Wigley and Stephen Wheelwright. Microsoft Press.
ISBN 0-7356-1725-2
Schedule (tentative)
|
Week |
Date |
Lecture Topic |
Lab Topic |
Readings |
Due |
|
1 |
1/13/09 1/15/09 |
Introduction: OOP review .NET framework |
Intro to PDAs, Visual Studio .NET |
Ch. 1,2 |
|
|
2 |
1/20/09 1/22/09 |
C# part 1 C# part 2 |
Course project overview and brainstorming |
C# handout |
|
|
3 |
1/27/09 1/29/09 |
Forms/GUI Part 1 Forms/GUI Part 2 |
Finalize course project choice. Lab 1 |
Ch. 3 Ch. 4 |
|
|
4 |
2/3/09 2/5/09 |
Debugging System I/O, App Architecture |
Lab 2 |
Ch. 5 Ch. 10 |
Lab 1 |
|
5 |
2/10/09 2/12/09 |
Error handling, Hot Synch Graphics |
Lab 3 |
Ch. 21 |
Lab 2
|
|
6 |
2/17/09 2/19/09 |
ADO.NET ADO.NET |
Course project meetings, work on Lab 3. |
Ch. 14 Ch. 14 |
|
|
7 |
2/24/09 2/26/09 |
SQL CE SQL CE |
Lab 4 |
Ch. 17 Ch. 17 |
Lab 3 |
|
8 |
3/3/09 3/5/09 |
SQL Midterm Review |
Midterm in lab |
Ch. 15
|
Lab 4 |
|
9 |
3/10/09 3/12/09 |
Custom Controls Custom Controls/Lab 5 |
No Lab |
Ch. 18 Ch. 18 |
|
|
|
3/17/09 3/19/09 |
SPRING BREAK |
|
|
|
|
10 |
3/24/09 3/26/09 |
Web Services Web Services |
Lab 6 |
Ch. 9, 16 Ch. 9, 16 |
Lab 5 |
|
11 |
3/31/09 4/2/09 |
NO CLASS NO CLASS |
|
|
|
|
12 |
4/7/09 4/9/09 |
Threads Timers |
Lab 7 |
Ch. 20 Ch. 20 |
Lab 6 |
|
13 |
4/14/09 4/16/09 |
Devices: bar code scanner Blue Tooth |
Course project meetings |
|
|
|
14 |
4/21/09 4/23/09 |
Unmanaged (Native) Code TBD |
Course Project Demonstration |
Ch. 22
|
Lab 7 |
|
15 |
4/28/09 4/30/09 |
TBD Final Review |
No Lab |
|
|
Lab Assignments
This year, the lab assignments will develop educational activities for Just Be, the SchoolÕs K-12 outreach program. Each student will develop their own application(s), incorporating specific concepts from the lectures. The students will decide on their applications in consultation with Professor Connelly. Most lab assignments will build on previous assignments, so it is essential to keep up. Types of functionality expected for each lab assignment (subject to change based on specific projects):
á Lab 1: Interface design, VS project settings
á Lab 2: Write to text file, use dates, change forms, read from text file
á Lab 3: Graphics, write to text file and hot synch
á Lab 4: Include SQL database, listview or search of some type
á Lab 5: Add custom control (custom-dictionary auto-complete, smiley face list?)
á Lab 6: Synch remotely with web services
á Lab 7: Add an external device, such as a bar-code reader, or incorporate blue tooth communication