Syllabus
This project-based course will teach the basics of the C# language and the Microsoft Visual Studio 2005 development environment. The syllabus is subject to change, but likely topics include:
Visual Studio
- Windows Forms Designer
- Compiling class libraries
- Using the debugger
C#
- Console applications
- Windows Forms applications
- Custom controls
- Events/delegates
- File I/O
- Threading
- Webservices
- Sockets
- 2D graphics using GDI+
Time permitting, we may also explore features of the upcoming C# 3.0 release, including:
- LINQ (Language Integrated Query)
- Lambda expressions
- Anonymous types
- Windows Presentation Foundation (codename Avalon)
as well as basic features of some other .NET languages:
- VB.NET
- IronPython
Here's a list of last year's projects.
Grading
The programming projects will constitute the entire course grade. There will be between 6 and 8 projects. Deadlines for most projects will be about two weeks from the date it is posted; some will be slightly shorter and some slightly longer. The point value for each assignment will reflect the length and difficulty. Extra credit opportunities will also be available for most assignments.
Final Project
The last project will be more open-ended than the others and will allow the student to develop a tool, game, or other system incorporating the skills developed over the semester. Details for this project will follow as the semester progresses.
An additional goal for the final project is to have some of the top projects from the class entered into the Xtreme .NET Programming Contest at the end of the semester. Info from last year's contest can be found on the website; details for this year's contest will be posted when they become available.