diff options
Diffstat (limited to 'tutorials/module_1/notebook_1/classes_and_objects.ipynb')
| -rw-r--r-- | tutorials/module_1/notebook_1/classes_and_objects.ipynb | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/tutorials/module_1/notebook_1/classes_and_objects.ipynb b/tutorials/module_1/notebook_1/classes_and_objects.ipynb new file mode 100644 index 0000000..f21002b --- /dev/null +++ b/tutorials/module_1/notebook_1/classes_and_objects.ipynb @@ -0,0 +1,42 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Modular Programming\n", + "\n", + "## 1. Introduction\n", + "\n", + "- A. What is Object-Oriented Programming?\n", + "- B. Why use OOP? (vs. procedural)\n", + "- C. Real-world analogies (e.g., modeling components like pumps,\n", + " motors, or vehicles)\n", + "\n", + "| \\## 2. Core OOP Concepts - A. **Classes and Objects** - Definitions - Syntax in Python - B. **Attributes and Methods** - Instance variables - Functions inside classes - C. **Encapsulation** - Public vs private variables - Using `__init__` and `self` - D. **Inheritance** - Parent and child classes - Reuse and extension of code - E. **Polymorphism** *(brief overview)* - Method overriding - Flexibility in interfaces |\n", + "|----:|\n", + "| \\## 3. Python OOP Syntax and Examples - A. Define a simple class (e.g., `Spring`) - B. Instantiate objects and use methods - C. Show `__init__`, `__str__`, custom methods - D. Add a derived class (e.g., `DampedSpring` inherits from `Spring`) |\n", + "\n", + "## 4. Engineering Applications of OOP\n", + "\n", + "- A. Modeling a mechanical system using classes\n", + " - Example: Mass-Spring-Damper system\n", + "- B. Creating reusable components (e.g., `Material`, `Beam`, `Force`)\n", + "- C. Organizing simulation code with OOP\n", + "\n", + "------------------------------------------------------------------------\n", + "\n", + "## 5. Hands-On Coding Activity\n", + "\n", + "- A. Write a class for a basic physical component (e.g., `Motor`)\n", + "- B. Add behavior (e.g., `calculate_torque`)\n", + "- C. Extend with inheritance (e.g., `ServoMotor`)\n", + "- D. Bonus: Integrate two objects to simulate interaction" + ], + "id": "8358dbad-84d7-4413-ae4a-bd5eedae2a3b" + } + ], + "nbformat": 4, + "nbformat_minor": 5, + "metadata": {} +} |
