Skip to content

docs(01-python): Add Object-Oriented Programming and Dataclasses practice guide #7

Open

Description

@UmeshCode1

🎯 Goal

Expand Module 1 (01-python/README.md) by adding hands-on practice exercises covering Object-Oriented Programming (OOP), Type Hinting, and Python dataclasses tailored for AI/ML engineering.

📌 Background

Many 1st and 2nd year students learn basic procedural Python (loops, functions, lists) but struggle when encountering modern AI libraries that rely heavily on classes (e.g., PyTorch nn.Module, Scikit-Learn custom transformers, and Pydantic/dataclass data schemas).

📋 Scope and Requirements

  1. Target File: 01-python/README.md.
  2. Add Section: "OOP and Modern Python Patterns for Machine Learning".
  3. Cover with Clean Code Examples:
    • Type Annotations: Function signatures with list[float], dict[str, Any], Optional, and return types.
    • Python @dataclass: Creating clean, immutable data containers (e.g., DatasetConfig, ModelMetrics).
    • OOP Architecture: A mini class hierarchy (e.g., BasePreprocessor and TextPreprocessor implementing .fit() and .transform()).
  4. Exercises: 3 small student challenge exercises with an expandable <details><summary>Solution</summary></details> block.

🏷️ Good First Issue

Perfect for students looking to strengthen their Python foundations! Comment below if you would like to be assigned.

Activity

  1. github-actions commented on Oct 3, 2026

    @github-actions

    👋 Hi @UmeshCode1, thanks for opening an issue!

    Welcome to AIML Club OCT Learning Resources!

    • If you are suggesting a new tutorial, roadmap topic, or resource link, we appreciate your help!
    • Say hello in our Welcome & Introductions thread.

    Keep growing! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationgood first issueGood for newcomers

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions