Introduction To Java and Object-Oriented Programming: Instructor
Introduction To Java and Object-Oriented Programming: Instructor
Instructor
Brandon Krakowsky, Lecturer at the School of Engineering and Research & Education
Director at the Wharton School
Course Description
This course provides an introduction to the Java language and object-oriented
programming, including an overview of Java syntax and how it differs from a language
like Python. Students will learn how to write custom Java classes and methods, and
how to test their code using unit testing and test-driven development. Topics include
basic data structures like Arrays and ArrayLists and overloading methods.
Intended Audience
This course is intended for students and professionals who have minimal or no prior
programming exposure. It’s for motivated learners who have experience with rigorous
coursework, and are looking to gain a competitive edge in advancing their career.
Course Prerequisites
● High school or college math.
● “Introduction to Python Programming” Coursera course or equivalent prior
knowledge of basic programming concepts.
Module 2: U
nit Testing, Arrays, & ArrayLists
● Learning Outcomes
○ Test code by applying principles of test-driven development using Java's unit
testing framework
○ Create multi-dimensional Arrays to store collections of items
○ Discover Java's Collection Framework using ArrayLists
○ Apply the toString method to print objects and the equals method to compare
objects
○ Write a program to manage seats in a classroom of students
● Topics
○ Unit Testing
○ About Equality
○ Arrays
○ Collections: ArrayLists
○ About ToString
Module 3: S
tatic Variables, Methods, & Polymorphism Using Overloading
● Learning Outcomes
○ Differentiate the use cases for instance variables and static variables
○ Define static helper methods in a class
○ Define static variables to store hard-coded information
○ Manipulate static variables to share data across instances of a class
○ Discover polymorphism and write a program illustrating method overloading
○ Design a customer tracking system using static variables and methods
Course Assessment
This course will use a variety of assessments. Ungraded code-along videos allow
students to practice along with the instructor, and self-assess their ability to apply the
concepts and skills they learned, before attempting the graded assessments. Graded
assessments include:
● Quizzes to check your knowledge in each module
● Programming assignments to test your level of understanding
To earn a certificate in this course, learners must earn a passing score on all
assessments:
● Homework Assignments: 60% or above
● Quizzes: 75% or above
Recommended Resources
● Head First Java, by Kathy Sierra:
https://www.amazon.com/Head-First-Java-Kathy-Sierra-dp-0596009208/dp/05
96009208/
● Java in Easy Steps, by Mike McGrath:
https://www.amazon.com/Java-easy-steps-Mike-McGrath-dp-1840788739/dp/
1840788739/
Effort
We expect this course will take you 5-7 hrs per week to complete, for a total of 3
weeks.