Students are challenged to look outward and explore the impact of computer science on society. Students will see how a thorough user-centered design process produces a better application, how data is used to address problems that affect large numbers of people, and how physical computing with circuit boards allows computers to collect input and return output in a variety of ways. Students apply the problem solving process to the problems of others, learning to empathize with the needs of a user and design solutions to address those needs. During the second half of the unit, students form teams to prototype an app of their own design, first on paper and eventually in Code.org’s App Lab environment. Students explore different systems used to represent information in a computer and the challenges and tradeoffs posed by using them. In the second half of the unit, students learn how collections of data are used to solve problems and how computers help to automate the steps of this process. Students use Code.org’s App Lab environment, in conjunction with the Adafruit Circuit Playground, to explore the relationship between hardware and software. Throughout the unit, students develop prototypes that mirror existing innovative computing platforms, before ultimately designing and prototyping one of their own.
Students will be introduced to programming through the use of the Python programming language. They will learn everything from the very basics up through the start of utilizing loops. If interested in programming, video game making, or even creating an app, this is great class to get the basics down of the essential you will need to know.
Geometry Essentials or Geometry CP or Programming I
NJ Course Code:
Introduction to Programming II is the continuation of the previous class. In this class we change the language to Java and start from the beginning. This class moves at a slightly quicker pace than Programming I because it is assumed that the previous course was successfully completed. In this class we also start at the basics and move through loops. This is meant as a pre-cursor to the AP Computer Science A class, which is also taught in Java. While Introduction to Programming I is not required, students who have taken it previously will find this course more understandable to the pace to be perfect.
Successful completion of CP Geometry or teacher permission to enter the course.
NJ Course Code:
AP Computer Science Principles offers a multidisciplinary approach to teaching the underlying principles of computation. The course will introduce students to the creative aspects of programming, abstractions, algorithms, large data sets, the Internet, cybersecurity concerns, and computing impacts. AP Computer Science Principles also gives students the opportunity to use current technologies to create computational artifacts for both self-expression and problem solving. Together, these aspects of the course make up a rigorous and rich curriculum that aims to broaden participation in computer science.
Introduction to Java Programming, Algebra II Honors and refer to Level Placement Policy
NJ Course Code:
This course prepares students to take the College Board's Advanced Placement Computer Science A exam and it is roughly equivalent to a first semester college course. Students will design and write object-oriented programs to solve stated problems using the AP prescribed subset of the Java language, employing classes, methods, conditionals, loops, arrays, recursion, and sorting/searching algorithms. Working with the designated AP case study provides experience with a large project, and organization and documentation is emphasized. Students who successfully complete the course and the AP exam may receive credit, advanced placement or both.
A computer science course focused around gaming and computational strategy theory. This course will look at gaming, game types, strategy, choice theory, and strategy of game genre. Class will look at the modern gaming world and its implications in modern society.