Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Mindfulness Personal Development Meditation Personal Transformation Life Purpose Coaching Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Big Data
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee

This course includes:

  • 10.5 hours on-demand video
  • 4 articles
  • 12 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
IT & Software Other IT & Software Object Oriented Programming

Object Oriented Analysis, Design & Programming with UML

Learn OO Analysis, Design & Programming using UML in C++, Java & C#
Rating: 4.1 out of 54.1 (365 ratings)
2,915 students
Created by Umar Lone
Last updated 11/2020
English
English
30-Day Money-Back Guarantee

What you'll learn

  • Understand & use UML with your software development process
  • Understand what is object oriented analysis, design & programming
  • Understand how to analyze a problem using object oriented analysis
  • Implement OO design in Java, C++ & C#
Curated for the Udemy for Business collection

Requirements

  • Basic knowledge of any programming language
  • Basic understanding of common C concepts like pointers, functions, arrays, macros, etc (for C++ programmers only)

Description

Object Oriented Analysis, Design & Programming course is a unique course that teaches students how to use object-oriented techniques to build software. The course will start with requirements gathering & end with implementation. In the process, you'll learn how to analyze and design classes, their relationships to each other in order to build a model of the problem domain. You'll also use common UML diagrams throughout this process, such as use-case, class, activity & other diagrams. The diagrams will be created through a free tool. 

Lot of emphasis is placed on use cases to capture and manage requirements. Those are subsequently used to enforce OO concepts that produce a reusable design of the system that adapts to change. Finally, the design is implemented & programmed in three different programming languages - Java, C# & C++. During the implementation, you'll learn about the object-oriented concepts such as Abstraction, Encapsulation, Hierarchy, Polymorphism, interfaces, etc. All these concepts are explained with examples in all the three languages.

Finally, all the important concepts are applied in a textual game called Reckless Driver. Consequently, you'll have understood the entire process of Object Oriented Analysis, Design & Programming & you can implement these concepts in your own software.


Who this course is for:

  • Programmers who want to learn the Unified Modelling Language
  • Anyone who wants to learn OO analysis, design & programming
  • Anyone who wants to start with OO programming in C++, Java or C#
  • Students who want to understand the concepts of object oriented programming
  • Programmers new to object oriented programming
  • Software developers and designers looking to expand their existing knowledge of object oriented analysis & design
  • Anyone who wants to learn & apply UML to their sofware development process

Featured review

Jason Sprouse
Jason Sprouse
63 courses
25 reviews
Rating: 5.0 out of 59 months ago
Umar covered StarUML very well, for beginners, and presents several coding examples along the way. Of course there is much more to be learned utilizing this software and development workflow in general, but the aside topics and examples make us stop and think about implementations other than the reckless driver game we coded along to in this tutorial.

Course content

