Companies Home Search Profile

Object Oriented Pirates programming adventure in Python

Focused View

Loek van den Ouweland

1:30:22

15 View
  • 1. Course Introduction.mp4
    03:58
  • 1. Introduction.mp4
    04:10
  • 2. First version.mp4
    03:48
  • 3. Tuples.mp4
    04:20
  • 4. Pirate Union.mp4
    04:59
  • 1. Classes and Objects.mp4
    04:54
  • 2. UML.mp4
    01:48
  • 1. Inheritance.mp4
    04:43
  • 2. Refactoring.mp4
    06:29
  • 1. Extra Officer and Cannon Operator.mp4
    01:52
  • 2. Importing JSON.mp4
    05:48
  • 3. Add Cook and Deck Scrubber.mp4
    03:58
  • 1. Composition over Inheritance.mp4
    05:46
  • 2. Test with Test DataLoader.mp4
    04:47
  • 1. Payroll.mp4
    06:30
  • 2. Missions.mp4
    04:21
  • 3. Missions JSON.mp4
    03:32
  • 1. Exchange Loot.mp4
    06:50
  • 2. Currency real data.mp4
    03:17
  • 3. The reward.mp4
    03:13
  • 1. Conclusion.mp4
    00:40
  • 2. Bonus Section.mp4
    00:39
  • Description


    Use OOP to refactor growing code and turn small scripts into big programs with this Software Engineering exercise.

    What You'll Learn?


    • improve existing and future code by effectively refactoring code into small modules
    • decouple your modules by using dependency injection
    • make modules into plugins by using Polymorphism
    • solve open-closed principle violations by using composition
    • communicate your designs with UML class diagrams
    • make confident design changes to split up scripts and refactor them into modules

    Who is this for?


  • beginner programmers who want to practice OOP basics
  • developers who want to learn how to turn small scripts into logical code modules
  • developers who want to learn how to refactor code with minimal change and risk
  • What You Need to Know?


  • Beginner experience in Python or another programming language
  • You have worked with classes and objects before or enrolled in my “Object Oriented Programming with Python“ course on Udemy
  • More details


    Description

    This course teaches you how to take a single script and use OOP techniques to refactor it into modules in a playful way. You learn Inheritance, Composition and Polymorphism and use UML to design and communicate the system. The customer keeps requesting new features that forces you to think about the right tool in the right place. Will OOP allow you to refactor the code each time without risk of breaking things? Prepare for a big exercise in organizing code!

    Target audience

    Developers who especially benefit from this course, are:

    • beginner programmers who want to practice OOP basics

    • developers who want to learn how to turn small scripts into logical code modules

    • developers who want to learn how to refactor code with minimal change and risk


    Challenges

    Students that are interested in this course often know basic Python features but are not yet aware of the role of OOP in structuring your code. Perhaps they have seen classes, objects, inheritance and polymorphism but they don’t know where and when to apply these techniques. This can lead to the wrong technique in the wrong place, which makes OOP useless and inefficient. Because this course focuses on changing code, you learn WHEN, WHAT and more important, WHY you can apply a certain OOP technique and perhaps even more interesting, when a certain technique is NOT appropriate anymore and needs to be replaced with another one.


    What can you do after this course?

    • improve existing and future code by effectively refactoring code into small modules

    • decouple your modules by using dependency injection

    • make modules into plugins by using Polymorphism

    • solve open-closed principle violations by using composition

    • communicate your designs with UML class diagrams


    Topics

    • Classes and Objects: Class instantiation, self, data attributes, UML, methods

    • Inheritance: When to use and not use Inheritance

    • UML: Use UML class diagrams to design and communicate your system

    • Polymorphism: Open-closed principle, prevent switches (if/else)

    • Composition: Replace inheritance with composition

    • Refactoring: Split up scripts and make a system modular to achieve single responsibility

    • JSON: Load data from a JSON file

    • Generator expressions and List comprehensions: Convert JSON data to object efficiently


    Duration

    1,5 hours video time, 3 hours including practicing exercises.

    The teacher

    This course is taught by Loek van den Ouweland, a senior software engineer with 25 years of professional experience. Loek is the creator of Wunderlist for windows, Microsoft To-do and Mahjong for Windows and loves to teach software engineering.

    Who this course is for:

    • beginner programmers who want to practice OOP basics
    • developers who want to learn how to turn small scripts into logical code modules
    • developers who want to learn how to refactor code with minimal change and risk

    User Reviews
    Rating
    0
    0
    0
    0
    0
    average 0
    Total votes0
    Focused display
    Loek van den Ouweland
    Loek van den Ouweland
    Instructor's Courses
    Loek van den Ouweland (Wunderlist, Microsoft Todo) is a born teacher. Right from the start of his career, he was told that a programmer helps his customers best when he shows what his products can do and how they are built.He worked in many companies as programmer and trainer and enjoys to share the secrets of programming with others.Loek has 25 years of experience training people with different backgrounds, all ages, working in branches ranging from medical systems to manufacturing and academics to aerospace.
    Students take courses primarily to improve job-related skills.Some courses generate credit toward technical certification. Udemy has made a special effort to attract corporate trainers seeking to create coursework for employees of their company.
    • language english
    • Training sessions 22
    • duration 1:30:22
    • Release Date 2023/12/07