Student
Web
Pages
aallegre
afrizell
chughes
cvassili
ekalmar
emadsen
emayor
estill
inwanesh
jferraio kchinn
kdelnash
kwadhwan
lbruner
mchavira
nmehta
nzachary pbhattac
pcowan
rfeuer
rnachmia
sabdurre
skhan spolsky
tzier
wsmolen
Example
Applets
from
class
|
Bryn
Mawr College
CS 110: Introduction to Computer Science
Fall 2003
Course Materials
General
Information
Instructor: Deepak
Kumar, 248 Park Hall, 526-7485
E-Mail: dkumar@brynmawr.edu
WWW: http://mainline.brynmawr.edu/~dkumar
Lecture
Hours: Mondays & Wednesdays, 2:30 p.m. to 4:00 p.m.
Lab Hours: Tues-Thu, 2:00p to 4:00p
Room: 338 Park Science Building
Laboratory
Assistants:
- Ioana
Butoi (ibutoi@brynmawr.edu): Mon. 10p - 12m & Thu.
9a - 11a
- Catherine
Chiu (cchiu@brynmawr.edu): Mon. & Tue. 9a
- 11a
- Audrey
Flattes (aflattes@brynmawr.edu):
Fri. 2p - 4p & Sun. 5p - 7p
- Christina
Florio (cflorio@brynmawr.edu):
Sun. 8p - 10p & Thu. 2p - 4p
Laboratories:
- Computer
Science Lab, Room 232 Park Science Building
Texts & Software
- Java
for Students, Third Edition, by Douglas Bell and Mike Parr,
Prentice Hall, 2002.
- Java:
Getting Wired: A Laboratory Manual for Introduction to Computer
Science, by Bryn Mawr College, Fall 2003 Edition.
- CodeWarrior
Pro, Software by Metrowerks. This software is installed in
all the Laboratories mentioned above.
Important
Dates
September
1: First lecture
October 8: Exam 1
November 10: Exam 2
December 8: Last lecture
December 10: Exam 3
Programming
Projects & Homework
- Homework#1: Create
your own home page and post it on the web. Bryn Mawr students
can request a web account by clicking
here. Bryn Mawr's guidelines for personal home pages is posted
here. Haverford students can request one by clicking
here. To get credit, post your home page, send e-mail to dkumar@brynmawr.edu
with your URL latest by Monday, September 8.
- Project#1
(Due on Wednesday, September 17): Click
here for details.
- Project#2
(Due on Wednesday, September 24): Click
here for details.
- Project#3
(Due on Wednesday, October 1): Click
here for details.
- Project#4
(Due on Wednesday, October 29): Click
here for details.
- Project#5
(Due on Monday, November 17): Click
here for details.
- Project#6
(Due on Wednesday, December 10): Click
here for details.
Lectures
- Week
1
Monday, September 1: First class Meeting. What is computer science?
Elements of programming: data, sequencing, selection, repetition, methods.
Object-Oriented Programming: objects, classes, inheritance. Java and the
world wide web.
Read: Chapter 1 from Bell & Parr.
Wednesday, September 3: Introduction to the Web, HTML, and web authoring
programs.
Read: Appendix C from Bell & Parr. A tutorial
on using Dreamweaver is available here.
Homework#1: Create your own home page and post it on the web. Bryn
Mawr students can request a web account by clicking
here. Bryn Mawr's guidelines for personal home pages is posted
here. Haverford students can request one by clicking
here. To get credit, post your home page, send e-mail to dkumar@brynmawr.edu
with your URL latest by Monday, September 8.
- Week
2
Monday, September 8: Introduction
to Java: programming. sequence, selection, repetition,
methods, objects, classes. Code Warrior: First Look.
Example Applet: A
Basic Applet with simple graphics
Read: Chapters 2 & 3 from Bell & Parr. Chapters 1&2
from the Lab
Manual.
Project#1
(Due on Wednesday, September 17): Click
here for details.
Wednesday, September 10: Variables and simple types in Java:
int, float. Doing simple arithmetic, visualizing data in a pie
chart.
Example Applet: A
simple pie chart applet
Read: Chapter 4 from Bell & Parr. Read Chapter
3 from the Lab Manual.
- Week
3
Monday, September 15: No class today, I'm out
of town.
Wednesday, September 17: Applet structure and methods.
Example Aplets: Applet
Life Cycle, Pie
Chart Applet (Version 2 with methods), Drawing
Stick Figures
Read: Chapter 5 from Bell & Parr. Also Chapters
4, 5, 6 & 7 from the Lab Manual.
Project#2
(Due on Wednesday, September 24): Click
here for details.
- Week
4
Monday, September 22: More on methods and parameters. Review of Java
library objects and methods. Event-driven programming.
Example Applets:
Creating
GUI Widgets and using them
Read: Chapter 6 from Bell & Parr. Also Chapter 11, 13 & 14 from
the Lab Manual.
Wednesday, September 24: More event-driven programming, Passive
GUI widget: Labels, creating custom colors.
Example Applets: Drawing
Stick Figures (Viersion 2 with a scrollbar), The
Color Swatch Applet
Read: Chapter 9 and 19 from the Lab Manual.
Project#3
(Due on Wednesday, October 1): Click
here for details.
- Week
5
Monday, September 29: Using random numbers. Selection statements: if-else
and switch.
Example Applet:
Drawing
Circles & Squares
Read: Chapter 7 from Bell & Parr. Also Chapter 8 from the Lab
Manual.
Wednesday, October 1: Repetition: for- and while- loops.
Example
Applet: Drawing
Circles (Using Loops)
Read: Chapter 8 from Bell & parr.
- Week
6
Monday, October 6: Review for exam.
Example Applets: Counting
Days (Version 1)
Counting
Days (Version 2 with GUI+Error Checking)
Also take a look at the description for Project#3. It now contains
the Java program for the applet shown.
Project#4
(Due on Wednesday, October 29): Click
here for details.
Wednesday, October 8: Exam 1 is today.
- Week
7 (October 13, 15)
No Classes this week. Fall Break!!
- Week
8
Monday, October 20: Review of Exam. Containers & Layout.
Text Fields in Java. Using text fields for input.
Read: Chapters 12-18 from the lab manual.
Wednesday, October 22: Containers & Layout Managers. BorderLayout.
Using Panels.
Example Applets: HiLoGame
Read: Chapter 17 from Bell & Parr.
Audrey's
friday hours on 10/23 will be on Saturday 10/24 from 2-4p
- Week
9
Monday, October 27: Wrapper classes: Integer and Float. Example of
using wrapper classes in GUI input. Doing numerical input from a TextField.
Example Applet: Computing Prime classes
Read: Chapter 16-18 from the Lab Manual.
Wednesday, October 29: Designing Graphical User Interfaces. Doing
more meaningful computations. TextAreas in applets.
Read: Chapter 17 from Bell & Parr.
- Week
10
Monday, November 3: More on applet and program design.
Example Applet: The Car Loan Calculator Computing
days between dates (incomplete version)
Project#5
(Due on Monday, November 17): Click
here for details.
Wednesday, November 5: Completing the Days applet. Exam Review.
Note: Two TA's have been cancelled. Please look at new TA hours above.
Example Applet:Computing
days between dates (complete version)
- Week
11
Monday, November 10: Exam 2 is today.
Wednesday, November 12: Review of Exam. Arrays in Java.
- Week
12
Monday, November 17: Arrays in Java. Passing arrays as parameters.
Doing standard operations on arrays: initializing, computing mean, finding
the smallest/largest element etc.
Read: Chapter 13 from Bell & Parr.
Project#6
(Due on Wednesday, December 10): Click
here for details.
Project#6 Interim Deadline: Read the project description and see if
you can get started!
Wednesday, November 19: Arrays of objects. Strings in Java.
Read: Chapter 15 from Bell & Parr.
Example Applet: Testing for palindromes.
- Week
13
Monday, November 24: Objects and classes. Defining your own classes
in Java.
Read: Chapters 9, 10, and 11 from Bell & Parr
Example Applet: Playing
with balloons, canvas example
Project#6 Interim Deadline: Finish Version 1 today!
Wednesday, November 26: No class today. Students in need of help
can make appointments to see me for help.
- Week
14
Monday, December 1: No class today.
Catherine Chiu's TA Hours for today are cancelled.
Wednesday, December 3: Using canvases in applets.
Example Applet: Playing
with balloons, canvas
example
Project#6 Interim Deadline: Finish Version 2 today (December 3)!
- Week
15
Monday, December 8: Review for exam. Course wrap.
Project#6 Interim Deadline: Finish Version 3 today (December 8)!
Sign-up sheet is posted outside my office door. Please make sure you sign
up for the demo of your Project#6. During the demo, I will use your applet
to play a couple of times and I will also review your grade with you.
Wednesday, December 10: Exam 3 is today. Project#6
is due today.
Grading
All
graded work will receive a grade, 4.0, 3.7, 3.3, 3.0, 2.7, 2.3, 2.0,
1.7, 1.3, 1.0, or 0.0. At the end of the semester, final grades will
be calculated as a weighted average of all grades according to the
following weights:
Exam
1: 15%
Exam 2: 15%
Exam 3: 15%
Projects: 55%
Total: 100%
Links
|