9 sections • 126 lectures • 10h 30m total length

  • Preview01:14
  • Preview01:51
  • Installation of Visual Studio for C# & C++
    03:10
  • Installation For Other Platforms
    00:41
  • Course Material & Source Code
    00:08

  • Preview06:23
  • Preview07:53
  • Preview07:47
  • Preview09:04

  • UML Introduction
    04:46
  • View Model
    03:31
  • Object Model Concepts
    07:10
  • Object Oriented Analysis with Use Cases
    03:35
  • Use Case Description
    06:21
  • Preview07:40
  • Use Case Relationships
    07:31
  • Use Case Relationships in StarUML
    04:35
  • Guidelines for Use Cases
    04:25
  • Activity Diagram
    03:26
  • Activity Diagram in StarUML
    05:36
  • Merge
    03:40
  • Fork & Join
    04:52
  • Swimlanes
    03:54

  • Introduction to Classes & Class Diagram
    06:08
  • Class Diagram in StarUML
    07:49
  • Preview06:15
  • Abstraction in Java
    02:16
  • Abstraction in C#
    01:39
  • Abstraction in C++
    03:56
  • Preview03:52
  • Encapsulation in Java - Part I
    05:34
  • Encapsulation in Java - Part II
    06:47
  • Encapsulation in C# - Part I
    03:57
  • Encapsulation in C# - Part II
    04:54
  • Encapsulation in C++ - Part I
    04:13
  • Encapsulation in C++ - Part II
    04:44
  • Class Diagram Revisited
    04:00
  • Preview04:06
  • Inheritance in Java
    05:52
  • Inheritance in C#
    05:59
  • Inheritance in C++
    06:15
  • Containment
    02:55
  • Aggregation & Association
    04:19
  • Dependency
    02:56
  • Preview03:28
  • Polymorphism in Java
    03:07
  • Polymorphism in C#
    02:38
  • Polymorphism in C++
    02:31
  • Preview02:58
  • Preview04:55

  • Overview of Design
    02:40
  • GameObject Class Implementation in Java
    05:09
  • TrafficCar Class Implementation in Java
    03:58
  • SideObject Class Implementation in Java
    03:26
  • Player Class Implementation in Java
    05:31
  • GameManager Class Implementation in Java
    06:05
  • GameObject Class Implementation in C#
    06:05
  • TrafficCar Class Implementation in C#
    02:42
  • SideObject Class Implementation in C#
    01:52
  • Player Class Implementation in C#
    06:30
  • GameManager Class Implementation in C#
    04:53
  • GameObject Class Implementation in C++
    05:55
  • TrafficCar Class Implementation in C++
    04:08
  • SideObject Class Implementation in C++
    02:54
  • Player Class Implementation in C++
    06:06
  • GameManager Class Implementation in C++
    05:20

  • Communication Diagram - Part I
    07:57
  • Communication Diagram - Part II
    04:39
  • Communication Diagram - Part III
    06:49
  • Communication Diagram - Part IV
    06:45
  • Sequence Diagram - Part I
    08:09
  • Sequence Diagram - Part II
    05:37
  • Sequence Diagram - Part III
    07:49
  • Sequence Diagram - Part IV
    06:02
  • Scene Class Discussion
    05:22
  • Scene Class Implementation in Java - Part I
    06:22
  • Scene Class Implementation in Java - Part II
    05:39
  • Collision Behavior Implementation in Java - Part I
    06:04
  • Collision Behavior Implementation in Java - Part II
    05:10
  • Scene Class Implementation in C# - Part I
    05:42
  • Scene Class Implementation in C#- Part II
    05:29
  • Collision Behavior Implementation in C# - Part I
    04:54
  • Collision Behavior Implementation in C# - Part II
    06:08
  • Scene Class Implementation in C++ - Part I
    09:04
  • Scene Class Implementation in C++- Part II
    05:58
  • Collision Behavior Implementation in C++ - Part I
    06:58
  • Collision Behavior Implementation in C++ - Part II
    05:37

  • State Machine Diagram Files
    00:03
  • Code Cleanup - Java
    04:39
  • Code Cleanup - C#
    06:47
  • Code Cleanup - C++
    05:57
  • State Changes in Java
    02:53
  • State Changes in C#
    03:44
  • State Changes in C++
    02:55
  • State Machine Diagram - I
    07:23
  • State Machine Diagram - II
    02:50
  • State Machine Diagram - III
    03:53
  • Player States in Java
    04:05
  • Healthkit Powerup in Java
    05:35
  • State Behaviors in Java
    04:21
  • More Powerups in Java
    06:46
  • Player States in C#
    06:06
  • Healthkit Powerup in C#
    07:04
  • State Behaviors in C#
    05:06
  • More Powerups in C#
    06:11
  • Player States in C++
    05:46
  • Healthkit Powerup in C++
    06:57
  • State Behaviors in C++
    04:39
  • More Powerups in C++
    08:21
  • State Machine Diagram - IV
    09:26
  • State Machine Diagram - V
    05:50

  • Design Improvements
    03:30
  • Powerup Factory in Java
    03:59
  • SideObject Factory in Java
    06:46
  • Powerup Factory in C#
    03:59
  • SideObject Factory in C#
    05:02
  • Powerup Factory in C++
    04:03
  • SideObject Factory in C++
    06:58

  • Package Diagram - I
    04:33
  • Package Diagram - II
    07:43
  • Component Diagram - I
    06:39
  • Component Diagram - II
    03:44
  • Component Diagram - III
    04:51
  • Deployment Diagram - I
    03:44
  • Deployment Diagram - II
    05:03
  • BONUS LECTURE
    00:01

Instructor

Umar Lone
Trainer, developer & founder at Poash Technologies
Umar Lone
  • 4.4 Instructor Rating
  • 4,141 Reviews
  • 46,385 Students
  • 7 Courses

Civil engineer who found his calling in software development. Never worked as a Civil engineer, jumped at the first chance and started teaching C++ & Visual C++ 15 years ago. Currently, trains software professionals in various software companies in different technologies, such as Modern C++, Advanced C++, STL, Design Patterns, Android, Unity, Linux, etc. Very passionate about teaching and has trained more than 20,000 software professionals in a teaching career spanning more than 17 years. An avid gamer, currently trying his hand with game development in Unity & Unreal. Has a few Android applications to his credit, including one on Design Patterns.

Only thing he likes more than C++ is Modern C++.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.