Mô tả

LAST UPDATED: November 2023 (Added a comprehensive OOP HW Project)


SUPER CHARGE OF YOUR PROGRAMMING CAREER and acquire some seriously marketable skills!

    Just because you learned how to use a hammer doesn't mean you are ready to construct a building. Similarly, It's not enough to just understand a programming language. That's just a tool that can be used to develop various programs. The real craftsmanship is in software DESIGN

    This course is designed to take a junior level programmer with limited knowledge about object orientation to a competent level object oriented software designer! I expect you to understand the basics of loops, methods and conditionals in Java. You'll be completing hands-on HOMEWORK Exercises through out the course! I have provided detailed video solutions to the exercises so that you can check your answers and get step by step instructions on how to tackle the object oriented design assignments. 

      You can find plenty of resources online for solving a programming puzzle or practicing algorithms. But… when it comes to object oriented design,  admittedly, there is limited material out there for you to practice. So  in this course, we use a LEARN-BY-DOING  approach to explore a series of progressively challenging exercises to  discover the 5 core object oriented design PRINCIPLES summarized by an  acronym called SOLID: 

          (S). Single Responsibility   

          (O). Open/Closed   

          (L).  Liskov Substitution   

          (l ). Interface Segregation   

          (D). Dependency Inversion   

      During this journey you'll get practice applying some of the most important DESIGN PATTERNS that competent developers must have under their belt. There are so many design patterns out there, but we'll be thoroughly covering only the most important ones. Save yourself the time from learning all the design patterns and going on a design frenzy. Focus on the 20% that covers 80% of the scenarios and add miles to your programming efficiency. 

  These cover 80% of patterns used out there in professional software development.   

  1). Strategy Pattern   

          2). Observer Pattern   

          3). Builder pattern   

          4). Factory method pattern   

          5). Template Method Pattern   

  6). Singleton Pattern 

                              The topics can be applied to pretty much any object oriented language. But, we'll be using Java, so I expect you to be familiar with the basic language constructs such as classes, methods and interfaces. But don't worry if you don't know about these, I've taken the time to create 6 comprehensive prerequisite lessons on introduction to object orientation. In these lessons, new comers can learn about the basics of object orientation such as: 

  1). Classes and objects   

          2). Inheritance and polymorphism,   

          3). Interfaces and abstract classes.   

                              I'm certain that, by practicing the concepts covered, you'll make a substantial leap forward in your programming career. I hope to see you in the coming lessons.

This course is from This site offers lectures on practical software development topics to immediately impact your programming skills. Things you can take to your interview and feel confident in your abilities!

Bạn sẽ học được gì

Advance your programming skills from a junior level newbie to a competent intermediate level object oriented software developer

Design and develop software using best practices in Object oriented programming

Apply the 5 crucial object oriented design principles using Java

Apply design patterns such as Strategy, Observer, Template Method, Factory, and Builder

Make the leap into professional software craftsmanship and take your career to the next level!

Yêu cầu

  • You should have a java editor installed. We'll be using Eclipse.
  • Install Jdk from oracle website
  • Understand the basics of loops and conditionals.

Nội dung khoá học

5 sections

Introduction

3 lectures
How to make the most of this course
01:16
Download Source Code for Lectures
00:12
Join our Online Community (Discord)
00:46

Introductory Principles in Object Orientation (Optional Prerequisite)

12 lectures
Class and Object (Optional Prerequisite)
12:35
Dedicated TA Support
01:39
Program Flow and Using Constructor (Optional Prerequisite)
11:40
Object and Class
5 questions
Application Runtime (Optional Prerequisite)
11:05
Java Behind The Scenes
24:07
Class Inheritance (Optional Prerequisite)
13:52
Application Runtime Quiz
4 questions
Interfaces and Abstractions (Optional Prerequisite)
11:28
Abstract Classes (Optional Prerequisite)
15:24
Interfaces and Abstract Classes
5 questions
Message From The Instructor
00:45

Object Oriented Design Principles (SOLID)

20 lectures
Objects, Messages and Dependencies
12:04
Forming Associations Between Objects
04:10
Overview of Software Design
05:27
Single Responsibility Principle
14:03
UML Diagram - Single Responsibility
1 page
Single Responsibility - Homework
25:41
Quiz on Single Responsibility Principle
3 questions
Open Closed Principle & STRATEGY Pattern
16:57
Open Closed Principle - Homework
00:36
Quiz on the Open Closed Principle
2 questions
Dependency Inversion + TEMPLATE Pattern
07:08
Dependency Inversion & Template pattern - Homework Solution
12:24
UML Diagram - Dependency Inversion
1 page
Quiz on Dependency Inversion principle
3 questions
Liskov Substitution Principle
13:50
Liskov Substitution Principle UML
1 page
Quiz on Liskov Substitution Principle
3 questions
The Interface Segregation Principle
15:49
UML Diagram - Interface Segregation
1 page
Quiz on Interface Segregation Principle
1 question

Object Oriented Design Patterns in Practice

11 lectures
Dependency Injection Part 1
09:39
Dependency Injection Part 2 (Using Spring)
14:52
Observer Pattern
10:44
Observer Pattern - Homework Solution
22:19
UML Diagram - Observer Pattern
1 page
Coffee Shop Assignment (another application of the observer pattern)
00:13
Builder Pattern
12:52
Factory Design Pattern
14:01
UML Diagram - Factory Pattern
1 page
Singleton Design Pattern (Newly Added)
10:47
Real world Project - Create an API using the Builder Pattern
00:28

Course Extras!

3 lectures
Automatically generate UML diagrams from java code Tutorial
04:51
Final Comments from Instructor
00:46
Bonus Lecture
00:25

Đánh giá của học viên

Chưa có đánh giá
Course Rating
5
0%
4
0%
3
0%
2
0%
1
0%

Bình luận khách hàng

Viết Bình Luận

Bạn đánh giá khoá học này thế nào?

image

Đăng ký get khoá học Udemy - Unica - Gitiho giá chỉ 50k!

Get khoá học giá rẻ ngay trước khi bị fix.