The AP Computer Science Principles course (AP CSP) - Exam Preparation introduces students to the essential concepts of computer science and challenges them to discover how computers and ICT technologies impact the world around us. The main topics include: programming, abstractions, algorithms, large data sets, the Internet, cyber security, and the impact of computing on our everyday life. The course prepares students is designed to be the equivalent of a first-semester introductory college or university computer science course. Course materials are included in the price.
The AP Computer Science Principles (AP CSP) course is complementary to AP Computer Science A. While AP CSA focuses primarily on the technical aspects of Java programming in software development, AP CSP uses programming in Python to solve a wide range of real-world problems and explore the underlying principles of computation across other disciplines.
In the AP Computer Science Principles course, students will use the Python programming language to develop the fundamentals of computational thinking which are vital for success across a wide variety of disciplines. Computational thinking teaches students to recognise and formulate computationally solvable problems, analyze and logically organize data, represent data through abstractions, automate solutions through algorithms, evaluate various possible solutions in order to find the most efficient ones, generalize and transfer processes and solutions to a wide variety of situations. At the end of the course, students will become skilled computational thinkers and as a result will become more tolerant, confident and persistent in dealing with ambiguity, complexity, difficult and open-ended problems. This makes the course unique in its focus on fostering students to be creative and in encouraging them to apply creative processes when designing and implementing innovative solutions.
The AP CSP course is often taken by future IT professionals who want to build a solid understanding of the given field. Furthermore, AP CSP attracts students interested in a wide range of subjects, ranging from science and mathematics to medicine, journalism or even art, who would like to acquire a competitive edge by understanding computer science and the way it relates their particular field as well as to the real world in general.
Professionally trained course instructors guide students through a series of online lectures, readings, forum discussions, design and programming exercises, project assignments, and other materials. Students are assessed through a variety of homework assignments, projects, and exams.
There are two computer science offerings, and students can take either course in any order or concurrently:
■ AP Computer Science A focuses on computing skills related to programming in Java.
■ AP Computer Science Principles provides students with a broad introduction to computer science and how it relates to other fields.
The courses underscore the importance of communicating solutions appropriately and in ways that are relevant to current societal needs. AP Computer Science courses can help address traditional issues of equity, access, and broadening participation in computing while
providing a strong and engaging introduction to fundamental areas of the discipline
AP Computer Science Principles introduces students to the breadth of the field of computer science. In this course, students will learn to design and evaluate solutions and to apply computer science to solve problems through the development of algorithms and programs. They will incorporate abstraction into programs and use data to discover new knowledge. Students will 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.
RECOMMENDED PREREQUISITES
It is recommended that students in the AP Computer Science Principles course have successfully completed a first-year high school algebra course with a strong foundation of basic linear functions, composition of functions, and problem-solving strategies that require multiple approaches and collaborative efforts. In addition, students should be able to use a Cartesian (x, y) coordinate system to represent points on a plane. It is important that students and their advisers understand that any significant computer science course builds upon a foundation of mathematical reasoning that should be acquired before attempting such a course. Prior computer science experience is not required to take this course.
COMPUTER LANGUAGE
AP Computer Science Principles does not have a designated programming language. Teachers have the flexibility to choose a programming language(s) that is most appropriate for their students to use in the classroom.
Recomended course sequence:
Introduction to Programming in Scratch - Digital Information Technology - Foundations of Programming – Procedural Programming – AP Computer Science A – AP Computer Science Principles