Please enable JavaScript to use CodeHS

Standards Mapping

for California 9-12


Standards in this Framework


Standards Mapped


Mapped to Course

Standard Lessons
Design algorithms to solve computational problems using a combination of original and existing algorithms.
  1. 2.9 For Loops
  2. 2.10 While Loops
  3. 3.2 Methods and Parameters
  4. 3.3 Methods and Return Values
  5. 4.1 Introduction to Classes and Objects
  6. 4.2 Classes vs. Objects
  7. 6.1 Writing BlackJack
  8. 8.2 Linear Search
  9. 8.3 Binary Search
  10. 8.4 Selection Sort
  11. 8.6 Advanced: Recursion
  12. 8.7 Mergesort
  13. 11.1 Pokemon Simulation
  14. 12.1 Mad Libs
Create more generalized computational solutions using collections instead of repeatedly using simple variables.
  1. 3.1 Java Methods
  2. 3.2 Methods and Parameters
  3. 3.3 Methods and Return Values
  4. 4.4 Writing Classes
  5. 4.5 Writing Classes and Instance Methods
  6. 5.2 Introduction to Arrays
  7. 5.3 Using Arrays
  8. 5.6 Arrays vs ArrayLists
Justify the selection of specific control structures by identifying tradeoffs associated with implementation, readability, and performance.
  1. 1.13 Control Structures Example
  2. 2.9 For Loops
  3. 2.10 While Loops
  4. 2.11 If Statements
  5. 2.12 Loop-and-a-Half
  6. 2.13 Short-Circuit Evaluation
Iteratively design and develop computational artifacts for practical intent, personal expression, or to address a societal issue by using events to initiate instructions.
Decompose problems into smaller subproblems through systematic analysis, using constructs such as procedures, modules, and/or classes.
  1. 3.1 Java Methods
  2. 3.2 Methods and Parameters
  3. 3.3 Methods and Return Values
  4. 4.2 Classes vs. Objects
  5. 4.4 Writing Classes
  6. 4.5 Writing Classes and Instance Methods
Create computational artifacts using modular design.
  1. 4.2 Classes vs. Objects
  2. 4.3 Using a Class as a Client
  3. 4.9 Method Overloading
  4. 4.14 Class Design and Abstract Classes
  5. 5.3 Using Arrays
  6. 5.5 ArrayList Methods
  7. 5.6 Arrays vs ArrayLists
Systematically design programs for broad audiences by incorporating feedback from users.
Explain the limitations of licenses that restrict use of computational artifacts when using resources such as libraries.
Iteratively evaluate and refine a computational artifact to enhance its performance, reliability, usability, and accessibility.
  1. 3.2 Methods and Parameters
  2. 3.3 Methods and Return Values
  3. 4.7 Class Methods and Class Variables
  4. 4.9 Method Overloading
  5. 4.14 Class Design and Abstract Classes
Design and develop computational artifacts working in team roles using collaborative tools.
Document decisions made during the design process using text, graphics, presentations, and/or demonstrations in the development of complex programs.
  1. 1.7 Commenting Your Code
Describe ways in which abstractions hide the underlying implementation details of computing systems to simplify user experiences.
  1. 1.8 Super Karel
  2. 4.14 Class Design and Abstract Classes
Compare levels of abstraction and interactions between application software, system software, and hardware.
Develop guidelines that convey systematic troubleshooting strategies that others can use to identify and fix errors.
  1. 1.6 Top Down Design and Decomposition in Karel
  2. 1.7 Commenting Your Code
  3. 1.15 How to Indent Your Code
Create data visualizations to help others better understand real-world phenomena.
Refine computational models to better represent the relationships among different elements of data collected from a phenomenon or process.
Translate between different representations of data abstractions of real-world phenomena, such as characters, numbers, and images.
  1. 2.2 Variables and Types
  2. 2.5 Casting
  3. 6.1 Writing BlackJack
Describe ​​tradeoffs​ associated with​ ​how​ ​data elements​ ​are​ ​organized​​ and ​stored.
  1. 5.1 What are Data Structures?
  2. 5.2 Introduction to Arrays
  3. 5.6 Arrays vs ArrayLists
  4. 5.9 2D Arrays (Matrices or Grids)
  5. 5.11 HashMaps
Evaluate the ways computing impacts personal, ethical, social, economic, and cultural practices.
Identify impacts of bias and equity deficit on design and implementation of computational artifacts and apply appropriate processes for evaluating issues of bias.
Demonstrate ways a given algorithm applies to problems across disciplines.
Study, discuss, and think critically about the potential impacts and implications of emerging technologies on larger social, economic, and political structures, with evidence from credible sources.
Use collaboration tools and methods to increase connectivity with people of different cultures and careers.
Explain the beneficial and harmful effects that intellectual property laws can have on innovation.
Explain the privacy concerns related to the collection and generation of data through automated processes.
Evaluate the social and economic implications of privacy in the context of safety, law, or ethics.
Describe issues that impact network functionality.
Describe the design characteristics of the Internet.
Compare and contrast security measures to address various security threats.
Compare and contrast cryptographic techniques to model the secure transmission of information.