Tennessee Coding II
- Level High School
- Contact Hours 150
- Timeframe Year
The Tennessee Coding II course builds on foundational programming skills to prepare students for professional software development practices. The course focuses on software development environments, life cycle methodologies, object-oriented design, testing strategies, and technical documentation.
To view the entire syllabus, click here or click to explore the full course.
MODULES - 11
Students will explore software development environments, data processing, and the software development life cycle while connecting each concept to real-world engineering workflows.
Students will deepen their understanding of Java by writing programs that use variables, data types, expressions, and input/output to solve practical problems.
Students learn the fundamentals of writing and running Java programs, including how to use variables, data types, expressions, and input/output. They are also introduced to classes, and learn how to create objects and call methods, including those from built-in classes such as Math and String.
Students learn how to control the flow of a program using conditional statements and loops. They develop Boolean expressions, use relational and logical operators, and write selection statements with if, if-else, and if-else-if. Students also explore iteration through while and for loops, including nested and compound iterations.
Students learn how to design and implement classes using principles of object-oriented programming. They explore encapsulation, access control, and the structure of classes with instance variables, constructors, and methods. Students write accessor and mutator methods, define behaviors using parameters and return values, and understand how object references are passed and returned.
Students learn how to work with collections of data using arrays, ArrayList objects, and 2D arrays. They develop and analyze algorithms that involve searching, sorting, traversing, and manipulating elements in these structures. Students also explore reading data from text files and using wrapper classes to convert between primitive types and objects.
Students learn how to recognize common attributes and behaviors that can be used in a superclass and create hierarchies by writing subclasses to extend a superclass.
Students will apply object-oriented programming concepts to build and refine larger Java projects that integrate multiple classes, features, and data structures in realistic scenarios.
Students are introduced to the mobile apps course and the React Native framework and its program structure and syntax. Students also preview some of the tools and technologies they will use to build and run their apps.
Students learn how to use state values and how to update the state of their app in various ways to create quick, dynamic programs. They will learn how mathematical equations and string methods can be used to alter values as the user interacts with their programs.
Students use everything they have learned in this course to design, prototype, and code their own custom app and present it to their class In this project-facing module.
Explore programs that your students will build throughout this course!
Here are a few examples of teacher resources and materials to use in the Tennessee Coding II course
| Standards Framework | Alignment |
|---|---|
| Tennessee Coding II | 100% View |
| Tennessee Teen Social Media and Internet Safety Guidance | 100% View |
Create and organize Assignments in any CodeHS course that you're teaching. You can even add custom assignments to pre-existing CodeHS courses.
Learn MoreDidn't find what you were looking for? Here are a few links that might be useful to you.