4.5 out of 5
4.5
73 reviews on Udemy

Introduction to object oriented programing

java programming and the eclipse IDE.
Instructor:
Albert Rached
3,466 students enrolled
English
Data types, operators, control statements, loops, break and continue
Arrays, methods, String manipulation, recursive methods
classes, objects, using objects, constructors, getters, setters, to string method,
Inheritance, Polymorphism, Abstract Classes, Interfaces.
Exception handling, Open/read/write files, GUIs
writing and using simple data structures, array lists
learning how to think, research and plan out projects as a programmer
in later lectures, working with more advances data structures (binary search trees, hash tables)
in later lectures, sorting algorithms

This course is designed for beginner-level programmers who want to learn object-oriented programming. the course will cover all topics of introduction to programming I and introduction to programming II usually taught in university. The course will also cover writing simple data structures and sorting algorithms. In future lectures, we will introduce more advanced data structures, such as binary search trees and hashing tables. The objective of this video series is to give aspiring programmers all the necessary tools to kick start their learning journey. We will cover not only how to write code, but also the inner workings of the machines on which we code in order to prepare students for success in the field.

the teaching method used for this video series is a learn by example approach. we first cover the topic at hand, we will then write some code for visualization purposes, and finally assign students mini projects for them to work on solo. After the students complete the project, we will cover the solutions together.

when the lecture portion of this course is complete, we will then work on larger projects together in order to cement the programming process and ensure students learn how to think like a programmer instead of just writing code.

list of topics:

hello world program.

the programming process.

data types.

mathematical operators.

comparison operators.

Logical operators.

control statements (if / else if / else, switch).

Loops (for, while)

break, continue, return.

Arrays.

methods,

String manipulation.

Recursive methods.

Classes.

class anatomy and utility.

inheritance.

abstracts classes.

abstract methods.

interfaces.

polymorphism.

Exception handling.

GUIs.

Array-Lists.

Read / Write to txt files.

end of semester project (city database).

planned future lectures:

sorting algorithm.

using data Structures (in city database project).

Introduction

1
Downloadable Resources, notes, and Discord app

quickly going over how to download resources, join our discord app and utilize our class notes.

2
Hello World - The Basics

Downloading and installing the Eclipse IDE and draw.io applications.
writing our first program.

3
The Programing Process - a guide to better practices

A detailed guide to better programming practices.

4
What we have learned so far

A small quiz to test the understanding of students, covering material in Lecture 3: The Programming Process

The basics

1
Data Types

An introduction to Data Types, covering Integers, Doubles, Floats, Booleans, Strings and Characters.

2
Data Types Quiz
3
Mathematical Operators

Mathematical Operations : addition, Subtraction, Multiplication, division, modulo, incrementing, decrementing, order of operations.

Research Question Answered: When dividing two integers, Java uses integer division. In integer division, the result is also an integer. The result is truncated (the fractional part is thrown away) and not rounded to the closest integer.

4
Comparison Operators

Comparison Operators in Java.

5
Logical Operators

An in depth explanation of logical operators and their application in programming.

6
Operators
7
Control Statements

A detailed explanation of the if - then - else statement

8
Control Statements

A detailed explanation of switch statements and when to use them

9
Loops (for and while loops)

a lecture on for loops and while loops.

10
Break, Continue and return

lecture on break, continue and return instructions.

11
Section 1 - Quiz

test your knowledge of section 1 topics.

12
Review and Assignments

Quick review and assignments.

13
Assignment Solutions

Solutions to previously assigned projects.

Arrays, Methods, and String Manipulation

1
Arrays

our first lecture on the array data structure.

2
Arrays Practice

array practice problems where we populate an array of 20 elements with random numbers, then print those elements, find the sum of all elements, find the average of all elements, find the minimum and maximum value of all elements and finally, print the element in reverse.

3
Quiz on arrays

lets make sure we have this part down.

4
Methods - 001

making cookies using methods - part 1

5
Methods - 002

making cookies using methods - part 2

6
Methods - 003

Methods lecture 3, creating an average grade method that accepts 3 parameters of type float and return the average.

7
Methods Quiz

you got this. lets give it our best shot.

8
String Manipulation - intro

Introduction to String manipulation in Java. Includes a brief lecture expanding on the students knowledge of String objects and how to utilize them.

9
String Manipulation - Part 1

