1

**Object-Oriented Programming (OOP) Fundamentals in Python

Description

[Description] Learn the core concepts of OOP in Python: classes, objects, attributes, methods, inheritance, polymorphism, and encapsulation. Understand how to design and create classes, define attributes and methods, and instantiate objects. Explore the concepts of inheritance to create reusable code and polymorphism to write flexible code. Learn about the use of access modifiers, such as public, protected, and private.

Available

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises
2

**Advanced OOP Concepts and Design Patterns

[Description] Delve deeper into OOP principles, exploring abstract classes, interfaces (through abstract base classes in Python), and the SOLID principles (Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion). Investigate common design patterns such as Singleton, Factory, and Observer, learning when and how to apply them to improve code design and maintainability.

Locked

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises
3

**Python Modules, Packages, and Virtual Environments

[Description] Learn how to structure larger Python projects using modules and packages. Understand how to import modules, create your own packages, and organize your code effectively. Learn about virtual environments (using venv or virtualenv) and why they are essential for managing project dependencies.

Locked

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises
4

**Working with Files, Databases, and Data Serialization

[Description] Learn how to handle files (reading, writing, and manipulating). Explore how to interact with databases using Python (e.g., SQLite, PostgreSQL, or MySQL) and the relevant libraries (e.g., sqlite3, psycopg2, pymysql). Understand data serialization using formats like JSON and CSV.

Locked

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises
5

**Web Scraping and API Interaction

[Description] Learn how to scrape data from websites using libraries like BeautifulSoup4 and requests. Understand how to interact with APIs (RESTful APIs), retrieve data, and parse JSON responses.

Locked

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises
6

**Testing and Debugging Python Code

[Description] Learn about testing your Python code, including unit tests, integration tests, and test-driven development (TDD). Explore different testing frameworks, such as unittest and pytest. Learn debugging techniques using debuggers such as pdb (Python Debugger) and Integrated Development Environment (IDE) debugging features.

Locked

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises
7

**Version Control with Git and Collaborative Development

[Description] Learn the fundamentals of Git for version control. Understand how to create repositories, commit changes, branch, merge, and resolve conflicts. Explore collaborative development using platforms like GitHub, GitLab, or Bitbucket.

Locked

Learning Objectives

  • Understand the fundamentals
  • Apply practical knowledge
  • Complete hands-on exercises

Share Your Learning Path

Help others discover this learning path