This is an advanced course in computer science. Because the design and implementation of computer programs to solve problems involve skills that are fundamental to the study of computer science, a large part of this course is built around the development of computer programs that correctly solve a given problem. These programs should be understandable, adaptable, and, when appropriate, reusable. At the same time, the design and implementation of computer programs are used as a context for introducing other important aspects of computer science, including the development and analysis of algorithms, the development and use of fundamental data structures, the study of standard algorithms and typical applications, and the use of logic and formal methods. In addition, the responsible use of these systems is an integral part of the course. Note: The student enrolled in this course will be required to take the National AP exam and may potentially receive advanced placement credit at many colleges and universities.
Foundations of Computer Science
This course is designed to introduce students to the breadth of the field of computer science through an exploration of engaging and accessible topics. Rather than focusing the entire course on learning particular software tools or programming languages, the course is designed to focus on the conceptual ideas of computing and help students understand why certain tools or languages might be utilized to solve particular problems. This course includes a broad range of topics in computing, including robotics; programming in several languages, such as Processing and Java; and cyber security.
Computer Science Principles
This course advances students' understanding of the technical aspects of computing including, programming and algorithm design, computer system organization and operation, and data representation and information organization. This course includes the use of several programming languages, based on the specific project or problem students must solve.
Microcomputer Operating Systems
This introduction to DOS and Windows operating environments includes basic and advanced operations and the use of system utilities, introduces DOS and UNIX/LINUX command structures, and explores operations using the Windows graphical user interface.
Ethics and the Information Age
In this course, students gain a clearer understanding of certain ethical issues in information technology as well as an understanding of how ethical theory can be applied to a discussion and analysis of those issues. In critically examining a cluster of information technology issues within the framework of ethical theory, students can develop a rational, coherent, consistent, and systemic approach to addressing moral issues in information technology.