Computer Science

Certain word-processing, spreadsheet, and online research skills are developed within the curriculum of the major academic disciplines. The Computer Science Department focuses on the study of computer programming and the theory and the algorithmic approaches that form the core of programming.

Foundations of Learning

This first semester course is required for all freshmen and newly accepted sophomores. These classes provide students with the foundations for learning online. Topics include the acceptable use of Thayer Academy’s 1-to-1 student laptop program, the use and application of various academic software applications (Google Apps for Education, Gmail, TigerCloud storage, and Thayer Academy’s Learning Management System “onCampus”), the proper use of digital media to create positive experiences as digital citizens, and Digital Safety and Identity. Students also participate in Hour of Code to learn about the basics of coding: telling a computer how to perform a complex task or run a mechanical device. (Freshman and transfer sophomore requirement, Semester 1, meets 1 time per week.)

Programming I (C++)

Students with experience, motivation, and high intellectual ability may be admitted to this full-year course which covers the fundamental algorithmic and flowcharting skills, logic development, control structures, functions, and data types which lead to advanced topics in computer science. Additional topics include searching and sorting algorithms, file management processes, and hardware and operating system proficiency. Meets 3 times per week.

AP Computer Science (Java)

The focus of this full-year course will be the curriculum set forth by the Advanced Placement (AP) Committee in Computer Science. In addition to regular course work, students will be required to participate in all contests of the American Computer Science League. (Prerequisites: Programming I and permission of the instructor.) Meets 4 times per week.

Data Structures in Java

This full-year course will begin with a very intense review geared to the topics taught in the AP Computer Science course. The focus of this course will be on advanced data structures (linked lists, stacks, queues, and binary trees), data files, and the major algorithms of sorting and searching. The other essential component of this course will be the development of an in-depth approach to graphical programming in Java. In addition to regular course work, students will be required to participate in all contests of the American Computer Science League. (Prerequisites: Programming I, AP Computer Science and permission of the instructor.) Meets 3 times per week.