Enroll now and take 20% off your spring course using coupon KTSPRING25

Intro to Computer Science with Java

[CORE 4a]

Full Course

$1359 USD
Before any discounts or coupons
for 18 hours and additional live student help hours

Class Description:

This is our core introductory high school-level course in computer science, taught in Java. Students learn through hour-long lectures including notes on new concepts and demo projects. Although students still focus on making fun projects alongside graded problem sets, they may find it beneficial to attend our student help hours to cement their skills. After 6 months - 1 year of our classes, students will be coding at a college level.

Prerequisites:

Age 13+ or instructor approval, 30 wpm minimum typing speed, 6th grade math proficiency

Syllabus:

Variables and Data Types

Students delve into the fundamental concepts of programming, exploring variables, and operations. The lesson covers variable types, classic math operators, and introduces the Processing Java library through a basic project demonstration.

Booleans and If Statements

Students grasp the concept of boolean values and learn to implement if-else statements. The lesson includes an introduction to boolean comparators, conjunctions, and PImages for image handling in Processing. Students will use their new learnings to program a chasing game.

More If Statements

After reviewing if-else statements from the previous lesson, students review conditionals and delve into else-if statements. The lesson includes a demo of a stop-timing game that incorporates PImage, conditional statements, and basic Processing visual functions.

Arrays

Students begin by reviewing data types covered in the first lesson. Afterwards, they learn about arrays, elements, indices, and array manipulation. The lesson includes a fun piano demo.

For Each Loops

The lesson begins with a quick array review. Then students are introduced to for each loops for efficient array traversal. Syntax and application of for each loops are covered, followed by practice problems. The demo involves creating a reaction time game using for each loops with arrays.

For Loops with Arrays

Students are introduced to while loops and for loops, and they learn about the advantages and disadvantages to each. The demo showcases a color bands project utilizing for loops, arrays, and Processing visuals.

For loops

The lesson explores for loops without arrays, emphasizing counting and repetitive tasks. Practice problems cover for loop counting, divisibility, summing, and even/odd scenarios. Students use their learnings to implement a starfield demo.

Functions with Inputs

Students learn about functions as reusable code chunks, understanding their components such as name, return type, and inputs. The lesson explores built-in functions with inputs and includes a demo of a random dots project using functions and for loops.

Midterm Project

The lesson introduces the midterm project, where students implement a greeting card program. This project reinforces concepts that students have learned throughout the semester.

Functions with Outputs

This lesson introduces functions with outputs. The demo involves a number guessing game where students apply their knowledge of functions.

Arrays and Functions

The lesson involves a comprehensive review of arrays, for and for each loops. Students engage in a variety of difficult problems that challenge them to think beyond introductory problems that they’ve seen in class so far.

Classes

In this lesson, students get their first taste of object-oriented programming. The lesson covers classes, properties, constructors, and methods. The demo includes a bubbles project utilizing classes, for loops, and functions.

More Classes, Sprites

This lesson introduces students to the Sprite class, which enables students to create image objects that can move around and interact with the canvas. This lesson is critical, as students will need to use Sprite objects for their final projects. As part of the demo, students implement a coin collector project.

Game Demo

This lesson introduces students to various concepts that are critical to developing smooth, functioning games. This lesson will be incredibly useful for students interested in designing a game for their final project.

Final Project

Students share their project proposals with their classmates and receive feedback on their ideas. Students also receive guidance on implementation of the ideas within their projects.

Final Project

These lessons provide dedicated work time for students to progress with their projects. Instructors will make time to check in with each student about their progress. Students will learn to set goals for their projects.

Final Project

The final lesson involves the presentation of final projects, with each student sharing their project and explaining their ideas to the class. Each presentation includes a mini Q+A session. Students may spend time interacting with each project if time permits.