Diferență între revizuiri ale paginii „Python Project”
(Pagină nouă: Lab 1) |
|||
| Linia 1: | Linia 1: | ||
| − | [[Lab 1]] | + | = Python Project = |
| + | |||
| + | This course introduces Python programming to students who already have experience with procedural programming in C and object-oriented programming in C++. | ||
| + | |||
| + | The laboratories focus on the differences between C/C++ and Python, Python-specific programming concepts, and the development of a complete software project. | ||
| + | |||
| + | Throughout the course, familiar C/C++ constructs are compared directly with their Python equivalents. | ||
| + | |||
| + | == Laboratories == | ||
| + | |||
| + | * [[Lab 1|Lab 1 — Python for C/C++ Programmers]] | ||
| + | * [[Lab 2|Lab 2 — Object-Oriented Programming in Python]] | ||
| + | * [[Lab 3|Lab 3 — Modules, Packages, Files and Type Hints]] | ||
| + | * [[Lab 4|Lab 4 — Testing and Software Quality]] | ||
| + | * [[Lab 5|Lab 5 — Project Development I]] | ||
| + | * [[Lab 6|Lab 6 — Project Development II]] | ||
| + | * [[Lab 7|Lab 7 — Final Integration and Presentation]] | ||
| + | |||
| + | == Course structure == | ||
| + | |||
| + | The course consists of '''7 laboratory meetings''', each with a duration of '''2 hours'''. | ||
| + | |||
| + | The first laboratories introduce the Python language and its software ecosystem, while the later meetings are primarily dedicated to the semester project. | ||
| + | |||
| + | {| class="wikitable" style="width:100%;" | ||
| + | ! Laboratory | ||
| + | ! Main topic | ||
| + | ! Type | ||
| + | |- | ||
| + | | [[Lab 1]] | ||
| + | | Python for C/C++ programmers | ||
| + | | Theory + exercises | ||
| + | |- | ||
| + | | [[Lab 2]] | ||
| + | | Object-oriented programming and the Python object model | ||
| + | | Theory + exercises | ||
| + | |- | ||
| + | | [[Lab 3]] | ||
| + | | Modules, packages, files, exceptions and type hints | ||
| + | | Theory + exercises | ||
| + | |- | ||
| + | | [[Lab 4]] | ||
| + | | Testing, debugging and software quality | ||
| + | | Theory + project | ||
| + | |- | ||
| + | | [[Lab 5]] | ||
| + | | Project implementation | ||
| + | | Project work | ||
| + | |- | ||
| + | | [[Lab 6]] | ||
| + | | Testing, refactoring and documentation | ||
| + | | Project work | ||
| + | |- | ||
| + | | [[Lab 7]] | ||
| + | | Final integration, demonstration and code review | ||
| + | | Project work + presentation | ||
| + | |} | ||
| + | |||
| + | == Semester project == | ||
| + | |||
| + | During the course, students will develop a Python software project individually or in teams. | ||
| + | |||
| + | The project should demonstrate the ability to: | ||
| + | |||
| + | * organize a Python project into multiple modules; | ||
| + | * use appropriate Python data structures and language features; | ||
| + | * use external libraries where appropriate; | ||
| + | * handle invalid input and exceptional situations; | ||
| + | * write readable and maintainable code; | ||
| + | * use Git for version control; | ||
| + | * document the application; | ||
| + | * test the main functionality of the application. | ||
| + | |||
| + | The objective is not simply to translate C/C++ programs into Python, but to learn how to design and implement software using Python's own abstractions, conventions and ecosystem. | ||
| + | |||
| + | == Recommended software == | ||
| + | |||
| + | Students should have the following software available: | ||
| + | |||
| + | * Python 3; | ||
| + | * Git; | ||
| + | * a text editor or IDE; | ||
| + | * a terminal; | ||
| + | * access to the course Git repository. | ||
| + | |||
| + | Recommended development environments include: | ||
| + | |||
| + | * Visual Studio Code; | ||
| + | * PyCharm; | ||
| + | * any editor with Python and Git support. | ||
| + | |||
| + | == Navigation == | ||
| + | |||
| + | Start with: | ||
| + | |||
| + | '''[[Lab 1|Lab 1 — Python for C/C++ Programmers]]''' | ||
Versiunea de la data 14 septembrie 2026 05:54
Python Project
This course introduces Python programming to students who already have experience with procedural programming in C and object-oriented programming in C++.
The laboratories focus on the differences between C/C++ and Python, Python-specific programming concepts, and the development of a complete software project.
Throughout the course, familiar C/C++ constructs are compared directly with their Python equivalents.
Laboratories
- Lab 1 — Python for C/C++ Programmers
- Lab 2 — Object-Oriented Programming in Python
- Lab 3 — Modules, Packages, Files and Type Hints
- Lab 4 — Testing and Software Quality
- Lab 5 — Project Development I
- Lab 6 — Project Development II
- Lab 7 — Final Integration and Presentation
Course structure
The course consists of 7 laboratory meetings, each with a duration of 2 hours.
The first laboratories introduce the Python language and its software ecosystem, while the later meetings are primarily dedicated to the semester project.
| Laboratory | Main topic | Type |
|---|---|---|
| Lab 1 | Python for C/C++ programmers | Theory + exercises |
| Lab 2 | Object-oriented programming and the Python object model | Theory + exercises |
| Lab 3 | Modules, packages, files, exceptions and type hints | Theory + exercises |
| Lab 4 | Testing, debugging and software quality | Theory + project |
| Lab 5 | Project implementation | Project work |
| Lab 6 | Testing, refactoring and documentation | Project work |
| Lab 7 | Final integration, demonstration and code review | Project work + presentation |
Semester project
During the course, students will develop a Python software project individually or in teams.
The project should demonstrate the ability to:
- organize a Python project into multiple modules;
- use appropriate Python data structures and language features;
- use external libraries where appropriate;
- handle invalid input and exceptional situations;
- write readable and maintainable code;
- use Git for version control;
- document the application;
- test the main functionality of the application.
The objective is not simply to translate C/C++ programs into Python, but to learn how to design and implement software using Python's own abstractions, conventions and ecosystem.
Recommended software
Students should have the following software available:
- Python 3;
- Git;
- a text editor or IDE;
- a terminal;
- access to the course Git repository.
Recommended development environments include:
- Visual Studio Code;
- PyCharm;
- any editor with Python and Git support.
Start with: