In Tynker’s latest beginner-friendly high school course, students will explore programming by problem-solving with Java, a language that’s widely used in introductory college computer science courses and the burgeoning high-tech industry.
This AP-aligned preparatory course is a rigorous but patient, step-by-step course designed with no prerequisites. The course is for all academically prepared high-school readers, with hands-on exercises exploring design strategies and methodologies, data structures, and the ethical and social implications of computing.
But Why Learn Java?
Java is what’s called an object-oriented programming language. By learning to problem-solve using this paradigm, you’ll become a much stronger programmer.
And of course, Java remains an extremely popular choice among Computer Science 101 college courses.
But Java is also just a fantastic, useful tool. Millions of coders make a living programming Java. Starting to wonder what you could create with Java?
- Cool apps like Spotify and Twitter as well as groundbreaking companies like Google and IBM regularly create new services and apps using Java.
- Nearly any cross-platform application you can imagine uses Java: Business, Games, Big Data, and more.
- Android apps are also written in Java.
Java is a mature language, so it has a fantastic set of tools for nearly any discipline, including Data Visualizations and Statistics. If you want to make real-world apps and get serious about computer science, learning Java is a great choice.
What’s Inside?
In this unofficial AP Prep class, you’ll explore the basics of Java programming while preparing for the College Board’s classic yearlong course. You can even take the class as a self-study over the summer.
The perfect way to prepare, this course is available to ALL Tynker Home users. Even if you don’t plan to take the AP Exam, you’ll have covered more than 70% of the requirements of the Advanced Placement Computer Science A curriculum, studying from a College Board-approved and aligned curricula.
Engaging visual examples, as well as creative coding challenges in Tynker’s unique Introduction to Java course, keep things exciting:
- Movement Puzzles for the Basics. Simple puzzles help students get familiar with Java syntax.
- Code Stepper: Watch How the Computer Runs Code. Students watch line-by-line execution of their code to understand exactly how the computer works.
- Canvas Drawing Puzzles. Students learn about object-oriented programming fundamentals by drawing colorful shapes on a canvas.
- Creative Coding Challenges. Hands-on coding labs will have students practicing with common “standard algorithms,” like searches, sorts, and traversals.
Tell Me More!
Let’s take a look at what you’ll learn in Introduction to Java:
Unit 1: Java Basics
In the first Unit, students get familiar with the course and explore basic Java syntax.
Unit 2: Abstraction and Methods
Students explore methods, a way to keep code organized and repeatable.
Unit 3: Variables and Data Types
Students dive deeper into the idea of variables, exploring how Java encodes information as well as the binary number system. Students will learn key concepts like variable initialization, declaration, data types, bits, bytes, and more.
Unit 4: Expressions and Operators
One powerful aspect of computing is the ability to perform many calculations at once. An expression is a bit of code that represents a value (or can be computed to a single value). In this lesson, students learn how to create their own useful expressions.
Unit 5: Objects
Students learn about object-oriented programming, including the relationship between a class and an object, while creating their own custom types. In this way, students learn how object-oriented programming can make for more general solutions to problems.
Unit 6: Strings
A string is what programmers call any text-based information longer than a single character. For example, “Greetings” and “Game Over” are examples of strings. Explore topics like concatenation, string traversals, and more.
Unit 7: Booleans and If Statements
Students learn about true-and-false values, digital logic, and how to make their programs “make decisions” using control structures like if statements. This unit also explores the idea of selection to handle a wider variety of inputs and conditions.
Unit 8: While Loops
In a while loop, code is repeated, as long as some condition is true. This approach allows for flexibility in responding to a changing situation. Explore how to take control of loops while solving drawing puzzles.
Unit 9: For Loops
Students explore another common way to iterate code: the for loop. This construct is a convenient way to repeat when you know how many times you want a block of code to be executed. Students also explore accumulating, filtering, and mapping, using some classic CS brainteasers like FizzBuzz.
Unit 10: Lab — Algorithms Challenge
Get familiar with so-called “Standard Algorithms” with some more hands-on practice. Experiment with efficiency and informally compare algorithm speed.
Unit 11: Classes
A deeper dive into object-oriented programming, covering topics like classes, data, constructors, and methods.
Unit 12: Array Basics
Students learn about the array, which can be used to manage large amounts of data in a single variable. Students will also learn about array operations and process the data found in arrays using selection and iteration.
Unit 13: Array Applications
Students explore practical applications of arrays, as well as additional methods for array processing. For example, they’ll use arrays to explore global temperature data from NASA and create simple bar charts to visualize patterns in the data.
Unit 14: Lab — Array Challenges
Students practice with a sequence of Array programming challenges, which will require them to invent their own algorithms for array traversal and processing.
Unit 15: Inheritance
Students explore the idea of class hierarchy and inheritance patterns with hands-on exercises using superclass and subclass.
Unit 16: Capstone Project
In this scaffolded but open-ended prompt, students will develop their own original program, making choices about the purpose of their program and what its functionality will be. After several work periods, students will take a break and write about the program they made, as well as the lessons they learned.
Other Advanced Courses on Tynker
Introduction to Java is the latest addition to Tynker’s high-school level courses that are available to home users. Take a look at what else we’re offering!
- Data Science 1 – In this introductory course, you’ll explore science, sports, politics, climate change, and much more. You’ll learn how to interrogate a data set, just like a data pro, using Python, matplotlib, pandas, and more.
- Introduction to Programming and Art – Get introduced to art, design, and animation principles using Processing, a programming language designed for the visual arts community.
- Python 1 – Learn to code browser-based games using Python, pen drawing, and Turtle graphics.
- Python 2 – Learn to solve real-world problems with a fast-paced introduction to Python.
- JavaScript 1 – Learn to code fun browser-based games using JavaScript and HTML canvas. Build 11 mini-games like Snake and Pong!
- Intro to Web Development – Learn to create responsive web pages using HTML and CSS.
We can’t wait to see what your child will create with code!