-
Planificarea bibliotecii
- Identificarea scopului și funcționalităților bibliotecii
- Alegerea unui nume și a unei structuri de pachet adecvate
-
Crearea unei structuri de proiect
- Structura standard a unei biblioteci Python
- Înțelegerea fișierelor și directoarelor componente
-
Scrierea codului bibliotecii
- Organizarea codului în module și funcții
- Utilizarea docstring-urilor pentru documentarea codului
-
Implementarea testelor unitare
- Introducere în testarea unitară
- Scrierea testelor unitare cu modulul
unittest - Rularea testelor și interpretarea rezultatelor
-
Crearea fișierului
setup.py- Utilizarea
setuptoolspentru a configura biblioteca - Definirea metadatelor și a dependențelor bibliotecii
- Utilizarea
-
Adăugarea unui fișier
README.md- Conținutul și importanța unui fișier
README.md - Bune practici pentru scrierea fișierului
README.md
- Conținutul și importanța unui fișier
-
Gestionarea versiunilor bibliotecii
- Alegerea unui sistem de versionare
- Utilizarea sistemului de versionare ales
-
Distribuirea bibliotecii pe PyPI
- Înregistrarea și autentificarea pe PyPI
- Utilizarea
twinepentru a încărca biblioteca pe PyPI
-
Menținerea și actualizarea bibliotecii
- Evaluarea feedback-ului și a contribuțiilor comunității
- Lansarea de noi versiuni și actualizări ale bibliotecii
Exemple și exerciții pentru fiecare subpunct:
Exemplu: Structura unui proiect de bibliotecă Python
mylibrary/
mylibrary/
__init__.py
module1.py
module2.py
tests/
__init__.py
test_module1.py
test_module2.py
setup.py
README.md
Exercițiu:
Creați o structură de proiect pentru o bibliotecă Python pe care doriți să o dezvoltați.
Exemplu: Docstring pentru o funcție
def adunare(a, b):
"""
Aduna doi parametri a și b și returnează rezultatul.
Args:
a (int): Primul număr.
b (int): Al doilea număr.
Returns:
int: Suma celor doi parametri.
"""
return a + b
Exercițiu:
Scrieți câteva funcții pentru biblioteca dvs. și adăugați docstring-uri pentru a documenta funcționalitatea lor.
Exemplu: Test unitar pentru funcția adunare
import unittest
from mylibrary.module1 import adunare
class TestAdunare(unittest.TestCase):
def test_adunare(self):
self.assertEqual(adunare(1, 2), 3)
self.assertEqual(adunare(-1, 1), 0)
self.assertEqual(adunare(0, 0), 0)
if __name__ == "__main__":
unittest.main()
Exercițiu:
Scrieți teste unitare pentru funcțiile adăugate în biblioteca dvs. și rulați-le pentru a verifica corectitudinea codului.
Exemplu: Fișier setup.py
from setuptools import setup, find_packages
setup(
name="mylibrary",
version="0.1.0",
packages=find_packages(),
install_requires=[
# Lista dependențelor bibliotecii
],
)
Exercițiu:
Creați un fișier setup.py pentru biblioteca dvs. și specificați metadatele și dependențele corespunzătoare.
Exemplu: Fișier README.md
# MyLibrary
MyLibrary este o bibliotecă Python care oferă funcționalități pentru ...
## Instalare
Pentru a instala MyLibrary, rulați următoarea comandă:
```bash
pip install mylibrary
Utilizare
Pentru a utiliza MyLibrary, importați modulele dorite și apelați funcțiile disponibile.
Exemplu:
from mylibrary.module1 import adunare
rezultat = adunare(1, 2)
print(rezultat) # Afișează 3
Documentație
Pentru mai multe detalii despre funcționalitățile bibliotecii, consultați documentația oficială.
Contribuții
Orice contribuție este binevenită! Deschideți o problemă sau creați un pull request pe pagina de GitHub a proiectului.
Licență
MyLibrary este distribuit sub licența MIT.
*Exercițiu:*
Creați un fișier `README.md` pentru biblioteca dvs., descriind scopul, modul de instalare și utilizare, documentația, contribuțiile și licența.
*Exemple și exerciții suplimentare pentru subiectele avansate:*
*Exemplu: Utilizarea unui sistem de versionare (Git)*
1. Inițializarea unui repo Git în directorul proiectului:
```bash
git init
- Adăugarea fișierelor în repo și crearea unui commit inițial:
git add .
git commit -m "Commit inițial"
- Crearea unui repo pe GitHub și adăugarea acestuia ca remote:
git remote add origin https://github.com/username/mylibrary.git
- Împingerea commit-urilor pe GitHub:
git push -u origin master
Exercițiu:
Inițializați un repo Git pentru biblioteca dvs., creați un commit inițial, adăugați un remote și împingeți commit-urile pe acesta.
Exemplu: Distribuirea bibliotecii pe PyPI
- Instalarea
twine:
pip install twine
- Crearea distribuției bibliotecii:
python setup.py sdist bdist_wheel
- Încărcarea distribuției pe PyPI:
twine upload dist/*
Exercițiu:
Distribuiți biblioteca dvs. pe PyPI, urmând pașii din exemplu.
După parcurgerea lecției și a exercițiilor, cursanții vor fi capabili să creeze și să distribuie propriile biblioteci Python, înțelegând principiile de bază ale structurii de proiect, testării unitare, versionării și distribuirii pe PyPI.