CMSC 280: Programming in a Second Language (Java)


MWF 2-2:50pm Ruffner 352


Course Information Handout/Syllabus

Academic Honesty Handout
karel cover Liang text
Instructor:
Scott McElfresh
x2249       Ruffner 346
ProfScottMcElfresh @ gmail.com
Website

Office Hours:
(no appointment needed,
just drop by during these times)


yellow divider
Calendar

Mon, Aug 21

No class so that students may join the Solar Eclipse festivities on Wheeler Mall.

Assigned:

  • Get Java  and Eclipse software on your personal machine
    • Java.com    version 8 is fine.
    • Eclipse.org  (no this it not a joke) Download the one for Java Developers.   (the one for Java EE developers is not necessary)
  • Skim Chapter 1 of the Liang text
Tue, Aug 22

Wed, Aug 23
DUE:  assignment from Monday

Topics:
  • software items
  • beginning Java and objects
  • Read Chapters 1 and 2 of the Karel text
Resources:
Assigned:
Thu, Aug 24

Fri, Aug 25

DUE: Java Code Reading exercise

BRING LAPTOPS

Topics:
  • Object terminology
  • Interfaces
  • Packages
Resources:
For practice, do any exercise in Chapter 2.  
Assigned:
yellow divider
Mon, Aug 28

Topics:
  • inheritance
  • Eclipse logistics

Inclass Examples:
Assigned:  (due Friday)
Tue, Aug 29

8am: DUE:  


Wed, Aug 30

Reading:
Chapters 5 and 6 of the Karel J Robot text.
Thu, Aug 31

Fri, Sept 1
Due:
  • Carpet Hallways 2
  • Candles
  • Spelling

Inclass Photo:
Lab Day, so bring laptops

Assigned: Move beepers in a room
Topics:
  • Review of if, while, for
yellow divider
Mon, Sept 4

Labor Day
No Classes
Tue, Sept 5

Wed, Sept 6
Inclass Photos:

Topics:
  • Inheritance (type, implementation)
  • Access control
  • Polymorphism
  • Overloading, overriding
  • Casting, static vs dynamic type
Thu, Sept 7

Fri, Sept 8

Career info presentation
yellow divider
Mon, Sept 11

Topics:
  • Constructor overloading
  • State

Inclass Example:
  • to be linked soon
Tue, Sept 12

Wed, Sept 13

Topics:
  • functions with returns
  • more with state

Inclass Examples:
Thu, Sept 14

Fri, Sept 15

Lab Day - bring laptops

Assigned:
Inclass:
yellow divider
Mon, Sept 18

Topics:
Tue, Sept 19

Wed, Sept 20

Topics:
  • Interfaces
  • Polymorphism
  • Recursion
Inclass Photo:
Thu, Sept 21

Fri, Sept 22
Due at 2pm:


Topics:
  • Command line java
  • PlayingCard
  • Object, toString
  • ArrayList, List, import
Inclass:
  • See /home/shared/262/0922/
yellow divider
Mon, Sept 25

Topics:
  • More java doc
  • Collections
  • Comparable, Comparator
Inclass:
Tue, Sept 26

Wed, Sept 27

Bring laptops

Assigned:
Classes and Inheritance
Thu, Sept 28

Fri, Sept 29

Topics:
  • interfaces
yellow divider
Mon, Oct 2

Topics:
  • more with inheritance
  • javadoc

Sample code to be discussed in class:
Tue, Oct 3

Wed, Oct 4
Due: classes and inheritance
Topics:
  • File I/O
Sample Programs:
directories found in ~scottme/280files
  • Files-out
  • Files-in1
  • Files-in2
Thu, Oct 5

Fri, Oct 6

BRING LAPTOPS

exercise on processing Donor lists files
yellow divider
Mon, Oct 9

Topics:
  • examples with Comparable
  • intro to equals method
Tue, Oct 10

Wed, Oct 11

Topics:
  • Lists, Sets
  • hashcode, equals
Thu, Oct 12

Fri, Oct 13
Due: donor list file processing exercise

QUIZ


yellow divider
Mon, Oct 16 - Tue, Oct 17

Fall Break
No Classes
Wed, Oct 18

No class
Thu, Oct 19

Fri, Oct 20

Lab exercise on Lists, Sets, Comparable  (Date sets)
yellow divider
Mon, Oct 23

Topics:
  • Hashing
Tue, Oct 24

Wed, Oct 25

Topics:
  • Hashing
  • intro to Maps
Thu, Oct 26

Fri, Oct 27
Due:  Date Sets


Get the following file.   Do not modify the main function.  Get the program to work.
Hashing
yellow divider
Mon, Oct 30

PROJECT DETAILS

Topics:
  • Intro to Old Style Java Graphics
Examples:
Tue, Oct 31

Wed, Nov 1

Topics:
  • More modern graphics classes
Assigned:
Find a tutorial on the Swing libraries and start going through it, as described in class.
Thu, Nov 2

Fri, Nov 3

BRING LAPTOPS

Exploring Swing
yellow divider
Mon, Nov 6
Project Proposals due

Tue, Nov 7

Wed, Nov 8

Topics:
  • Maps
Thu, Nov 9

Fri, Nov 10

Project Negotiation Meetings.
yellow divider
Mon, Nov 13
Project negotiations due

Maps (dog adoptions) lab

Tue, Nov 14

Wed, Nov 15

Topics:
  • Maps Exercise
Thu, Nov 16

Fri, Nov 17

Topics:
  • Project Work Day
yellow divider
Mon, Nov 20

Mid-way reports
Tue, Nov 21

Wed, Nov 22   -   Fri, Nov 24

Thanksgiving Break
No Classes


yellow divider
Mon, Nov 27

Topics:
Tue, Nov 28

Wed, Nov 29

Topics:
Thu, Nov 30

Fri, Dec 1

Topics:
yellow divider
Mon, Dec 4




Tue, Dec 5

Wed, Dec 6


Thu, Dec 7

Fri, Dec 8

8-10:30am
Project Presentations

Details TBA


yellow divider