Prerequisites: CS 112 (C or better)
Format: Lecture plus weekly lab
Instructors:
Instructor Name | Office | Office Hours | |
---|---|---|---|
Dr. David I. Samudio | dgonza10@gmu.edu | ENGR 4436 | TBA |
Dr. Brian Hrolenok | hrolenok@gmu.edu | ENGR 4708 | TBA |
Graduate Teaching assistants:
TA Name | Office Hours location | Office Hours | |
---|---|---|---|
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
TBA | TBA | TBA | TBA |
Lectures
Section | Day(s) | Time | Instructor | Location |
---|---|---|---|---|
001 | Monday & Wednesday | 1:30-2:45pm | Gonzalez Samudio | Exploratory Hall room L004 |
002 | Monday & Wednesday | 3:00-4:15pm | Gonzalez Samudio | Exploratory Hall room L004 |
003 | Tuesday & Thursday | 12:00-1:15pm | Hrolenok | Innovation Hall room 105 |
004 | Tuesday & Thursday | 3:30-4:15pm | Hrolenok | Planetary Hall room 131 |
Labs
Section | Day | Time | Instructor | UTA | UTA | UTA | UTA | Location |
---|---|---|---|---|---|---|---|---|
201 | Thursday | 11:30am-12:20pm | TBA | TBA | TBA | TBA | TBA | Buchanan Hall room D023 |
202 | Thursday | 1:30pm-2:20pm | TBA | TBA | TBA | TBA | TBA | Horizon Hall room 1010 |
203 | Thursday | 10:30am-11:20am | TBA | TBA | TBA | TBA | TBA | Horizon Hall room 1012 |
204 | Thursday | 11:30am-12:20pm | TBA | TBA | TBA | TBA | TBA | Horizon Hall room 1012 |
205 | Friday | 11:30am-12:20pm | TBA | TBA | TBA | TBA | TBA | Buchanan Hall room D023 |
206 | Friday | 12:30pm-1:20pm | TBA | TBA | TBA | TBA | TBA | Exploratory Hall room L102 |
207 | Friday | 1:30pm-2:20pm | TBA | TBA | TBA | TBA | TBA | Buchanan Hall room D023 |
208 | Friday | 2:30pm-3:20pm | TBA | TBA | TBA | TBA | TBA | Buchanan Hall room D023 |
Textbooks (required)
Piazza: We will use Piazza to provide course resources (slides, code, links), for official announcements, asynchronous discussions, Q&A, and help with assignments outside of office hours. Never post any code publicly - when in doubt, ask before posting, as TAs can change the visibility of posts to public when appropriate. Please reserve email for academic/grading issues - Piazza is the place for help on assignments.
Gradescope: We will use Gradescope for all assignment and exam feedback. Please make sure you create an account using your @gmu.edu email address.
Blackboard: We will use Blackboard for limited cases only. Please consult with your instructor.
Students will be manually added to Piazza and Gradescope in the first or second week once enrollments are finalized.
This course presents a 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:
In this course students will be evaluated using several different kinds of coursework:
Grade Distribution
Coursework | Weight | Notes |
---|---|---|
Class participation | 5% | |
Readings | 5% | Lowest 15 subsections dropped |
Labs | 15% | weekly, no drops |
Exercises | 9% | 3% each, no drops |
Projects | 21% | 7% each, no drops |
Midterm exam | 20% | replaced by final exam grade if final exam grade is higher |
Final exam | 25% | must pass final to pass the course |
Grading Policies
Grading Scale
Grade | Range |
---|---|
A+ | [98,100] |
A | [92,98) |
A- | [90,92) |
B+ | [88,90) |
B | [82,88) |
B- | [80,82) |
C+ | [78,80) |
C | [72,78) |
C- | [70,72) |
D | [60,70) |
F | [0,60) |
Unless specific instructions are given to the contrary, projects 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 are entitled to accommodations based on recommendations from University offices should promptly initiate a discussion with their instructors. It is the student's responsibility to acquire this information directly from the respective office.
Prioritizing your well-being is paramount in achieving academic success. We strongly urge students to take advantage of the available university resources designed to support their journey. We, as educators, may not possess the expertise to evaluate unforeseen and challenging circumstances that could arise; therefore, we rely on specialized offices for appropriate guidance and accommodations. These designated offices hold the responsibility of providing insights and ensuring your rights, as outlined in acts such as FERPA or ADA, are comprehensively understood and respected.
A brief list of the services at no cost to GMU students:
Disability Services at George Mason University is committed to providing equitable access to learning opportunities for all students by upholding the laws that ensure equal treatment of people with disabilities. If you are seeking accommodations for this class, please first visit https://ds.gmu.edu/ for detailed information about the Disability Services registration process. Then please discuss your approved accommodations with your instructor. Disability Services is located in Student Union Building I (SUB I), Suite 2500. Email: ods@gmu.edu | Phone: (703) 993-2474
For the collective safety of all students and staff, please follow Mason's Safe Return to Campus Guide.
Please note: the following schedule may be adjusted throughout the semester. Always check for announcements, and follow due dates posted on Blackboard, Gradescope, and zyBooks. The dates listed below are the Sunday at the beginning of the given week; they are NOT due dates. Final exam dates (which you can find here for ALL classes) are set by the registrar for each section based on the time and days of the week that lecture meets.
Week | Dates | Topic | zyBooks reading | Supplemental reading | Assignments |
---|---|---|---|---|---|
Week 1 | 26-AUG | Introduction; Basics; Flow Control | 1, 2, 3 (due NEXT week) | 1, 2, A2 | E1 |
Week 2 | 02-SEP | Arrays; File I/O | 4, 5 (due THIS week) | 3, 5 | E1 |
Week 3 | 09-SEP | Classes; Objects; Methods; Fields | 6, 7 | 4, 6 | P1 |
Week 4 | 16-SEP | Command line args; Packages; Javadocs | 8 | 11, 13 | P1 |
Week 5 | 23-SEP | Inheritance; Polymorphism; Dynamic dispatch | 10 | 7 | E2 |
Week 6 | 30-SEP | Abstract classes; Interfaces; Enums | 11 | 8, 9 | E2 |
Week 7 | 07-OCT | Midterm review; Midterm | |||
Week 8 | 14-OCT (Monday classes do not meet) | Exceptions, Unit testing | 12 | 10, 12 | P2 |
Week 9 | 21-OCT | Generics | 13 | 14 | P2 |
Week 10 | 28-OCT | Collections, Lists & Queues | 9, 14 | E3 | |
Week 11 | 04-NOV | Recursion | 15 | 15 | E3 |
Week 12 | 11-NOV | Searching & Sorting | 16 | 16 | P3 |
Week 13 | 18-NOV | Nested classes; Lambda expressions | 19 | A1 | P3 |
Week 14 | 25-NOV (Wed, Thu, Fri classes do not meet) | Graphical User Interfaces | 17,18 | P3 | |
Week 15 | 02-DEC | Review | P3 | ||
Week 16 | 09-DEC (Tue, Wed, Thu, Fri classes do not meet) | Review |