The first set of String Manipulation exercises covered in this section.
   1) printing a String backwards.
   2) transforming a character array to a String object.
   3) entering a string of digits, transforming said digits to integers and summing their value.
   4) using the split method to split a string based on a character position.

10
String Manipulation - Part 2

The second set of String Manipulation exercises covered in this section.
   1) capitalize the first letter of every word in a sentence.
   2) print alternating characters in a String.
   3) Binary, Hexadecimal, and Octal representation of an integer.
   4) Capitalize the letter T in a sentence.

11
String Manipulation - Part 3

The third set of String Manipulation exercises covered in this section.
   1) check the validity of a password. (pass >= 12 character, has uppercase character, lowercase character...)
   2) count the number of words in a sentence
   3) validate a website URL to ensure it starts with "www." and ends with ".com"

12
Recursive Methods

A lecture on recursive methods. discusses recursion, the recursive case, the base case, and some disadvantages and dangers of using recursion.

13
Recursive Methods Quiz

short quiz on recursive functions

Classes and inheritance

1
Introduction to Classes and Objects

An introduction to classes and objects in Java. 

2
Class Anatomy 001 - [ data | getters | setters]

Anatomy of a class. building a class with data, getters, and setters.

3
Class Anatomy 002 - [ constructors | method overloading ]

Anatomy of a class. constructors and method overloading.

4
Class Utility - [ using objects ]

instantiating objects from our class. utilizing objects in Java.

5
Class Anatomy 003 - [ toString Method | method overriding ]

Anatomy of a class. building a toString method in Java and method overriding. 

6
Classes Quiz 1

what we know about classes so far

7
Inheritance 001

inheritance and its utility.

8
Inheritance 002

Inheritance and its utility 2. creating an "is a" relationship between Student, Prof, and User.

9
Abstract Classes and interfaces

Abstract Classes, Abstract Methods, interfaces, and polymorphism.

10
Classes Quiz 2

a quiz focused on inheritance, abstract classes and interfaces.

Exceptions, files, GUIs and Array Lists

1
Exception Handling

we throw our own errors.

lecture covering exceptions and exception handling.

learn how to use try, catch, finally block.

write our very own exception class.

2
GUIs

we delve into java's outdated swing library and get familiar with GUIs by creating a quiz.

3
Array Lists

a very brief introduction to Array Lists before using them in our end of semester project.

4
Open and read / write text files

Reading from, Writing to, creating a file, locating a file and storing its path... Fun Stuff in this here lecture!

5
Section 5 Quiz

quick quiz to make sure were on solid ground.

City Database Project

1
City Database Project 000 - Description and City Object

Description of City Database Project and Assigning City Class.

2
City Database Project 001 -City Class

City Class Solution

3
City Database Project 002 - Breaking it down and Main Menu

Breaking down the process and assigning Main Menu Function

4
City Database Project 003 - Main Menu Solution

Solution to the main menu function.

5
City Database Project 004 - Database Assignment

Database assignment:

- download the database txt file

- import necessary libraries

- create an array list of type City

- create a find file method, txt to obj method, and obj to txt method.

6
City Database Project 005 - Database Solution

Solution to previous assignment

7
City Database Project 006 - Display All Cities

Display all cities, assignment and solution

8
City Database Project 007 - Search for a City

Search for a city, assignment and solution

9
City Database Project 008 - Insert / delete a city + save changes

Insert new City, delete a city, save changes, assignment and solution

10
City Database Project 009 - Update City Values

Update City Values, assignment and solution

11
City Database Project 010 - Distances

writing methods to get distance between 2 cities using their latitudes and longitudes.

Sorting Algorithms

1
Insert-Sort

Insert Sort Algorithm, animation and code

2
Bubble-Sort

Bubble Sort Algorithm, animation and code

3
Selection-Sort

Selection Sort Algorithm, animation and code

4
Quick-Sort

Quick Sort Algorithm, animation and code

5
Testing Our Algorithms

Testing our algorithms with large arrays

You can view and review the lecture materials indefinitely, like an on-demand channel.
Definitely! If you have an internet connection, courses on Udemy are available on any device at any time. If you don't have an internet connection, some instructors also let their students download course lectures. That's up to the instructor though, so make sure you get on their good side!
4.5
4.5 out of 5
73 Ratings

Detailed Rating

Stars 5
52
Stars 4
16
Stars 3
5
Stars 2
0
Stars 1
0