Legend:
π fulfills a specific COURSE graduation requirement
π« Advanced Placement (AP) Course
β Honors course
π Pre-requisite course(s) must be completed first
FY: Full Year Course
Q: Quarter Course (must choose 2* or 4*)
*May be in different departments
Department Chair: Steven Bernstein
SLBernstein@aacps.org
(Course Descriptions Below)
Beginner is defined as have never taken a Computer Science course but may have experience and interest. Beginner Computer Science students are recommended to choose from:
AP Computer Science Principles
Foundations of Computer Science
Scratch
Python
Intro to Web Development
Intermediate is defined as having taken some Computer Science courses or other experience. Intermediate Computer Science students are recommended to choose from:
AP Computer Science Principles
AP Computer Science A
Python
Intro to Web Development
Discrete Mathematics for Computer Science
Advanced is defined as having taken several of our Computer Science courses are are looking for more to take. Advanced Computer Science students are recommended to choose from:
AP Computer Science A
Discrete Mathematics for Computer Science
Data Mining
Cybersecurity: Linux
(Can count as elective credit if Technology credit is completed)
An excellent introductory AP course; our most popular course! In what other class can you get graded on researching popular apps like Snapchat & Instagram, or creating a video game or app? Topics include Creative Development, Data, Algorithms & Programming, Computer Systems & Networks, Impact of Computing, Innovations in Digital Technology, Cyber Security and Cyber Warfare, Cryptology & Code Breaking, Debugging, Digital Law, Web Development and more. This very modern and relevant course is excellent for students who have never taken an AP course.
This course meets the basic technology graduation requirement.
This course prepares students for the AP Computer Science Principles Exam for college credit.
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 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.
This course meets the basic technology graduation requirement.
This course involves the study of the computer language Java as well as programming practices and procedures. Topics to be covered will include fundamentals of the Java programming language, input and output, flow of control features, data structures and searching and sorting algorithms. Program design and analysis will be emphasized. This is a course recommended for students who look to increase their programming and logical-thinking skills. This class focuses strictly on programming, whereas the other courses are more generalized.
This course prepares students for the AP Computer Science A Exam for college credit.
This is an advanced project-based computer programming class which will introduce students to the similarities and differences between C++ and Java. Students will get hands on experience in using the language to develop games. Student will also become familiar with the software design and development standards.
This course will introduce students to programming in a fun and easy to use language. Python is a dynamic and flexible language, great for first time learners. Python is one of the most widely used high-level programming languages in the world.
Using block-based coding, this courses uses a visual programming language which allows students to create interactive stories, puzzles and games. This is a project-based course that gives the beginner programmer a fun and exciting way to learn fundamental programming concepts.
Students will learn to use HTML, CSS & JavaScript to develop web pages through a variety of creative and engaging projects. This course provides a variety of opportunities for students to master basic web development concepts while practicing the importance of art and creativity in the design.
Use Problem-Based Learning to practice methods of research and use tools such as Excel to analyze, discover patterns, make predictions, and propose potential solutions to problems.
This course will provide students with a basic introduction to the subject of cybersecurity through exploration in topics including data & information, cryptography, cyber-attacks, geopolitics, computer hardware & networking etc. Students will explore the technical aspects of cybersecurity through the use of the Linux operating system. This challenge-based course will inspire students to seek opportunities in a flourishing, high-demand field.
The goal of this course is to introduce students to ideas and techniques from discrete mathematics that are widely used in computer science and digital technology. Students will explore topics such as logic, algorithms, probability, graph theory, number theory, number systems, and more.
Coming Soon!