Instructor:
Name: | Ivan Avramovic |
Email: | iavramo2-at-gmu.edu |
Hours: | Monday/Wednesday 11:30-12:30, or by appointment |
Office: | 4609 Engineering |
Xu Han | (xhan21-at-gmu.edu) |
Deep Kumar | (dkumar7-at-gmu.edu) |
Pushkal Reddy | (preddy6-at-gmu.edu) |
Jin Zhou | (jzhou23-at-gmu.edu) |
Affan Ahmed | Hurmaan Ahmed | Thomas Campbell | Sam Crater | Adrian Crespo |
John Decarlo | Raymond Guo | Joshua Hilbert | Blake Khan | Reza Khoshhal |
Kevin Mankowski | Sarad Pant | Evan Ritchey | Jesse Tran | Minh Duc Vu |
Section | Days | Times | Location |
---|---|---|---|
001 (P02) | Tue/Thu | 10:30-11:45am | 105 Innovation Hall |
003 (P01) | Tue/Thu | 12:00-1:15pm | 105 Innovation Hall |
GMU | CS 211 Lab Manual | available for free download from https://cs.gmu.edu/~marks/211/textbook/ | |
zyBooks | Programming in Java | available online at https://learn.zybooks.com/ (access using the sign-in code GMUCS211Spring2020) | |
(Optional) | Reges and Stepp | Building Java Programs, 3rd ed. | see online at https://practiceit.cs.washington.edu/ |
Course Description: Thorough treatment of programming according to object-oriented principles. Introduces classes, interfaces, inheritance, polymorphism, and single dispatch as means to decompose problems. Covers intermediate programming techniques including error handling through exceptions, arrangement of source code into packages, and simple data structures. Intermediate debugging techniques and unit testing are covered.
Outcomes
zyBooks:
online textbook with practice problems;
weekly deadlines for completing the practices are checked
automatically.
Labs:
Grade Distribution
Material | Weight | Drop policy |
---|---|---|
zyBooks | 5% | lowest 15 subsections |
Labs (weekly) | 10% | lowest three |
Programming projects (5-6) | 40% | none |
Midterm exams (2) | 20% | - |
Final exam | 25% | - |
Emergency Tokens
Grading Scale
Grade | A+ | A | A- | B+ | B | B- | C+ | C | C- | D | F |
---|---|---|---|---|---|---|---|---|---|---|---|
max | ↑ | 97 | 91 | 89 | 87 | 81 | 79 | 77 | 71 | 69 | 59 |
min | 98 | 92 | 90 | 88 | 82 | 80 | 78 | 72 | 70 | 60 | ↓ |
.java
source rather than compiled
.class
files or
word documents containing the source. It also means that the
code must be submitted on Blackboard rather than simply saved.
Unless specific instructions are given to the contrary, programming assignments are an individual effort, no group work is allowed. In addition to code, this includes the sharing of test cases, pseudocode, or approaches, receiving assistance in debugging code, as well as the use of external Internet sites.
Both the GMU Honor Code and the CS Department Honor Code apply in this class. Any use of a direct contribution on any program, homework, quiz, or exam will be reported as a violation of the honor code.
Students who have a right to accommodations due to disabilities or other conditions should discuss this with the instructor as soon as possible. Accommodations will follow the recommendations of the University's Office of Disability Services.
Week | Date | Topic(s) | Lab Text reading | zyBooks reading | Lab | Notes |
---|---|---|---|---|---|---|
week 1 | 1/20-1/26 | Introduction; Basics; Flow control | 1, 2 | 1-3 | Exercise-1 | |
Sun, Jan 26 | 1-3 due | |||||
week 2 | 1/27-2/2 | Arrays; Input/Output | 3-5 | 4, 5 | Exercise-2 | |
Mon, Jan 27 | E1 due | |||||
Fri, Jan 31 | 4, 5 due | |||||
week 3 | 2/3-2/9 | Classes; Objects; Methods; Fields | 6 | 6, 7 | Exercise-3 | |
Mon, Feb 3 | E2 due | |||||
Fri, Feb 7 | 6, 7 due | |||||
Sun, Feb 9 | P1 due | |||||
week 4 | 2/10-2/16 | Command line args; Packages; Javadocs | 11, 13 | 8 | Quiz-4 | |
Mon, Feb 10 | E3 due | |||||
Fri, Feb 14 | 8 due | |||||
week 5 | 2/17-2/23 | Task-5 | ||||
Tue, Feb 18 | Review | |||||
Thu, Feb 20 | Midterm 1 | |||||
week 6 | 2/24-3/1 | Inheritance; Polymorphism; Dynamic dispatch | 7 | 9, 10 | Exercise-6 | |
Fri, Feb 28 | 9, 10 due | |||||
Sun, Mar 1 | P2 due | |||||
week 7 | 3/2-3/8 | Abstract classes; Interfaces; Enums | 8, 9 | 11 | Exercise-7 | |
Mon, Mar 2 | E6 due | |||||
Fri, Mar 6 | 11 due | |||||
week 8 | 3/9-3/15 | Spring Break, no class | ||||
week 9 | 3/16-3/22 | Spring Break, no class | ||||
week 10 (9) | 3/23-3/29 | Exceptions; Unit testing | 10, 12 | 12 | Exercise-9 | |
Mon, Mar 23 | E7 due | |||||
Fri, Mar 27 | 12 due | |||||
Sun, Mar 29 | P3 due | |||||
week 11 (10) | 3/30-4/5 | Generics | 14 | 13 | Quiz-10 | |
Mon, Mar 30 | E9 due | |||||
Fri, Apr 3 | 13 due | |||||
week 12 (11) | 4/6-4/12 | Task-11 | ||||
Tue, Apr 7 | Review | |||||
Thu, Apr 9 | Midterm 2 | |||||
week 13 (12) | 4/13-4/19 | Collections, Lists & Queues | 14 | Exercise-12 | ||
Fri, Apr 17 | 14 due | |||||
Sun, Apr 19 | P4 due | |||||
week 14 (13) | 4/20-4/26 | Recursion | 15, A2 | 15 | Exercise-13 | |
Mon, Apr 20 | E12 due | |||||
Fri, Apr 24 | 15 due | |||||
week 15 (14) | 4/27-5/3 | Sort & search | 16 | 16 | Exercise-14 | |
Mon, Apr 27 | E13 due | |||||
Fri, May 1 | 16 due | |||||
Sun, May 3 | P5 due | |||||
week 16 (15) | 5/4-5/10 | Anonymous classes; Lambda functions; Regular Expressions | A1 | Quiz-15 | ||
Mon, May 4 | E14 due | |||||
Thu, May 7 | Review | |||||
Sun, May 10 | ||||||
exams | 5/13-5/20 | |||||
Thu, May 14 | Final exam, sec 003, 10:30am-1:15pm | |||||
Tue, May 19 | Final exam, sec 001, 10:30am-1:15pm |