Information & Communication Technologies Pathway
-
Computer Science Principles
Grades 10-12
UC/CSU - G Elective approved course
Prerequisite: Completion of Geometry
Course Objectives:- Understand and apply the main principles of algorithm design and programming: loops,
variables, arrays, lists, recursion, objects and Boolean logic. - Learn to code fluently in Python in a well-structured fashion and in good style; learn to pay attention to code clarity and documentation.
- Understand the concept of an algorithm; implement algorithms in SNAP! & Python using conditional and iterative control structures and recursion.
- Learn to select appropriate algorithms and data structures to solve a given problem.
- Learn about the history, social implications, future of computing, applications that have changed the world, and progress in other fields that has resulted from computers and programming.
- The course will be taught with the assistance of TEALS (https://www.tealsk12.org).
AP Computer Science A
Grades 11-12
UC/CSU - C Mathematics approved course
Prerequisite: Completion of Algebra 2
This course is designed to teach the fundamentals of the Java programming language, teach you to think like a software designer, and prepare you for the AP exam. This course will be taught using the Java programming language. Java is a good language for new programmers. This is a college level course. Course Objectives:- Understand and apply the main principles of object-oriented software design and programming: classes and objects, constructors, methods, instance and static variables, inheritance, class hierarchies, and polymorphism.
- Learn to code fluently in Java in a well-structured fashion and in good style; learn to pay attention to code clarity and documentation.
- Learn to use Java library packages and classes within the scope of the AP Java subset.
- Understand the concept of an algorithm; implement algorithms in Java using conditional and iterative control structures and recursion.
- Learn to select appropriate algorithms and data structures to solve a given problem.
- Learn common searching and sorting algorithms: Sequential Search and Binary Search; Selection Sort, Insertion Sort, and Mergesort
- Understand one- and two-dimensional arrays, the List interface, and the ArrayList class, and use them appropriately in programming projects
- Acquire skills in designing object-oriented software solutions to problems from various application areas
- Learn the case studies and accompanying exercises and questions provided by the College Board.
- Understand and apply the main principles of algorithm design and programming: loops,