Instructor:
Name: | Tessema Mengistu (Ph.D.) |
Email: | tmengis-at-gmu-dot-edu |
Webpage: |
https://cs.gmu.edu/~tmengis/courses/SM22/CS211Summer22.html
|
Hours: | M 10:00 AM - 12:00 PM or by appointment |
Office: | ENGR 2703 |
Name: | Fardin Sakib |
Email: | fsakib-at-gmu-dot-edu |
Hours: | Tuesdays/Thursdays 1:45-3:45 PM |
Office: | ENGR 4456 |
TBA |
Section | Days | Times | Location |
---|---|---|---|
B01/BP1 | MW | 1:30 PM - 4:10 PM | David King Jr. Hall 1006 |
Section | Days | Times | Location |
---|---|---|---|
CS-211-2B1 | TR | 11:30 am - 12:20 pm | Nguyen Engineering Building 1505 |
CS-211-2B2 | TR | 12:30 pm - 1:20 pm | Nguyen Engineering Building 1505 |
zyBooks | Programming in Java | available online at https://learn.zybooks.com/ (subscribe and access using the sign-in code GMUCS211MengistuSummer2022) | |
1. Sign in or create an account at learn.zybooks.com | |||
2. Enter zyBook code: GMUCS211MengistuSummer2022 | |||
3. Subscribe | |||
GMU | CS 211 Lab Manual | available for free download from https://cs.gmu.edu/~marks/211/textbook/ | |
(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.
Programming Assignments:
Grade Distribution
Material | Weight | Drop policy |
---|---|---|
zyBooks | 5% | lowest 15 subsections |
Class Participation | 5% | |
Lab Submissions | 10% | |
Programming Exercises (4-5) | 15% | lowest one |
Programming projects (2-3) | 20% | none |
Mid exam | 15% | - |
Final exam | 30% | - |
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, all 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.
We take the honor code quite seriously. Any attempts at copying or sharing code, algorithms, or other violations of the honor code simply will not be tolerated. We use automated software to flag suspicious cases, and then review them to find the cases that must be submitted to the Office of Academic Integrity. The penalty for cheating will always be far worse than a zero grade, to ensure it's not worth taking the chance. Confirmed cases of cheating almost always translate into course failure.
Some kinds of participation in online study sites violate the Mason Honor code: these include accessing exam or quiz questions for this class; accessing exam, quiz, or assignment answers for this class; uploading of any of the instructor's materials or exams; and uploading any of your own answers or finished work. Always consult your syllabus and your professor before using these sites.
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 | Assignments | Notes |
---|---|---|---|---|---|---|
week 1 | June 07-12 | Exercise-1 | ||||
Introduction; Basics; Flow control | 1, 2 | 1-3 | ||||
Arrays; Input/Output | 3-5 | 4, 5 | ||||
Sun, June 12 | 1-5 due | |||||
week 2 | June 13 -19 | Exercise-2, Project 1 | E1 due | |||
Classes; Objects; Methods; Fields | 6 | 6,7 | ||||
Command line args; Packages; Javadocs | 11, 13 | 8 | ||||
Sun, June 19 | 6-8 due | |||||
week 3 | June 20 - 26 | E2 due | ||||
Mon, June 20 | Juneteenth Observance (University Closed) | |||||
Inheritance; Polymorphism; Dynamic dispatch | 7 | 9,10 | ||||
Sun, June 26 | 9 - 10 due | |||||
week 4 | June 27 - July 03 | Exercise 3, Project 2 | P1 due | |||
Abstract classes; Interfaces; Enums | 8, 9 | 11 | ||||
Sun, July 03 | ||||||
week 5 | July 04- July 10 | |||||
Mon, July 4 | Independence Day (University Closed) | |||||
Wen, Jul 06 | Mid exam | |||||
week 6 | Jul 11 - 17 | Exercise-4 | E3-due | |||
Exceptions; Unit testing | 10, 12 | 12 | ||||
Generics | 14 | 13 | ||||
Sun, Jul 17 | 12-13 due | |||||
week 7 | Jul 18 - 24 | Project 3 | E4 due;P2 due | |||
Collections, Lists & Queues | 14 | |||||
Recursion | 15, A2 | 15 | ||||
Sun, Jul 24 | 14-15 due | |||||
week 8 | Jul 25 - 27 | |||||
Sort & search | 16 | 16 | ||||
Wen, Jul 27 | P3 due | |||||
Final Exam | Friday, 7/29 1:30 – 4:15 pm |