Skip to content

Programming by Design

If you're not prepared to be wrong, you'll never come up with anything original. – Sir Ken Robinson

  • About
  • Java-PbD
  • C-PbD
  • ASM-PbD
  • Algorithms
  • Other

CISS-111 Syllabus

Posted on May 7, 2012January 19, 2025 By William Jojo
Syllabus


CISS-111 – Programming & Logic II in the Java Programming Language
Instructor: William Jojo
Email: w.jojo@hvcc.edu
Location: Higbee 119
Phone: 518-629-7540
Updated January 18, 2025

Topical Outline:

  1. Collections, Vector, and String Classes, Enumeration Types
  2. Inheritance & Polymorphism
  3. Exception and Event Handling
  4. Recursion
  5. Advanced GUI & Graphics
  6. Generic Methods, Classes, Array-Based Lists
  7. Linked Lists
  8. Stacks & Queues
  9. Searching & Sorting
  10. Trees, Graphs
AssignmentTopicReadingsObjectives
Module 1Command line arguments and arrays (review), Project 1Chapter 91, 3
Module 2Vectors, ArrayList & Enumerations, Project 2Chapter 101, 6, 10
Module 3Inheritance & Polymorphism, Project 3Chapter 111, 2, 3
Module 4Recursion, Linked Lists and Iterators, Project 4Chapter 12, 13, 144, 7
Module 5Hash Tables, Project 5Chapter 157, 9, 10, 12
Module 6Generics, Project 6Chapter 171, 2, 3, 4, 6, 7, 9, 10
Modules 7 & 8Stacks, Queues, Deques, Trees, Projects 7 & 8Chapter 16, 181, 3, 6, 7, 8, 9, 10, 11

Measurable Outcomes

Measurement is based on ten to eleven programming assignments, midterm and final exams, and formative textbook quizzes.

  • Demonstrate proficiency in intermediate to advanced problem-solving techniques.
  • Demonstrate intermediate to advanced proficiency in a high-level programming language.
  • Demonstrate proficiency in analyzing complex problems and synthesizing solutions to those problems.
  • Demonstrate ability to write programs that use arrays, records, linked structures, stacks, queues, trees, and graphs.
  • Describe the common application of and how arrays, records, linked structures, stacks, queues, trees, and graphs are represented in memory and used by algorithms.
  • Demonstrate ability to write programs that use arrays, records, linked structures, stacks, queues, trees, and graphs.
  • Demonstrate the appropriate use of complex abstract data structures.
  • Demonstrate applying abstract models to develop dynamic solutions to generic problems.
  • Discuss the efficacy and computational efficiency of the principal algorithms for sorting, searching, and hashing.

Assessments:

Projects 160 points (~38%)
Journal, Attendance, Participation 48 points (~12%)
Quizzes (textbook, formative) 0 points
Mid-Term Exam 100 points (~25%)
Final Exam 100 Points (~25%)
Total 408 points (100%)
  • Grade calculation is total points received divided by total possible points. (If there are 368 possible points and you received 110/120 for projects, an 85/100 midterm exam grade, and 40/48 for the journal, your grade entering the final exam is (110+85+40)/268 or .87, which is a solid B grade.)
Important Note!
In the event of a remote-learning situation, your attendance requires the use of audio AND video so your instructor may hear and see you.

Resources
Learning Management System (LMS)
Installing JetBrains IntelliJ and Java JDK FX
JDoodle
Webmail
Academic Calendar

Java Documentation
Java SE 21 Documentation
JavaFX 21 API

Additional Information:

  • Exemptions are given based on a 95+ average on all graded work that was previously due. This is done approximately one week before the final exam. The instructor will provide the details of the exemption calculation.
  • You must complete (provide a working solution) all remaining work by the assigned due date(s) to keep your exemption. Failure to complete this work will result in forfeiture of the exemption.
  • If you request an incomplete for the semester, you no longer qualify for exemption from the final examination.
  • Projects are due at midnight of the assigned due date and are graded based on the rubric attached to the project in the LMS.
  • Projects may not be submitted via email. You will be given instructions on how to submit your projects for grading.
  • The grade of Z will be given if you have not logged in to the LMS after the mid-term due date.
  • When using electronic mail, please include a subject like “CISS-110 Project 4 question”.

Materials:

  • Text book: Java Programming by Design by William Jojo

Other Stuff
D&D Basic Rules
D&D System Reference Document (SRD) via Open Gaming License


Accommodations for Students with Disabilities

In compliance with the Americans with Disabilities Act of 1990 and with Section 504 of the Rehabilitation Act, Hudson Valley Community College is committed to ensuring educational access and accommodations for all its registered students, in order to fully participate in programs and course activities or to meet course requirements. Hudson Valley Community College’s students with documented disabilities and medical conditions are encouraged to access these services by registering with the Center for Access and Assistive Technology to discuss their particular needs for accommodations. For information or an appointment contact the Center for Access and Assistive Technology, located in room 130 of the Siek Campus Center, email us at caat@hvcc.edu, or call 518-629-7154/TDD: 518-629-7596. Another office that works closely with the Center for Access and Assistive Technologies to help students manage their mental health and wellness to achieve their academic and personal goals, is Counseling and Wellness Services. To schedule an appointment to talk with a counselor, visit of at CTR 260 in the Siek Campus Center, call 518-629-7320, or email us at counseling@hvcc.edu.

Post navigation

❮ Previous Post: Bitwise Operators and Two’s Complement.
Next Post: CISS-110 Syllabus ❯

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

Copyright © 2018 – 2025 Programming by Design.