Short Summary
Class Information
Availability
Contact instructor for scheduling. The course meets once per week.
Times available during the day, afternoons and evenings.
Discounts given if you have a group of students interested in creating a class.
Description
Course Objective
This course is an introduction to the problem-solving and programming methodologies that are fundamental to the study of computer science, while learning about the popular programming language Java. Students gain considerable experience with fundamental language constructs and types, such as expressions, decisions, iteration, functions, structures, and strings.
This course (and those to follow in the sequence) is modeled after a college-level class taught by this instructor but is accessible to students who have never programmed before. This is an excellent course for a student exploring the possibility of becoming a programmer or software engineer, or possibly pursuing a college degree in a Computer Science field.
At the end of each lesson is a programming project for students to work on. These projects are designed to give students practicing using the techniques covered in that lesson.
Students are encouraged to reach out to the instructor with any questions they have about the lesson material or the project. The instructor will typically respond within 24 hours. Students are also encouraged to submit their project code, which the instructor will make comments on and suggest improvements, if needed. The project will be discussed at the beginning of each next lesson.
This course will cover the following topics:
- While loops. Another type of flow-control, the while loop allows your program to repeat a chunk of code or action.
- For Loops, Do-While loops. After seeing what While Loops can do for us, we dive into several other looping structures like the for loop and the do-while loop. We compare the different types of loops and apply them to creating some fun games.
- Random Numbers. Most programming languages provide a way to generate random numbers, which come in handy when writing games or anything modeling things that happen in nature. In this lesson we will see how Java generates random numbers and end up writing a fun number guessing game.
- Methods. Methods (user defined functions) allow the programmer to package code in a reuseable and efficient manner. If you find yourself using a similar chunk of code multiple times throughout your program, methods are the way to go!
- Arrays. We need to be able to store lists of values in an efficient way. Arrays allow us to store larger amounts of data as well as process or work with the data.
- Arrays, Part 2 - Searching and stuff. Now that we're rocking the array, let's see what we can do with them. Search, sort, reverse, find max... and so much more!
- Arrays and Functions. Let's combine the idea of user-defined functions from a few lessons back with arrays and see how they can work well together. We also introduce an interesting programming topic - searching.
NOTE This course also has a Self-Paced option!