Nota Python
Publié le 19 November 2023
Installa python su Windows
Esecuzione di python
cd mon_projet
python -m venv mon_venv
source mon_venv/bin/activate
# Sur windows
mon_venv\Scripts\activate
deactivate
requisito di installazione
pip install -r requirements.txt
iniziazione
I pattern di progettazione GoF in Python
I design pattern di GoF sono un insieme di 23 design pattern che sono stati descritti nel libro "Design Patterns: Elements of Reusable Object-Oriented Software".
Nome |
Description |
Metodo Factory |
Crea oggetti senza specificare la classe esatta da istanziare. |
Abstract Factory |
Crea famiglie di oggetti correlati o dipendenti senza specificare la loro classe concreta. |
costruttore |
Separa la costruzione di un oggetto complesso dalla sua rappresentazione affinché lo stesso processo di costruzione possa creare diverse rappresentazioni. |
Prototipo |
Crea nuovi oggetti copiando un prototipo esistente. |
Singleton |
Limita l’istanziazione di una classe a un solo oggetto. |
Adattare |
Converte l’interfaccia di una classe in un’altra interfaccia che il cliente si aspetta. |
Bridge |
Disaccoppia un’astrazione dalla sua implementazione in modo che entrambe possano variare indipendentemente. |
composito |
Compone oggetti in strutture ad albero per rappresentare gerarchie parte-tutto. |
Decoratore |
Aggiungi dinamicamente responsabilità aggiuntive a un oggetto. |
Facciata |
Fornisce un’interfaccia unificata a un insieme di interfacce in un sottosistema. |
Peso mosca |
Riduce il costo di creazione e utilizzo di oggetti leggeri. |
Proxy |
Fornisce un sostituto o uno spazio riservato per un altro oggetto al fine di controllare l’accesso a esso. |
Catena di responsabilità |
Permette a più di un oggetto di trattare una richiesta. |
ordine |
Incapsula una richiesta in un oggetto, consentendo così di configurare i client con richieste diverse, code o registri, e di supportare operazioni annullabili. |
Interprete |
Dai una rappresentazione della grammatica di una lingua e usa questa rappresentazione per interpretare frasi in questa lingua. |
Iteratore |
Fornisce un modo per percorrere sequenzialmente gli elementi di un oggetto aggregato senza esporne la rappresentazione sottostante. |
Mediator |
Permette di ridurre le dipendenze complesse tra gli oggetti facendoli comunicare esclusivamente tramite un oggetto mediatore. |
Memento |
Fornisce la capacità di ripristinare un oggetto al suo stato precedente (senza violare l’incapsulamento). |
Osserva |
Definisce una dipendenza uno-a-molti tra gli oggetti in modo che quando un oggetto cambia stato, tutti i suoi dipendenti vengono notificati e aggiornati automaticamente. |
Stato |
Consente a un oggetto di cambiare comportamento quando cambia il suo stato interno. |
Strategia |
Definisce una famiglia di algoritmi, incapsula ciascuno di essi e li rende intercambiabili. |
Metodo Template |
Definisce lo scheletro di un algoritmo in un metodo, delegando alcuni passaggi alle sottoclassi. |
visitatore |
Consente di definire una nuova operazione da eseguire su una struttura di oggetti senza modificare le classi degli oggetti sui quali opera. |
Programmazione funzionale
Biblioteca |
URL |
Description |
PyMonad |
PyMonad è un’implementazione di strutture di dati monadiche in Python basata su linguaggi di programmazione quali Haskell e F# con implementazioni per i tipi di monadi più comunemente utilizzati nella programmazione funzionale.https://www.miguelfarrajota.com/2021/06/monads-in-python-with-pymonad/[article] |
|
PyFunctional |
PyFunctional è una libreria Python per la programmazione funzionale che fornisce strumenti per lavorare con funzioni pure e iterabili. |
|
Strumenti |
Toolz è una libreria Python per la programmazione funzionale che fornisce strumenti per lavorare con funzioni pure e iterabili. |
|
Fn.py |
Fn.py è una libreria Python per la programmazione funzionale che fornisce strumenti per lavorare con funzioni pure e iterabili. |
|
cocco |
Coconut aggiunge diverse funzionalità a Python per la programmazione funzionale, incluse il pattern matchinghttps://stackoverflow.com/questions/11909681/are-there-pattern-matching-functions-in-python-like-this[conversazione sof] |
effetti collaterali
loops
# impérative way
result = []
for i in inputs:
x = f(g(i))
result.append(x)
# idiomatic way
result = map(comp(f,g), inputs)
Articoli correlati
14 May 2026