Object-Oriented Programming (OOP)Online Event

Europe/Berlin
online

online

Description

organized in cooperation of Helmholtz Federated IT Services (HIFIS) and Helmholtz Information & Data Science Academy (HIDA)

 

Object-Oriented Programming (OOP)

This course will give a hands-on introduction to the concept of Object-Oriented Programming, a popular and powerful approach to problem solving by describing the involved components and their interactions.

We will introduce the involved concepts from the very beginning using Python as our language of choice.

Prerequisites: Basic knowledge of the Python language (variables, functions, loops, conditions), e.g. course "First Steps with Python".

Course Times

April 03, 2024, 10 am - 4 pm

April 04, 2024, 10 am - 4 pm

April 05, 2024, 10 am - 2 pm

 

NOTE: Registration will open March 6, 2024, 12 pm. 

Additional Information

The course content is coordinated, so we strongly recommend that you do not miss any part of the course. To receive a certificate we expect full time and active participation.

Your registration for this course is binding. If you need to leave/miss the course for a period of time, please let us know in advance.

There is no waiting list for this course! If someone withdraws from a course, their place is automatically reopened. We therefore advise you to keep an eye on the registration in case the course is full and you would like to attend. Also, this course will be offered again in the future - you can check our HIDA Course Catalog for updates. 

This course is free of charge. 

    • 10:00 10:15
      Day 1: Welcome 15m
    • 10:15 11:30
      Lessons
      • 10:15
        Objects 30m

        Get to know the idea behind the central concept of object-oriented programming.

      • 10:45
        Classes 45m

        Abstracting from individual objects, classes can be used to describe data types that share a common structure and behaviour.

    • 11:30 12:30
      Lunch 1h
    • 12:30 13:15
      Lessons
      • 12:30
        Methods 45m

        Class-related functions can be used to describe the possible operations that can be executed on individual objects.
        The constructor is a notable special case.

    • 13:15 14:00
      Exercises
      • 13:15
        Exercise: Objects, Classes, Methods 30m

        Implement your own classes and instantiate objects from them to practise what you have learned so far.

    • 14:00 14:30
      Coffee 30m
    • 14:30 15:30
      Lessons
      • 14:30
        Composition 1h

        Use the concept of composing classes from others to break down complicated problems into more manageable pieces..

    • 15:30 16:00
      Exercises
      • 15:30
        Exercise: Composition 30m

        Pracise the newly acquired knowledge to model a structure composed of multiple individual classes.

    • 10:00 10:15
      Day 2: Welcome 15m
    • 10:15 11:00
      Lessons
      • 10:15
        Class Attributes and -Methods 45m

        Learn about Attributes and Methods that are shared between (and independent of) the individual instances of a class.

    • 11:00 11:30
      Exercises
      • 11:00
        Exercise: Class Attributes and -Methods 30m

        Implement your own class-related members.

    • 11:30 12:30
      Lunch 1h
    • 12:30 14:00
      Lessons
      • 12:30
        Inheritance 1h 30m

        Create specialized cases of the classes with adapted behaviour without re-writing the commonalities.

    • 14:00 14:30
      Coffee 30m
    • 14:30 16:00
      Exercises
      • 14:30
        Exercise: Inheritance 1h 30m

        Try your hand at creating sub-classes to specialize the behaviour of our example setup.

    • 10:00 10:15
      Day 3: Welcome 15m
    • 10:15 11:30
      Lessons
      • 10:15
        Various Topics 1h 15m

        Various related topics driven by learner interest, including UML Diagrams, Composition-over-Inheritance-Principle, and Design Patterns.

    • 11:30 12:30
      Lunch 1h
    • 12:30 14:00
      Exercises
      • 12:30
        Individual Exercises 1h 30m

        A chance to complete exercises, that you have not done yet while having access to individual feedback. Also a good opportunity to talk about individual questions and get advice on how to approach your individual research software questions.