Curriculum Detail

SHP Courses by Department

To learn more about each department's requirements and philosophy, please visit the SHP Departments page.

Computer Science

  • Computer Science Principles

    This course is a year-long, non-AP, less demanding version of the AP Computer Science Principles course.  It provides an introduction to some essential principles of computers and computer science. Topics include networking, web page design, hardware, computer graphics, programming and project management. While the course is not a full programming class, students will gain an understanding of programming using Javascript. Aware that we live in an increasingly “digital world,” the course will also explore themes such as privacy, security, social networking, the effects of technology on the brain, and ethical uses of technology.
  • AP Computer Science Principles

    This year-long course is an introductory college-level computing course that introduces students to the breadth of the field of computer science. Students learn to design and evaluate solutions and to apply computer science to solve problems through the development of algorithms and programs. They incorporate abstraction into programs and use data to discover new knowledge. Students also explain how computing innovations and computing systems—including the internet—work, explore their potential impacts, and contribute to a computing culture that is collaborative and ethical.  This course prepares students for the AP Computer Science Principles exam. 

    Prerequisite:
    Completion of Geometry or Geometry Honors and grade of B or higher in both semesters of previous math course.
  • Programming

    This semester course provides an introduction to computer programming using the Python programming language.  This course is appropriate for students with little to no programming experience who want to learn about how computer programs are written.  The course covers the basic building blocks of software development, such as variables, control structures, functions, loops, and lists.  During the course, students create a variety of interesting programs that touch on topics solving problems involving data manipulation and animation.  Students will leave the course with extensive Python programming experience, but, more importantly, with an understanding of problem solving and critical thinking skills in computer science.
  • AP Computer Science A

    This year-long course focuses on the use of computer programming for problem solving. Students learn object-oriented programming and become fluent in the Java programming language.  The course emphasizes data structures, object-oriented abstraction and design, and algorithm development.  Specific topics covered are basic syntax, conditional logic, looping, one-dimensional arrays, two-dimensional arrays, objects, classes, inheritance and polymorphism, and exception handling.  Students will get extensive programming and debugging experience through the use of the software development cycle.  Students will also be introduced to recursion, searching and sorting algorithms, input/output, graphical user interfaces, and the ethical and social implications of computer use. This course prepares students for the AP Computer Science A exam.

    Prerequisite:
    This course requires advanced problem solving skills.  While there is no specific prerequisite, these skills are similar to skills used in honors math courses or in other Computer Science courses.

    If the most recent Math course is Precalculus BC Honors or AP Calculus AB or AP Calculus BC, a grade of B or higher is strongly recommended.

    If the most recent Math course is any other honors math course, a grade of A- or higher is strongly recommended.

    Students who do not meet the above recommendations will need permission from the department head.
  • Advanced Topics in Computer Science, Honors

    This semester-long honors course builds upon the programming and problem solving foundation students developed in AP Computer Science.  Taught in C++, this course mirrors the curriculum of the second rigorous programming course in a typical college sequence.  Students will get extensive experience with dynamic memory and pointers, and will study data structures like linked lists, binary trees, and hash tables.  The course covers formal analysis of algorithms (big-O notation) and involves several large scale programming projects. 

    Prerequisite:
    Completion of AP Computer Science 
  • Machine Learning, Honors

    In the last ten years, machine learning and artificial intelligence have become the most widely researched topics in computer science. From simple computer games to FaceID to Google Maps, machine learning exists in virtually all modern tech. However, most people don’t actually know the math and computer science that goes into making that technology work. This semester-long honors course will introduce students to different concepts, algorithms, and models commonly used in artificial intelligence and machine learning systems. This course involves significant coding, as well as foundational knowledge of calculus.

    Prerequisite:
    Completion of a previous programming course: either AP Computer Science Principles, AP Computer Science or Programming; Grade of B or higher in Precalculus AB Honors, or completion of Precalculus BC Honors; Concurrent enrollment in or completion of Calculus.
Where Scholarship and Values Matter
Founded by the Society of the Sacred Heart, SHS is a Catholic, independent, co-ed day school for students in preschool through grade 12