FTCE CS Exam Prep
- Level Elementary School, Middle School, High School
- Number of Lessons 137
This is an online professional development course to help prepare teachers for the Florida Teaching Certification Examinations (FTCE) - Computer Science. It covers 100% of the competencies designated for the exam.
To view the entire syllabus, click here or click to explore the full course.
Welcome to the CodeHS FTCE Prep Course!
Welcome to the CodeHS FTCE Prep Course |
Introduction to Programming in Java with Karel the Dog
Introduction to Programming With KarelIn this lesson, students are introduced to CodeHS and how Karel the Dog can be given a set of instructions to perform a simple task.More Basic KarelStudents learn more about Karel and Karel's world. Students learn about walls in Karel's world, the directions Karel can face, and how to identify a location in Karel's world using streets and avenues. In these exercises, students will begin to see the limitations of Karel's commands. Students will need to apply Karel's limited set of commands to new situations. For example, how can we make Karel turn right, even though Karel does not know a turnRight command?Java Programs and the Run MethodThis lesson introduces the run method, which is the place where the program starts running. Students will also learn to write full java program, instead of just writing commands. In the the program below, SquareKarel is the name of the class. When we say extend Karel, it means this is a Karel program like the ones we have already written. ``` public class SquareKarel extends Karel { public void run() { putBall(); move(); turnLeft(); } ```Karel Can't Turn RightStudents will learn how they can create their own commands for Karel by calling and defining methods. Methods allow programmers to create and reuse new commands that make code more readable and scalable.Methods in KarelMethods are used to teach Karel a word or command. Using methods allows students to break down their programs into smaller pieces and make it easier to understand.Top Down Design and Decomposition in KarelIn this lesson, students learn about Top Down Design and Decomposition. Top Down Design is the process of breaking down a big problem into smaller parts.Commenting Your CodeIn this lesson, students learn how to style their programs by including comments. Comments allow students to leave notes on their program that makes it easier for other to read. Comments are written in plain English. Commenting Your Code Example: ``` /* * multi-line comments */ // single line comments ```Super KarelIn this lesson, students are introduced to Super Karel! Since commands like `turnRight()` and `turnAround()` are so commonly used, students shouldn't have to define them in every single program. This is where SuperKarel comes in. SuperKarel is just like Karel, except SuperKarel already knows how to turnRight and turnAround, so students don't have to define those methods anymore. To use SuperKarel instead of Karel, the class that students write extends SuperKarel instead of Karel: ``` public class MyProgram extends SuperKarel { } ```For LoopsIn this lesson students learn how to use for loops in their programs. The for loop allows students to repeat a specific part of code a fixed number of times. For loops are written like this: ``` for(int i = 0; i < 4; i++) { // Code to be repeated 4 times } ```While Loops in KarelIn this lesson, students are introduced a new type of loop: while loops. While loops allow Karel to repeat code *while* a certain condition is true. While loops allow students to create general solutions to problems that will work on multiple Karel worlds, rather than just one.If StatementsIn this lesson, students learn about the conditional statement "if". Code within an "if statement" will only execute IF the condition is true. ``` if (frontIsClear()) { // Code to be executed only if front is clear } ```If/Else StatementsIn this lesson we take a look at more conditional statements, more specifically if/else statements. If/else statements let us do one thing if a condition is true, and something else otherwise. We write if/else statements like this: ``` if(frontIsClear()) { // code to execute if front is clear } else { // code to execute otherwise } ```Control Structures ExampleIn this lesson we take a look at control structures. Some control structures allow us to ask questions: if, if / else statements. Other control structures allow us to repeat code like for loops and while loops. Basically, control structures allow us to control the way the commands execute.More Karel Examples and TestingIn this lesson, we review more lesson in Karel and get extra practice with control structures. Students will continue to see different ways that the if, if/else, while, and for loops affect their code and what Karel can do.How to Indent Your CodeIn this lesson, we review how student should indent their code to make it easier to read. Indenting helps to show the structure of the code.Unit 1 QuizThis lesson is a summative assessment of the unit's learning objectives. |
What is Computing?
History of Computers*When was the first computer made? What did it look like, and what was it used for?* In this lesson, students will explore the creation and evolution of computing machines that now permeate our day-to-day life. **Note:** This course was updated on October 7, 2020. You can find the original material in the Supplemental Module titled "Original Material: What is Computing?"Computer OrganizationHow are computers organized? What are the main components of a computer? In this lesson, we will explore how different organizational structures of computers interact with each other to make computers functional.SoftwareWhat kinds of software do computers use and need? In this lesson, the topic of software is broken down into types of software, how they interact, and the specific functions of the different types of software.HardwareWhat is hardware? How does hardware work? In this lesson, hardware is broken down into the different physical components of computers and how they contribute to the function of the computer as a whole.Future of ComputingWhere is computing headed? What is Artificial Intelligence and what are the potential impacts that this might have on our world? In this lesson, students learn about Artificial Intelligence and how the landscape of computing might change in the future. Students will discuss how these future developments might impact our society.Ethical and Social Implications of ComputingWhat is Computing? Quiz |
Digital Information
What is Code?Intro to Digital InformationNumber SystemsEncoding Text with BinaryHexadecimalPixel ColorsDigital Information Quiz |
The Internet
Welcome to the InternetIn this lesson, students will have a high-level discussion about what the internet is and how the internet works. The topics of anonymity and censorship will also be discussed.Internet HardwareIn this lesson, we explore the hardware that makes up the internet and explore characteristics of that hardware that define our experience on the internet.Internet AddressesIn this lesson, students will explore how internet hardware communicates using Internet Addresses and the Internet Protocol.DNSIn this lesson, students will explore the DNS system and how it maps human readable domain names into actual accessible IP addresses.RoutingIn this lesson, students explore how messages get from one address on the internet to another.Packets and ProtocolsIn this lesson, students learn about the last piece of the puzzle for how the Internet works: Packets and Protocols. All information sent over the internet is broken down into small groups of bits called packets. The format for creating and reading packets is defined by open protocols so that all devices can read packets from all other devices.The Impact of the InternetIn this lesson, students are presented with different ways that the Internet impacts their lives. The Internet affects the way that people communicate (emails, social media, video chat) and collaborate to solve problems. It has revolutionized the way that people can learn and even buy things. Because the Internet is present in almost every facet of people's lives, there are severe ethical and legal concerns that derive from the Internet.The Internet QuizThis lesson is a summative assessment of the unit's learning objectives. |
Software
Operating Systems SoftwareSoftware and Applications |
IT Infrastructure
Start HereInternal ComponentsPeripheral DevicesNetwork DevicesStorage OptionsNetwork OptionsNetwork CommunicationIT Infrastructure Quiz |
Cybersecurity and You
Digital Footprint and ResponsibilityIn this lesson, students explore the impacts of being online. Students reflect on social media use and their digital footprint as well as learn how to identify and respond to cyberbullying.Personal Data and CollectionIn this lesson, students explore the complex world of data collection. Students learn about the types of data that companies collect and what they do with it. Students also consider the ethics of data collection by working through a scenario about location tracking in school. Lastly, students learn about privacy within the context of law.Cyber Ethics and LawsBy the end of this lesson, students should have a better understanding of cyberethics, responsible internet use, and the impact of copyright and licenses on the digital world. They should also be more aware of the potential consequences of unethical online behavior.Personal Data SecurityIn this lesson, students learn about the importance of personal data security and explore different forms of authentication and browser security settings. Students then consider the tradeoffs between ease of use and security when implementing different authentication methods.Cybersecurity EssentialsIn this lesson, students are introduced to the core concepts of cybersecurity, focusing on the importance of protecting information and devices in the digital world. Students will explore key vocabulary terms, security frameworks, and the potential risks associated with the Internet of Things (IoT).Common Cyber Attacks and PreventionIn this lesson, students will learn how to navigate the digital world safely by understanding common cyber threats and implementing protective measures. Through interactive activities and creative storytelling, students will explore various cyberattacks, their consequences, and strategies for defense. This awareness will empower them to make responsible choices online and protect themselves from cybercrime.Cybersecurity and You QuizIn this lesson, students complete a summative assessment of the module's learning objectives. |
Creative Development
Intro to Design ThinkingPrototypeTest |
Collaboration in Computer Science and Assessment Strategies
Collaboration in Computer ScienceCollaboration StrategiesAssessing Student MasteryAssessing with Rubrics |
Inclusive Strategies and Career Readiness in Computer Science
Inclusive Instructional StrategiesCareer Readiness |
Scratch
An Introduction to ScratchBuilding Your First Scratch ProjectEvent-Driven ProgrammingScratch Quiz |
Debugging in Java
Basic Debugging in JavaDebugging ToolsDebugging TechniquesCommon Java ErrorsCommon Compiler ErrorsJava Outside of CodeHS |
Basic Java
Programming LanguagesOrganizational TechniquesPrinting in JavaVariables and TypesUser InputArithmetic ExpressionsCastingMid Unit QuizBooleansLogical OperatorsComparison OperatorsIf StatementsFor LoopsWhile LoopsNested IterationsLoop-and-a-HalfShort-Circuit EvaluationDeMorgan's LawsString TypesBasic Java Quiz |
Methods
Java MethodsMethods and ParametersMethods and Return ValuesJavadocs & More MethodsString MethodsExceptionsMethods Quiz |
Classes and Object-Oriented Programming
Intro to Classes and ObjectsClasses vs. ObjectsUsing a Class as a ClientWriting ClassesWriting Classes and Instance MethodsGetter and Setter MethodsClass Methods and Class VariablesMethod OverloadingLocal Variables and ScopeKey Terms for ClassesObjects vs. PrimitivesInheritancePolymorphismClasses and OOP Quiz |
Data Structures
What are Data StructuresIntroduction to ArraysUsing ArraysEnhanced for Loops2D ArraysTraversing 2D ArraysHashMaps, Stacks, and QueuesData Structures Quiz |
Algorithms and Recursion
What is an Algorithm?In this lesson, students will learn about the basics of algorithms, how they are used in programming, and how algorithms exist in their daily life outside of computer science.Linear SearchIn this lesson, students are exposed to the first classic Search algorithm, Linear Search. Students will learn how to code Linear Search, and understand the use and limitation of this algorithm.Binary SearchIn this lesson, students learn another algorithm for searching, Binary Search. Students will compare Binary Search to Linear Search, and discuss the reasons why they might need multiple ways to search a list.Selection SortIn this lesson, students learn the basics of sorting. As learned in the previous lesson, Binary Search is a useful search method, but it's limited by the fact that the lists it searches need to be sorted. In this lesson, students learn that Selection Sort is one way they can sort lists in order to effectively use Binary Search.Insertion SortStudent learn a new sorting method, Insertion Sort. As learned in the previous lesson, Binary Search is a useful search method, but it's limited by the fact that the lists it searches need to be sorted. In this lesson, students learn that Insertion Sort is another way they can sort lists in order to effectively use Binary Search.RecursionIn this lesson, student learn the concept of recursion. Recursion is the idea that functions can call themselves *within* the function. This creates an iterative process that allows functions to iterate without using for or while loops, but only conditional statements. Students will practice using recursion, and model it with real world scenarios.MergesortStudents will learn about a third sorting algorithm, Merge sort. Merge sort uses recursion to break down lists into sublists, and sorts those sublists until the entire list is sorted. Students will compare Merge sort to other sorting methods that they've learned.Informal Code AnalysisAlgorithms and Recursion QuizThis lesson is a summative assessment of the unit's learning objectives. |
Preparing for the Exam
Mock ExamCompetency/Standard-Based QuizzesFlashcards - Quizlets |
Final Task
Congratulations! |
FTCE CS Exam Prep is aligned with the following standards
Standards Framework | View Alignment |
---|---|
Florida Teacher Certification Exam | View (100%) |