Course Syllabus

Course Information

Course name and number: CPSC 1302K - Computer Science II

Credit Hours: 4

Course Description: This course is the second in a two course sequence designed to introduce students to the fundamental concepts of computer science and programming. It focuses on the design of algorithms to solve problems and the implementation of those algorithms in the programming language Java. Students will learn to manipulate arrays, to implement inheritance and polymorphism, exception handling, and recursive programming.

Required Competencies/Prerequisites: CPSC 1301K with a "C" or better

Course Offering (days/times and room): 9:00 – 10:50 AM Mondays, Wednesdays and Fridays in SCCT 407

Section: 01

Course Registration Number (CRN): 21411

Websites:

The last day to drop without a grade and receive a 100% refund: Friday, January 12, 2024

Deadline to withdraw with a WP (Withdraw Pass):  Friday, March 1, 2024

Instructor Information

Graduate Teaching Assistant (GTA)

  • Name: ?????????????
  • Email: @ColumbusState.edu
  • Teaching Assistant (TA)

  • Name: ?????????????
  • Email: @ColumbusState.edu
  • Textbooks and Materials

    Required Textbook

    CS Awesome By Barb Ericson and Beryl Hoffman.
    Cost: Free
    An interactive textbook that even allows you to type in code and execute it on the same page as the material. Also, it has useful features like interactive quizzes and tracing of code execution. This textbook covers most of the topics for this class.

    Java, Java, Java: Object-Oriented Problem Solving (2022E Edition) by Ralph Morelli, Ralph Walde and Beryl Hoffman.
    Cost: Free
    Provides a detailed explanation of all of the topics covered in class.

    Other Textbooks

    Think Java
    Cost: Free

    Java for Python Programmers
    Cost: Free
    Provides an interactive environment that allows you to type in code and run them. Also has useful features like interactive quizzes and tracing of code execution.

    Introduction to Programming Using Java (Eighth Edition) by David J. Eck
    Cost: Free

    Java with BlueJ (Parts 1 & 2) by Ron McFadyen
    Cost: Free

    Modules

    1. Orientation
    2. Introduction to Java
    3. Java Objects & Classes
    4. User Interfaces
    5. Java Language and Structures
    6. Inheritance & Polymorphism (& Abstract Classes and Interfaces)
    7. Arrays & Generics
    8. Exception Handling
    9. File I/O
    10. Recursion

    Course Learning Outcomes

    1. The students will demonstrate the ability to read moderately complex programs written in a specific programming language and understand what these programs do.
    2. The students will demonstrate the ability to design algorithms utilizing the principles of object-oriented programming (classes, encapsulation, inheritance mechanisms, polymorphism) to solve moderately complex problems.
    3. The students will demonstrate the ability to design algorithms utilizing some principles of programming (exception handling and recursive programming) to solve moderately complex problems.
    4. The students will demonstrate the ability to write moderately complex programs in a specific programming language to implement these algorithms.
    5. The students will demonstrate the ability to follow specified style guidelines in writing programs, and understand how the guidelines enhance readability and promote correctness in programs.
    6. The students will demonstrate the ability to edit, compile, debug and run programs in a specific programming language.

    Activity Expectations and Assignment Requirements

    Attendance

    Attendance is required by the university and will be recorded at the beginning of each class. It may also be used in determining grades. Additionally, it is the student's responsibility to independently cover any materials missed. Makeup exams or quizzes are generally not given, so please make sure you are present for all exams and quizzes.

    I expect each student to be in attendance for each class in-person. Attendance will be calculated by your arrival and duration in class. It is your responsibility to make sure your attendance gets recorded correctly for every class meeting (see under Student Responsibilities below). If you can not make a class, please inform me and get the relevant materials from a classmate.

    Computers are permitted in lecture for note taking and completing exercises. Other activities such as web surfing, stock trading, and social networking are inappropriate. Not only do they distract you but also others.

    Students that do not attend both of the first two lectures may be dropped from the course. Refer to the CSU Catalog (https://catalog.columbusstate.edu/academic-regulations/undergraduate-academic-regulations/) for more information on class attendance and withdrawal.

    Practice Assignments

    You have the opportunity to complete several practice assignments this semester to help you learn and retain the techniques that you will learn. For the practice assignments hosted on codePost.io, you are given a week of grace (no penalty) after which you can submit an assignment late for reduced points (half off each week that it's late). For the practice assignments hosted on CodeWorkout, you have one week after an assignment is due to turn it.

    Projects

    There will be about 4-6 projects. Projects must be written in Java. They are due at 10:00 PM Eastern Time on the assigned due date (unless indicated otherwise). A total of at most 3 late days will be granted for the entire semester for projects (and only for projects). (Sunday and Monday are counted as 1 day late.) For example, if Project 2 is turned in two days late and Project 3 is turned in one day late, then all of the late days for the semester have been used.

    If an assignment contains portions that are more than 75% similar to other material (not provided by the instructor), zero points will be awarded Additionally, an Academic Misconduct incident may be reported as well.
    Students missing two or more projects will receive an F or FA in this course. It is recommended that you regularly keep a copy of your projects on a second device.

    Project Late Policy

    A total of at most 3 project late days will be granted for the entire semester for projects (and only for projects). For example, if Project 2 is turned in two days late and Project 3 is turned in one day late, then all of the late days for the semester have been used.

    Exams

    There will be two exams during the regular semester (in addition to the final). They will be proctored using Respondus LockDown Browser. It is known to not work with the following devices:

    If you do not have a compatible laptop or desktop, you will need to find an alternative method to take each of the exams. Some options include:

    Final Exam

    The final exam time (Friday, May 1, 2024, 8:00 – 10:30 AM) will be used for We Solve It! Project presentations.

    Grading

    Grading category weights:
    Pie chart depicting: Quizzes 20%, Practice Assignments 15%, Projects 25%, Exams (15% each) 30%, We Solve It! Project 10%
    Each of the grading categories is capped at 100%.

    Course letter grades are determined by the final course average according to the following chart:
    Final Grade Calculation
    % Range Course
    Grade
    90 – 100 A
    80 – 89 B
    70 – 79 C
    60 – 69 D
    <60 F

    Expectations

    WHAT YOU CAN EXPECT FROM ME

    WHAT IS EXPECTED FROM YOU

    Information regarding student rights and responsibilities can be found in the CSU Student Handbook.

    As a student in this course, you are responsible to:

    Course Communication

    E-mail

    Time Commitment

    The amount of time it will take you to complete the work for the course will depend on many factors, which will vary with each individual. The ACM recommends the following: "As a general guideline, the amount of out-of-class work is approximately three times the in-class time. Thus, a course that is listed as requiring 3 hours typically entails a total of 12 hours (3 in class and 9 outside)." Student in my classes typically spend more time than this guideline. This time commitment increases for partially or fully on-line courses. Students will be expected to spend this time outside class reading the book, online materials and other materials; writing solutions to exercises and programming projects. It will be helpful to set aside regular study time when you can work uninterrupted.

    Technical Requirements/ Support

    See the CougarVIEW Starter Guide for support with navigating this system.

    Hardware Requirements

    See the System Checker here. (GeorgiaVIEW’s system checker is compatible with CougarVIEW.)

    Software Requirements

    Browser Plugins (.pdf files, QuickTime files, .mp4 files) can be obtained at a browser's website:

    Privacy Policies

    Below are the links to the privacy policies for the tools that we will be using in this course: