| CSCI 350 Syllabus - Spring 2008 | |||||||||||||||||
|
|||||||||||||||||
Instructor Dr. Bonnie McVey
Office: Cofrin 310 Phone: 920.403.3471 Office Hours: MTTh 2-3, WF 9-10
and by appointmentEmail: bonnie.mcvey@snc.edu
Course Meetings
Lecture: MWF, 11 - 12:10pm, Cofrin 203 Labs: Thursday, 11-1pm, Cofrin 112
Texts
Required (Choose at least one of the following):
Windows Forms in Action, 2nd Edition, Erik Brown, Manning Publications Company, 2006. (great with controls, no graphics or drawing, less high-level applications)
Windows Forms 2.0, Microsoft .net Development Series, Chris Sells and Michael Weinhardt, Addison Wesley, 2006. (has graphics and drawing, high-level applications, but minimal information on controls)
Other Texts:
Programming Microsoft Windows Forms: A Streamlined Approach Using C#, Charles Petzold, Microsoft Press, 2006. (Best if accompanied by Programming Microsoft Windows with C# (2001) since the book published in 2006 does not repeat information in the 2001 book.)
Required Background
You need to have successfully completed CSCI 205 or an equivalent course elsewhere. What this means is that you need to understand classes, encapsulation, inheritance, information hiding, polymorphism, dynamic memory allocation as well as all the basic expressions and statements. Some of you may have some experience with Windows and/or event programming, but none is assumed.
Course Objectives
At the completion of this course, you will be able to write Windows programs using both C# and Windows Forms in a .NET Framework and ActionScript in the Flash environment. You will be able to write programs that are event driven rather than programmer-driven. Whatever the language, the principles involved are the same.As a side benefit, you will gain lots of experience in good programming practices, software engineering principles, object design and manipulation, and developing user-friendly and effective interfaces. I look forward to trying some of the creative applications that you will produce this semester. As always in programming, practice and attention to detail are keys to success. Enjoy!
Topics (approximate)
Message queues, menus, common and classic controls, system metrics, modal and modeless dialog windows, frame windows, parent and child windows, GDI, communication among windows, SDI applications, MDI applications, various views, serialization, use of timers and callbacks, ...
Grading
NOTE: If the average of your three exam scores is below 65, then your Labs, Homework, Programs, and Project/Presentation cannot be used to increase your course grade.
Midterm Exams (2) 40% of course grade Comprehensive Final Exam 20% of course grade Labs, Homework, Programs, Project/Presentation 40% of course grade Cutoffs: 93 - A, 90 - AB, 83 - B, 80 - BC, 70 - C, 68 - CD, 60 - D
Course Documents
Check website http://home.snc.edu/bonnie.mcvey/csci350/ often for course news, assignments, hints, corrections, solutions, etc
Policies
Important Dates
January 24 Drop/Add Deadline (Thursday) February 28 Exam 1 (approx. date) February 29 Mid-Term Reports (Friday) April 3 Exam 2 (approx. date) March 15 - 24 Spring/Easter Break - No Class April 1 Advisement Day (Tuesday) April 3 Last Day for Course Withdrawal April 9 Advisement Day - No Class (Wednesday) May 2 Last Day of Class May 9 Final Exam, 8-10am or 11-1pm or something in between! (Friday)
Other
In keeping with the St. Norbert College mission to help students develop their full potential, and in compliance with the Americans with Disabilities Act, the College provides supportive services to students with disabilities. For enquiries and further details, please visit the Academic Support Services Office located on the lower level of the John Minahan Science Building (JMS) or contact Karen Goode-Bartholomew, Coordinator of Services to Students with Disabilities (Phone: 403-1326), or visit the website www.snc.edu/academicsupport/disabilities.html.
Read books, ask questions in class and in office hours, work hard. Programming is both fun and frustrating and there is no substitute for practice. You are already aware that it can take hours to find an error or it can take minutes, so start assignments early. Please know that I want you to do well, but the choice to succeed is made by you.
As many of you know, I came to SNC in Fall 2000 as a theorist. My graduate courses other than requirements were based in theory. The courses that I taught at BSU were introductory or theoretical. I taught CSCI 350 for the first time in Spring 2001 and have thoroughly enjoyed studying and learning this material. Obviously, platforms and languages have changed since my initial experience, and I have adapted the course material with each new semester. For the first time, I will not be using C++ and the MFC (Microsoft Foundation Classes) as the primary means for implementing event programs. Bear with me as we learn to exploit the advantages of C# and the .NET framework as well as ActionScript 3.0 and Flash. I think it will be a good semester, full of exploration and learning, and I look forward to sharing this opportunity with you. Enjoy!