Object Oriented Programming and Design Crash Course
Learn the spirit and the best practices of Object Oriented Programming to write a clean code
Description
Almost all top programming languages today support Object Orientation. It's a powerful, but also relatively complex paradigm. Therefore, to get the optimal results with Object Oriented programming languages, you need to be familiar with the core concepts of Object Oriented Programming and know the methodology of Object Oriented Design.
With this course, you'll master the core principles of the modern Object Oriented Programming, and learn to design clean, reliable and maintainable Object Oriented systems.
Topics covered in this course include:
What an Object is: Adopt the right Object Oriented mindset to avoid the common pitfall of trying to map the real world into software.
Core principles of Object Oriented Programming: Learn about Encapsulation, Abstraction, Composition, Inheritance and Polymorphism, and see how they form the backbone of Object Oriented Programming.
Object Oriented Design methodology: Explore how to approach software design from an Object Oriented perspective, focusing on creating modular and maintainable systems.
The pillars of Object Oriented Design: Discover the core aspects of software design and learn to apply them in your own codebases.
Design Patterns: See the most useful Design Patterns and undestand their role in addressing common technical tasks quickly and efficiently.
This course was designed for developers who want to understand Object Oriented Programming and Object Oriented Design at a fundamental level. From beginners, who just start their software development journey, to experienced programmers aiming to refine their knowledge, everyone will find new insights in these lectures.
Object Oriented Programming and Design are at the core of today's digital world, so I invite you to join me on this epic journey into the depths of OOP and OOD in this course!
What You Will Learn!
- The core features of Object Oriented Programming languages
- What Composition is and how to resolve Composition challenges in large codebases
- What Inheritance is and why it's NOT just about code reuse
- Composition vs Inheritance trade-offs
- Objects vs Data Structures
- The importance of good naming
- Best practices of Object Oriented Design
- Design Patterns and their respective use cases
Who Should Attend!
- Software developers who use Object Oriented programming langugages