B490:
Programming on the Go
Instructor: Kay Connelly
LH 301E
Office Hours: by appointment
Lecture:
Tue, Thu 2:30-3:20 pm, LH115 Lab:
Friday 1:00-3:00 pm, LH115
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 9 lab assignments for the
semester. 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.
Each
lab assignment is worth 7% of your final grade.
In addition, there is one in-lab assignment during the last two weeks of
class in order to give you exposure to other mobile platforms. It is worth 7% of your final grade.
Microsoft .NET Compact
Framework,
Andy Wigley and Stephen Wheelwright.
Microsoft Press.
ISBN
0-7356-1725-2
Schedule (tentative)
|
Week |
Date |
Lecture Topic |
LabTopic |
|
Due |
|
1 |
1/10/06 1/12/06 |
Introduction: OOP review .NET framework |
Intro to PDAs, Visual
Studio .NET |
|
|
|
2 |
1/17/06 1/19/06 |
C# part 1 C# part 2 |
Project Settings (Ch. 6),
tutorial |
C# handout |
|
|
3 |
1/24/06 1/26/06 |
Forms/GUI Part 1 Forms/GUI Part 2 |
Lab 1 |
|
|
|
4 |
1/31/06 2/2/06 |
Debugging System I/O, App
Architecture |
Lab 2 |
|
Lab 1 |
|
5 |
2/7/06 2/9/06 |
Error handling, Hot Synch Graphics |
Lab 3 |
|
Lab 2 |
|
6 |
2/14/06 2/16/06 |
ADO.NET Web Services |
Lab 4 |
|
Lab 3 |
|
7 |
2/21/06 2/23/06 |
Setting up a WS Server SQL |
Lab 5 |
|
Lab 4 |
|
8 |
2/28/06 3/2/06 |
SQL SQL CE |
|
|
Lab 5 |
|
9 |
3/7/06 3/10/06 |
Midterm Review NO CLASS |
Midterm |
|
|
|
|
3/14/06 3/16/06 |
SPRING BREAK |
|
|
|
|
10 |
3/21/06 3/23/06 |
Networking Part 1 Networking Part 2 |
Lab 6 |
|
|
|
11 |
3/28/06 3/30/06 |
Custom Controls Security |
Lab 7 |
Ch 12 |
Lab 6 |
|
12 |
4/4/06 4/6/06 |
Devices: bar code reader Devices: camera |
Lab 8 |
|
Lab 7 |
|
13 |
4/11/06 4/13/06 |
Timers and Threads Threads and Delegates |
Lab 9 |
|
Lab 8 |
|
14 |
4/18/06 4/20/06 |
Unmanaged (Native) Code Smart Phones (Liu) |
In-Lab Assignment (Liu) |
|
Lab 9 |
|
15 |
4/25/06 4/27/06 |
Smart Phones (Liu) Review (Liu) |
In-Lab Assignment
continued… (Liu) |
|
|
|
16 |
5/?/06 |
Final Exam |
|
|
|
Lab Assignments
This year, the lab assignments will develop a mobile
Blogging application, where the user can upload diary-like entries from a PDA
to a web page using a variety of input styles (text entry, drawing, choosing
from pre-defined values, pictures, etc…).
Each assignment will build upon the previous one, so it is imperative
that you do not get behind.