- Level Foundation
- Duration 19 hours
- Course by University of Pennsylvania
-
Offered by
About
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.Modules
1. Course Introduction
1
Assignment
- Learning Style Preference Survey
3
Videos
- What to expect from this Course
- About the Instructor : Brandon Krakowsky
- How to submit assignments in Codio
3
Readings
- Course Layout & Syllabus
- Tips to succeed in this course
- Navigating Assignments using Codio
2. Module Introduction & Resources
1
Videos
- Module 1 Introduction
1
Readings
- Module 1 Resources (DOWNLOAD RELEVANT CODE AND/OR DATA FILES FOR THIS MODULE HERE)
3. Introduction to Java
3
Videos
- Java vs. Python
- Java is compiled
- Popularity of Java vs. Python
4. Configuring Java & Tools
4
Videos
- Installing & running Java
- Downloading & installing the Java Development Kit (JDK)
- Installing & configuring Eclipse
- Eclipse overview
1
Readings
- Installing & configuring Eclipse overview
5. The Java Language
20
Videos
- Simple introductory program
- Some general rules for Java
- Variables & data types
- Declaring variables
- Strings vs. chars
- Printing
- 'while' loops
- 'for' loops
- Getting input
- Java comments & Javadocs
- Coding Demonstration : Creating my first java project
- Coding Demonstration : Creating my first class & using the main method
- Coding Demonstration : Defining variables
- Coding Demonstration : Strings and characters
- Coding Demonstration : Math operations
- Coding Demonstration : String operations
- Coding Demonstration : Conditionals and loops
- Coding Demonstration : Casting
- Coding Demonstration : User input
- Coding Demonstration : Adding Javadocs
3
Readings
- Math operators
- Casting
- 'char' operations
6. Quiz
1
Assignment
- Quiz 01 - Intro to Java & The Java Language
6. Practice Assessment
1
External Tool
- Practice Coding Assignment 1a: Hello World!
7. Classes
7
Videos
- Java is class based
- Defining a class
- Defining fields in a class
- Defining a constructor for a class
- Defining a method in a class
- Creating an instance of a class
- Coding Demonstration : Banking project
2
Readings
- Importing a Java Program into Eclipse
- Opt-in to Penn Engineering Online Communications
8. Quiz
1
Assignment
- Quiz 02 - Classes
9. Assessment
1
External Tool
- Homework 1 : Simple Game
1. Module Introduction & Resources
1
Videos
- Module Introduction
1
Readings
- Module 2 Resources (DOWNLOAD RELEVANT CODE AND/OR DATA FILES FOR THIS MODULE HERE)
2. Unit Testing
6
Videos
- Why unit test?
- Disadvantages & advantages
- JUnit
- Terminology
- Assert methods
- Coding Demonstration : Counter project
3. About Equality
4
Videos
- Testing for equality
- Implementing the equals method
- Coding Demonstration : Comparing people
- Coding Demonstration : Banking project with unit testing
2
Readings
- More assert methods
- Even more assert methods
4. Quiz
1
Assignment
- Quiz 03 - Unit Testing
5. Assessment
1
External Tool
- Homework 2 : Custom String
6. Arrays
6
Videos
- Declaring & initializing arrays
- Initializing arrays in one line
- The length of an array
- Stepping through an array using a for loop or enhanced for loop
- Nested arrays
- Accessing values in nested arrays
1
Readings
- Array methods
7. Collections: ArrayLists
3
Videos
- About the Collections Framework
- Creating an ArrayList
- The size of an ArrayList
1
Readings
- ArrayList methods
8. About ToString
3
Videos
- Printing primitives vs. Objects
- Implementing the toString method
- Coding Demonstration : Classroom project
9. Quiz
1
Assignment
- Quiz 04 - Arrays & ArrayLists
10. Assessment
1
External Tool
- Homework 3 : Arrays & ArrayLists
1. Module Introduction & Resources
1
Videos
- Module 3 Introduction
2
Readings
- Module 3 Resources (DOWNLOAD RELEVANT CODE AND/OR DATA FILES FOR THIS MODULE HERE)
- Opt-in to Penn Engineering Online Communications
2. Static Variables
4
Videos
- Instance variables vs. static variables
- Creating static variables
- Referencing static variables
- Using static variables for hard-coded values
3. Static Methods
4
Videos
- About static methods
- Static helper methods
- About Java’s main method
- When to use a static method
4. More Examples of Static Variables & Methods
3
Videos
- Other use cases for static
- Other rules for static
- Coding Demonstration : Customer tracking project
5. Quiz
1
Assignment
- Quiz 05 - Static Variables & Methods
6. Polymorphism - Overloading
9
Videos
- Method signatures
- Polymorphism
- Overloading
- Why overload a method?
- DRY (Don’t Repeat Yourself) principle of software development
- Legal vs. illegal variable assignments and method calls
- Java uses the most specific method
- Multiple constructors
- Coding Demonstration : Dog project
7. Quiz
1
Assignment
- Quiz 06 - Polymorphism - Overloading
8. Assessment
1
External Tool
- Homework 4 : Custom Integer ArrayList
Auto Summary
Dive into the world of Java with "Introduction to Java and Object-Oriented Programming" by Coursera. Tailored for IT & Computer Science enthusiasts, this foundational course covers Java syntax, custom classes, unit testing, and essential data structures. Perfect for beginners, the 1140-minute course offers both Starter and Professional subscription options. Learn from experts and elevate your programming skills today!

Brandon Krakowsky