An introduction to the process of program design and analysis using the Java programming language for High School and Middle School students who have no prior programming experience. Topics to be covered include basic data types and their operators, I/O, control structures (selection, loops), classes (including methods and fields), arrays, and simple sorting and searching algorithms. Additional topics include current events, ethics, and career and educational opportunities in the field.
Students should be comfortable with grade-appropriate reading and mathematics.
This course is similar in content and design to CMU 15-100, an introductory programming and computer science course taught at Carnegie Mellon University, though it has been adapted to the High School and Middle School classrooms. As a consequence, students completing the full course sequence (which should include all High School students and perhaps some highly-motivated Middle School students) should be well-prepared to take the "Computer Science A" Advanced Placement (AP) exam, and thereby obtain college placement or credit for this course.