Spring Term 2009 9:50 MF Mr. Gregg
CMSC 150 is an introductory course in computer programming with instruction in the Java language. The first objective of this course is to give you an introduction to programming in Java. The second objective is to begin the study of the discipline of computer science.
How this Course is Structured
We will meet twice a week for lectures and once a week for a lab session. Assignments will be given both after lectures and in the lab sessions.
We will have two midterm exams and a final exam. Midterm exams are tentatively scheduled for Friday, May 1 and Friday, May 22. The final will be on Monday, June 8 at 8:30 AM.
Although CMSC 150 is an introductory course, many students find it to be a challenging course. This course is challenging for a couple of reasons. The first is that most students arrive at this course with absolutely no prior experience with computer programming. That is fine, because the course is organized around the assumption that students coming into CMSC 150 have no prior exposure to programming. However, this course does move along at a pretty good pace, so you will have to start applying yourself diligently from the very beginning. Another challenge comes from the fact that what we are learning is highly cumulative. Each new topic in the course builds on what comes before it, so it is especially important that you keep up with what we are doing.
My biggest single expectation is that you maintain good work habits and manage your time well. Here are some specific things I recommend you do throughout the term.
Assignments and exams have the following weights:
Labs and Homework - 60% Midterm exams - 10% each Final exam - 20%
Late policy for assignments is that I will accept assignments late with a penalty of 5% per day late. Most assignments will require that you turn in your work at a specific time. If you turn your work in on the same day but after the time it was due I will still count off 5%. If you need an extension, please contact me before the assignment is due.
Our text is Introduction to Java Programming, Seventh Edition (Comprehensive Version) by Y. Daniel Liang.
| Week | Topic |
|---|---|
| 1 | Intro to Java |
| 1-2 | Decision structures |
| 2-3 | Loops |
| 3-5 | Methods |
| 6-7 | Arrays |
| 8-9 | Classes |
| 10 | Files |
Office hours this term are 9-11 on Wednesdays and Thursdays. In addition to those times, I will be available in my office both before and after class time on Mondays and Fridays and will also be available during the Tuesday lab times from 9-11 and 1-3. My office is Briggs 413. My extension is 6736 and my email address is greggj@lawrence.edu.
The course web site is at http://www.lawrence.edu/fast/greggj/cmsc150.html. The web site will feature lecture notes and other supplementary materials.
We will be using the Java SE edition of the NetBeans development environment in this course. The version of NetBeans installed in the lab is 6.1, which is also the version that I will be using for demonstrations in class. If you would like to install NetBeans on your own computer, the latest version of the NetBeans software, 6.5, is available as a free download at http://java.sun.com/javase/downloads/netbeans.html. Versions of NetBeans are available for Windows, Mac, and Linux.