Please enable JavaScript to use CodeHS

Standards Mapping

for Texas Computer Science II (2024)

59

Standards in this Framework

59

Standards Mapped

100%

Mapped to Course

Standard Lessons
127.790.d.1.a
identify job and internship opportunities and accompanying job duties and tasks and contact one or more companies or organizations to explore career opportunities
  1. 12.1 Careers and Internships
127.790.d.1.b
examine the role of certifications, resumes, and portfolios in the computer science profession
  1. 12.2 CS Career Preparation
127.790.d.1.c
employ effective technical reading and writing skills
  1. 12.4 Technical Reading, Writing, and Communication
127.790.d.1.d
employ effective verbal and non-verbal communication skills
  1. 12.4 Technical Reading, Writing, and Communication
127.790.d.1.e
solve problems and think critically
  1. 3.1 Introduction to Programming With Karel
  2. 3.6 Top Down Design and Decomposition in Karel
  3. 3.7 Commenting Your Code
  4. 3.16 Karel Challenges
127.790.d.1.f
demonstrate leadership skills and function effectively as a team member
  1. 11.4 Providing Feedback
  2. 12.1 Careers and Internships
127.790.d.1.g
identify legal and ethical responsibilities in relation to the field of computer science
  1. 12.3 Legal and Ethical Responsibilities
127.790.d.1.h
demonstrate planning and time-management skills
  1. 11.2 Planning Your Project
127.790.d.1.i
compare university computer science programs
  1. 12.2 CS Career Preparation
127.790.d.2.a
use program design problem-solving strategies to create program solutions
  1. 3.6 Top Down Design and Decomposition in Karel
127.790.d.2.b
read, analyze, and modify programs and their accompanying documentation such as an application programming interface (API), internal code comments, external documentation, or readme files
  1. 3.7 Commenting Your Code
  2. 5.4 Javadocs and More Methods
127.790.d.2.c
follow a systematic problem-solving process that identifies the purpose and goals, the data types and objects needed, and the subtasks to be performed
  1. 10.1 Activity 1: Introduction to Celebrity
  2. 11.2 Planning Your Project
127.790.d.2.d
compare design methodologies and implementation techniques such as top-down, bottom-up, and black box
  1. 3.6 Top Down Design and Decomposition in Karel
127.790.d.2.e
trace a program, including inheritance and black box programming
  1. 10.4 Activity 4: Extending the Celebrity Class
127.790.d.2.f
choose, identify, and use the appropriate abstract data type, advanced data structure, and supporting algorithms to properly represent the data in a program problem solution
  1. 4.3 Variables and Types
  2. 4.4 User Input
  3. 7.11 HashMaps
  4. 9.2 Linear Search
127.790.d.2.g
use object-oriented programming development methodology, including data abstraction, encapsulation with information hiding, inheritance, and procedural abstraction in program development
  1. 6.1 Introduction to Classes and Objects
  2. 6.5 Writing Classes and Instance Methods
  3. 6.13 Inheritance
  4. 6.14 Class Design and Abstract Classes
127.790.d.3.a
use the principles of software development to work in software design teams
  1. 11.1 Project Overview
127.790.d.3.b
break a problem statement into specific solution requirements
  1. 3.6 Top Down Design and Decomposition in Karel
127.790.d.3.c
create a program development plan
  1. 11.2 Planning Your Project
127.790.d.3.d
code part of a solution from a program development plan while a partner codes the remaining part
  1. 11.2 Planning Your Project
127.790.d.3.e
collaborate with a team to test a solution, including boundary and standard cases
  1. 11.4 Providing Feedback
127.790.d.3.f
develop presentations to report the solution findings
  1. 12.4 Technical Reading, Writing, and Communication
127.790.d.4.a
use programming file structure and file access for required resources
  1. 5.10 File Handling
127.790.d.4.b
acquire and process information from text files, including files of known and unknown sizes
  1. 5.10 File Handling
127.790.d.4.c
manipulate data using string processing
  1. 5.8 String Processing
127.790.d.4.d
manipulate data values by casting between data types
  1. 4.6 Casting
127.790.d.4.e
use the structured data type of one-dimensional arrays to traverse, search, modify, insert, and delete data
  1. 7.2 Introduction to Arrays
  2. 7.3 Using Arrays
  3. 7.4 Enhanced For Loops
  4. 7.6 Arrays vs ArrayLists
127.790.d.4.f
identify and use the structured data type of two-dimensional arrays to traverse, search, modify, insert, and delete data
  1. 7.9 2D Arrays (Matrices or Grids)
  2. 7.10 Traversing 2D Arrays
127.790.d.4.g
identify and use a list object data structure to traverse, search, insert, and delete data
  1. 7.5 ArrayList Methods
  2. 7.7 Additional Loop Examples
  3. 9.2 Linear Search
127.790.d.4.h
differentiate between categories of programming languages, including machine, assembly, high-level compiled, high-level interpreted, and scripted
  1. 4.1 Programming Fundamentals
127.790.d.5.a
develop sequential algorithms using branching control statements, including nested structures, to create solutions to decision-making problems
  1. 4.12 If Statements
127.790.d.5.b
develop choice algorithms using selection control statements based on ordinal values
  1. 6.7 Class Methods and Class Variables
127.790.d.5.c
demonstrate the appropriate use of short-circuit evaluation in certain situations;
  1. 4.14 Short-Circuit Evaluation
127.790.d.5.d
use Boolean algebra, including De Morgan's Law, to evaluate and simplify logical expressions
  1. 4.15 De Morgan's Laws
127.790.d.5.e
develop iterative algorithms using nested loops
  1. 7.9 2D Arrays (Matrices or Grids)
127.790.d.5.f
identify, trace, and appropriately use recursion in programming solutions, including algebraic computations
  1. 7.9 2D Arrays (Matrices or Grids)
127.790.d.5.g
trace, construct, evaluate, and compare search algorithms, including linear searching and binary searching
  1. 9.2 Linear Search
  2. 9.3 Binary Search
  3. 9.6 Advanced: Recursion
127.790.d.5.h
identify, describe, trace, evaluate, and compare standard sorting algorithms, including selection sort, bubble sort, insertion sort, and merge sort
  1. 9.4 Selection Sort
  2. 9.5 Insertion Sort
  3. 9.7 Mergesort
  4. 9.10 Algorithm Performance
127.790.d.5.i
measure time and space efficiency of various sorting algorithms, including analyzing algorithms using "big-O" notation for best, average, and worst-case data patterns
  1. 9.1 What is an Algorithm?
  2. 9.10 Algorithm Performance
127.790.d.5.j
develop algorithms to solve various problems such as factoring, summing a series, finding the roots of a quadratic equation, and generating Fibonacci numbers
  1. 6.4 Writing Classes
  2. 6.7 Class Methods and Class Variables
  3. 9.6 Advanced: Recursion
127.790.d.5.k
test program solutions by investigating boundary conditions; testing classes, methods, and libraries in isolation; and performing stepwise refinement
  1. 3.6 Top Down Design and Decomposition in Karel
127.790.d.5.l
identify and debug compile, syntax, runtime, and logic errors
  1. 5.7 Exceptions
127.790.d.5.m
compare efficiency of search and sort algorithms by using informal runtime comparisons, exact calculation of statement execution counts, and theoretical efficiency values using "big-O" notation, including worst-case, best-case, and average-case time/space analysis
  1. 9.10 Algorithm Performance
127.790.d.5.n
count, convert, and perform mathematical operations in the decimal, binary, octal, and hexadecimal number systems
  1. 2.2 Notational Systems
  2. 2.3 Data Representation
  3. 4.5 Arithmetic Expressions
127.790.d.5.o
identify maximum integer boundary, minimum integer boundary, imprecision of real number representations, and round-off errors
  1. 4.5 Arithmetic Expressions
  2. 7.4 Enhanced For Loops
127.790.d.5.p
create program solutions to problems using a mathematics library
  1. 6.7 Class Methods and Class Variables
127.790.d.5.q
use random number generator algorithms to create simulations
  1. 6.3 Using a Class as a Client
  2. 6.7 Class Methods and Class Variables
127.790.d.5.r
use composition and inheritance relationships to identify and create class definitions and relationships
  1. 6.13 Inheritance
  2. 6.14 Class Design and Abstract Classes
  3. 6.18 Composition
127.790.d.5.s
explain and use object relationships between defined classes, abstract classes, and interfaces
  1. 6.17 Interfaces
127.790.d.5.t
create object-oriented class definitions and declarations using variables, constants, methods, parameters, and interface implementations
  1. 6.7 Class Methods and Class Variables
  2. 6.17 Interfaces
127.790.d.5.u
create adaptive behaviors using polymorphism
  1. 6.15 Polymorphism
127.790.d.5.v
use reference variables for object and string data types
  1. 4.16 Strings
  2. 7.2 Introduction to Arrays
  3. 7.5 ArrayList Methods
127.790.d.5.w
use value and reference parameters appropriately in method definitions and method calls
  1. 6.5 Writing Classes and Instance Methods
  2. 6.6 Getter and Setter Methods
  3. 6.8 Wrapper Classes
  4. 6.12 Objects vs Primitives
127.790.d.5.x
implement access scope modifiers
  1. 6.15 Polymorphism
  2. 7.8 The List Interface
127.790.d.5.y
use object comparison for content quality
  1. 6.12 Objects vs Primitives
127.790.d.5.z
duplicate objects using the appropriate deep or shallow copy
  1. 6.12 Objects vs Primitives
127.790.d.5.aa
apply functional decomposition to a program solution
  1. 3.6 Top Down Design and Decomposition in Karel
  2. 6.1 Introduction to Classes and Objects
  3. 6.6 Getter and Setter Methods
127.790.d.5.bb
create objects from class definitions through instantiation
  1. 6.6 Getter and Setter Methods
127.790.d.5.cc
examine and mutate the properties of an object using accessors and modifiers
  1. 6.6 Getter and Setter Methods