Technology II
Course Overview
This semester-long course is focused primarily on computer programming in Javascript. The course teaches how topics like loops, conditionals, and variables apply beyond Javascript, and features lessons on topics like programming with accessibility in mind. Through assignments that constantly reinforce previous lessons a student will learn all the basic principles of computer science, and will touch on more complex subjects like object oriented programming. Throughout the semester students are expected to be able to explain to one another current topics, and will be asked to research and present topics beyond the given curriculum. It culminates in a final project that sees students create a simple game on their own, whose completion requires demonstrating mastery over each of the skills taught throughout the semester.
Course Content
Unit 1: Javascript Basics
In this unit students will familiarize themselves with the basic context of javascript. This focuses on how students can use built in functionality in order to create user viewable content, and how to allow basic interaction with that content. Users will learn about javascript alerts, and prompts, the console log, and basic javascript events like onclick. This allows them to expand on their requisite HTML and CSS programming knowledge in order to create more interactive web pages, while familiarizing themselves with javascript context before delving into core programming concepts. The unit also discusses basic javascript error handling in order to ensure that students are prepared to deal with the many errors that will pop up as they get farther into the coding assignments.
Unit 2: Javascript Coding
In this portion of the class the students begin learning basic programming concepts like loops, conditional statements, user created functions, array creation and the basics of javascript objects. Students will begin with conditional statements, which allows them to create their first simple programs that respond to user inputs differently based on the users choice. This flows into loops, then arrays and, and then goes into user created functions, at which point we will review how what we make contrast vs the javascript provided functions. The unit closes with a discussion of the Javascript DOM, which forces them to review what they have learned throughout the semester but with a higher level of understanding from what we’ve learned over the course of the unit.
Unit 3: Javascript Horizons
This unit sees students going beyond basic javascript programming and learning about some slightly more advanced subjects, including form manipulation, and a multi week unit exploring the canvas object. In this portion of the class the point is to hammered home the fact that the tools available far exceed what is teachable in any one class, thus we spend the time learning how to connect Javascript to forms, a topic they should have learned long before hand, and to the canvas, a new object that they will only begin to fully explore. The majority of the unit is spend on the canvas portion, moving from procedurally generating single lines at fixed points, to creating a simple drawing app in which the user finishes a simple paint like clone, concluding with a final project that sees the students creating a full game. These projects requires making use of each lesson learned throughout the semester, and sees them exploring topics from beyond the stated breadth of the course. They will be asked to explore topics from Javascript beyond the course scope, learning what these features do, why they are needed implementing them into a project, and they will be asked to present the subjects to the class, explaining what they’ve learned and proper use of these functions. They will explore simple animation, movement controls, expand their knowledge of event handlers, touch on sound use, collision detection etc.