Please enable JavaScript to use CodeHS

Florida Teacher Certification Exam Framework


Standard Description
1.1 Analyze a problem and apply appropriate solution strategies. Lessons
1.2 Apply the steps of algorithmic problem solving when designing solutions to problems. Lessons
1.3 Apply the stages of the software development life cycle (i.e., problem definition, analysis, design, testing, implementation, maintenance). Lessons
1.4 Determine and select an appropriate algorithm for a given problem. Lessons
1.5 Predict outputs of algorithms for a given input. Lessons
1.6 Identify an appropriate set of data necessary for testing a computer solution. Lessons
2.1 Distinguish between constants and variables and between local and global identifiers. Lessons
2.2 Distinguish between integer, real number, character, string, Boolean, and object data types. Lessons
2.3 Recognize and convert between binary, decimal, and hexadecimal number systems. Lessons
2.4 Identify characteristics and uses of data structures, including arrays, linked lists, stacks, queues, and sets. Lessons
2.5 Distinguish between instance, class, and local variables in an object-oriented design. Lessons
2.6 Identify components of class declarations for an object-oriented program and distinguish between public and private access specifiers. Lessons
3.1 Distinguish between error types (e.g., syntax, runtime, logic) and apply principles of debugging. Lessons
3.2 Identify principles, characteristics, and uses of internal and external program documentation. Lessons
3.3 Analyze the characteristics and functions of object-oriented and procedural languages. Lessons
3.4 Select the appropriate algorithmic sequence, conditional, iteration, and recursive constructs for a given purpose. Lessons
3.5 Analyze characteristics and applications of searching (i.e., sequential, binary) and sorting (i.e., selection, insertion, merge) algorithms. Lessons
3.6 Analyze the characteristics and applications of propositional logic (e.g., De Morgan's laws). Lessons
4.1 Identify characteristics and apply concepts of the Scratch™1 programming language learning environment from the MIT Media Library. Lessons
4.2 Analyze segments of Java®2 code containing sequential, conditional, or iteration statements. Lessons
4.3 Analyze segments of Java® code involving methods, interacting objects, or passing parameters. Lessons
4.4 Apply principles of data types and data manipulation (e.g., string methods, arithmetic operations) in the Java® programming language. Lessons
4.5 Apply principles of abstraction, encapsulation, inheritance, and polymorphism in the Java® programming language. Lessons
5.1 Identify the hardware components of a computer system and their functions (e.g., input, output, processing, storage). Lessons
5.2 Analyze the advantages, disadvantages, or both of various data storage technologies. Lessons
5.3 Identify the characteristics and uses of various types of software (e.g., system, application). Lessons
5.4 Apply features and functions of application and productivity software (e.g., word processing, spreadsheet, database, multimedia authoring, Web development software). Lessons
5.5 Identify concepts and terminology related to networks (e.g., network protocols, Open Systems Interconnection model, client-server, cloud computing). Lessons
5.6 Identify characteristics and uses of network devices (e.g., servers, routers, switches, access points, workstations). Lessons
6.1 Identify examples of appropriate use (e.g., software license types, archival copying, fair use of copyrighted materials) and misuse (e.g., plagiarism, music and video piracy) of intellectual property. Lessons
6.2 Identify milestones in the historical development of computer technology and important contributions of individuals or groups to the development of computer technology. Lessons
6.3 Analyze cultural, legal, and ethical issues and responsibilities of digital citizens, organizations, and government entities (e.g., privacy issues related to Internet use, data protection). Lessons
6.4 Analyze issues related to malicious software, social engineering, and security awareness. Lessons
6.5 Identify concepts and terminology related to security countermeasures (e.g., firewalls, antivirus programs, filtering software, encryption) that prevent, detect, and correct breaches. Lessons
6.6 Analyze security issues related to maintaining the confidentiality, integrity, and availability of information. Lessons
7.1 Apply appropriate and effective classroom management strategies for teaching computer science (e.g., laboratory work, cooperative learning, electronic communications). Lessons
7.2 Apply appropriate and effective instructional strategies for teaching computer science (e.g., independent learning, case studies, role-playing, manipulatives, visualizations, simulations, modeling, team software development). Lessons
7.3 Apply appropriate and effective formative and summative assessment strategies for teaching computer science (e.g., rubrics, portfolios). Lessons
7.4 Apply appropriate and effective accommodations, adaptations, and strategies that ensure the equitable use of technology for diverse student populations (e.g., students with exceptionalities, English language learners, students from various socioeconomic levels). Lessons
7.5 Determine characteristics and apply uses of instructional technologies (e.g., collaborative online tools, social networking, computer-based learning, mobile devices). Lessons
7.6 Recognize opportunities, skills, and paths related to college and career readiness in the field of computer science. Lessons
7.7 Apply practices for planning and developing curricula that meet state and national standards and recognize resources for ongoing professional support and development. Lessons