CSAwesome2 Notes
- Syllabus
- CSAwesome2 online curriculum
- Java Quick Reference
- AP Scoring Guidelines
- Setting up a Local Java Environment
1 Using Objects and Methods
- Introduction to Algorithms, Programming, and Compilers
- Variables and Data Types
- Expressions and Output
- Assignment and Input
- Casting and Ranges of Values
- Compound Assignment Operators
- APIs and Libraries
- Documentation with Comments and Preconditions
- Method Signatures
- Calling Class Methods
- Using the
MathClass - Objects - Instances of Classes
- Creating and Initializing Objects: Constructors
- Calling Instance Methods
- Strings
2 Selection and Iteration
- Algorithms with Selection and Repetition
- Boolean Expressions
ifStatements- Nested
ifStatements - Compound Boolean Expressions
- Comparing Boolean Expressions (De Morgan’s Laws)
- While Loops
- For Loops
- Implementing Selection and Iteration Algorithms
- Implementing String Algorithms
- Nested Iteration
- Informal Runtime Analysis of Loops
3 Class Creation
- Abstraction and Program Design
- Impact of Program Design
- Anatomy of a Java Class
- Writing Constructors
- Methods: How to Write Them
- Methods: Passing and Returning References of an Object
- Class (static) Variables and Methods
- Scope and Access
thisKeyword
4 Data Collections
- Ethical and Social Issues Around Data Collection
- Data Sets
- Array Creation and Access
- Array Traversals
- Implementing Array Algorithms
- Using Text Files
- Wrapper Classes - Integer and Double
- ArrayList and its Methods
- ArrayList Traversals
- Implementing ArrayList Algorithms
- 2D Array Creation and Access
- 2D Array Traversals: Nested Loops
- Implementing 2D Array Algorithms
- Searching Algorithms
- Sorting Algorithms
- Recursion
- Recursive Searching and Sorting