PROGRAMARE PYTHON
Programa de training
www.itschool.ro
[email protected]
Denumirea cursului: Programare Python Online
Număr total de ore: 100
Număr total de sesiuni: 40
Număr de ore / sesiune: 2.5
SCOPUL programelor de formare IT School:
Prin intermediul programelor de pregătire, IT School are ca obiectiv susținerea
procesului de reconversie profesională către domeniul IT a tuturor celor care se
orientează către această industrie. Cu acest scop, mai jos se regăsesc topicurile
mandatory care trebuie incluse în materialele de curs, plus recomandări cu privire la
proiectul final sau proiectele intermediare.
● Cunoașterea programării procedurale (variabile, funcții, colecții de date),
● Cunoașterea programării orientate pe obiect (pillars of OOP),
● Cunoașterea folosirii limbajului Python cu alte aplicații (web, Excel, Google
Sheets, email, baze de date și altele)
● Capacitatea de a dezvolta un proiect Python folosind bunele practici (REST
APIs, TDD, documentație, medii virtuale și altele)
Observații:
- Participanții vor știi să dezvolte un proiect Python folosind clean code,
principiile SOLID, Design patterns, TDD și să aibă o arhitectură corectă
(separation of concerns)
- Obiectivele proiectului final se pot întrepătrunde cu obiectivele generale ale
cursului
- Care ar fi obiectivele proiectului final? Un proiect care să demonstreze
conceptele SOLID, design patterns, TDD (unittest și pytest), refactoring, module,
mediu virtual, gestionarea dependențelor, separation of concerns,
documentarea codului
Poziții vizate pentru absolvenți:
● Junior Software Developer, Junior Python Developer
Teme / Competențe vizate Recomandări
Prezentare generală a industriei IT Prezentare de proiecte și prezentarea istoriei
industriei IT
Pregătirea mediului de dezvoltare Instalarea unui IDE și instalarea interpretorului
Python
Introducere în programarea cu Python Variabile, tipuri de date; execuția programelor
www.itschool.ro
[email protected]
Controlul fluxului de programare Condiționalele și buclele: if, for, while
Funcții Definirea și apelarea funcțiilor; Domeniile de
vizibilitate (scope)
Introducere în VCS Git și Github
Colecții de date Liste, dicționare, tuple și seturi
Lucrul cu șiruri de caractere Metodele șirurilor de caractere
Lucrul cu fișiere open, read, write, close; with statement and
context managers; JSON
Lucrul cu baze de date sqlite3 and DB Browser (SQLite), instrucțiuni de
bază în SQL
Introducere în REST APIs http cu exemple de GET, POST, PUT și DELETE;
alternativ cu Flask pentru soluții fără OOP
Diagnosticare și monitorizare debugging with IDE; exceptions with
try-except-else-finally; tracebacks, assertions and
logging
Module în Python Instrucțiunea import; comentarii, docstrings și
type hinting
Introducere în Programarea Orientată pe Obiect encapsulation, abstraction, inheritance,
polymorphism, composition, multiple inheritance
Lucrul cu date tabelare Modulele csv și openpyxl
Lucrul cu APIs externe requests, webbrowser; discuție despre web
scrapers
Lucrul cu servicii online Google Sheets, emails, yfinance;
Proiect Python un proiect care să demonstreze conceptele
SOLID, design patterns, TDD (unittest și pytest),
refactoring, module, mediu virtual, gestionarea
dependențelor, separation of concerns,
documentarea codului
Notes & other recommendations:
● Alte concepte adiacente (ex. MongoDB, pandas)
Exploring
Final project / mini-projects must include at least a few of the following in order to
offer the trainees real-life application context:
● Simple REST API
www.itschool.ro
[email protected]
● Simple Web Server (Django or Flask, simple HTML templates / CSS)
● Chatbot (Discord / Slack)
● Interaction with Google Sheets (Google Cloud Services)
● Sending emails with Python
● Reports and PDF file generation (reportlab)
● Linux (vim, python scripting and cron)
● MongoDB Atlas (cloud provisioning) - CRUD
● Tk / Tkinter
● Others (based on trainer’s technical knowledge)
www.itschool.ro
[email protected]
www.itschool.ro
[email protected]