Please enable JavaScript to use CodeHS

Standards Framework

for Virginia Computer Science Programming NCTE 2025

28

Standards in this Framework

Standard Description
PRG.AP.1c Decompose large-scale computational problems into subtasks and component processes and inter-relationships.
PRG.AP.1d Implement and evaluate abstractions based on their modularity, reusability, and readability.
PRG.AP.2a Read and interpret algorithms expressed using plain language and pseudocode. Read and write programs that include compound conditional execution.
PRG.AP.2b Read and write programs that accept input from a variety of sources and produce output based on that input.
PRG.AP.2c Read and write programs that include pre-defined and self-defined procedures.
PRG.AP.2d Read and write programs that include functions with/without parameters, and functions with/without return values.
PRG.AP.2e Read and write programs that consist of modular division, random number generation, substring manipulation, and processing of individual characters.
PRG.AP.2f Integrate external code with Application Programming Interface (APIs) and library calls.
PRG.AP.3a Trace the execution of iterative and recursive algorithms, illustrating output and changes in values of named variables.
PRG.AP.3b Develop and systematically use a series of test cases to verify that a program performs according to its design specifications, including edge cases and all branches.
PRG.AP.3c Use code review to evaluate the correctness, readability, and usability of a program.
PRG.AP.3d Use debugging tools and user feedback to refine programs.
PRG.AP.3e Modify existing program to improve functionality.
PRG.AP.4a Use linear data structures: arrays, lists, and non-linear data structures.
PRG.AP.4b Evaluate and convert data structures when appropriate.
PRG.AP.4c Read and write programs that store, process, and manipulate 1D and 2D collections.
PRG.AP.5a Define the role of inheritance, polymorphism, and encapsulation in object-oriented programming languages.
PRG.AP.5b Use classes with instance data and methods to satisfy a design specification.
PRG.AP.5c Organize programs methodically using comments and other organizational structures so that others can understand, interpret, and modify the program.
PRG.AP.6a Explain the software life cycle and how it applies to the iterative design process.
PRG.AP.6b Justify and communicate decisions and design elements.
PRG.CYB.1d Describe the impact of software vulnerabilities.
PRG.DA.1a Identify and compare data organization methods: variables, arrays, lists, trees, and schemas.
PRG.DA.2c Collect, use, and manipulate data from a variety of types and structures.
PRG.DA.2d Utilize data analysis to create programmatic solutions and draw conclusions based on the results.
PRG.DA.3a Use the data cycle in the collection and processing of data as part of the development of a program.
PRG.DA.3b Describe how the data collection process should be focused, relevant, and limited to the scope of the project.
PRG.DA.4e Apply mathematical operations and algorithms to manipulate and extract insights from data sets.