Белешка Python
Објављено 19 November 2023
Instaliraj python na Windows
Pokretanje Pythona
cd mon_projet
python -m venv mon_venv
source mon_venv/bin/activate
# Sur windows
mon_venv\Scripts\activate
deactivate
zahtjev za instalaciju
pip install -r requirements.txt
inicijacija
GoF dizajn obrasci u Pythonu
Dizajnerski obraci GoF predstavljaju skup od 23 dizajnerskih obrasaka koji su opisani u knjizi "Design Patterns: Elements of Reusable Object-Oriented Software".
Ime |
Opis |
Metoda factory |
Kreiraj objekte bez specificiranja tačne klase koja se instancira |
Apstraktna fabrika |
Kreira porodice povezanih ili zavisnih objekata bez specificiranja njihove konkretne klase. |
Builder |
Odvoji konstrukciju kompleksnog objekta od njegove predstave da isti proces konstrukcije može da kreira različite predstave. |
prototip |
Kreirajte novi objekte kopirajući postojeći prototip. |
Jedinstveni |
Ograničava instanciranje klase na samo jedan objekat. |
Адаптер |
Konvertuje interfejs klase u drugi interfejs kojeg klijent očekuje. |
most |
Odvoji apstraktni koncept od njegove implementacije kako bi oba mogli da se menjaju nezavisno. |
kompozitni |
Sastavite objekte u strukture stabala da predstavljate hijerarhije dela i celog. |
dekorator |
Dinamički priloži dodatne odgovornosti objektu. |
Fasada |
Pruža jedinstveni interfejs skupu interfejsa u pot-sistemu. |
muva |
Smanjuje troškove kreiranja i korišćenja lagalih objekata. |
прокси |
Pruža zamenu ili rezervisano mesto za drugi objekat da bi se kontrolisao pristup njemu. |
Lanac odgovornosti |
Omogućava više objekata da obrađuju zahtev |
Команда |
Uključi zahtev u objekat, omogućavajući tome da se klijenti podešavaju sa različitim zahtevima, redovima čekanja ili dnevnikom, i da se podržavaju ponišljive operacije. |
преводилац |
Дай представу граматике језика и употреби је за тлумачење реченица на том језику. |
Iterator |
Omogućava sekvencijalno prolazanje kroz elemenте agregovanog objekта bez izlaganja njegove osnovne reprezentacije. |
Medijator |
Omogućava smanjenje kompleksnih zavisnosti između objekata činom što ih čini da komuniciraju samo putem objekta-medijatora. |
Подсетник |
Пружа способност да врати објекат у његово претходно стање (без нарушавања енкапсулације). |
Posmatrač |
Definiše jednovisezavisnost između objekata tako da kada jedan objekat promeni stanje, svi njegovi zavisnici automatski se obaveštavaju i ažuriraju. |
Država |
Omogućava objektu da menja ponašanje kada se menja njegovo unutrašnje stanje. |
стратегија |
Definiše porodicu algoritama, enkapsulira svaki od njih i čini ih zamenskim. |
Metoda predloška |
Definiše skelet algoritma u metodi, odlažući neke korake podklasama. |
posetioc |
Omogućava definisanje nove operacije za izvršavanje nad strukturom objekata bez promena klasa objekata na kojoj ona radi. |
funkcionalno programiranje
Библиотека |
URL |
Opis |
PyMonad |
PyMonad je implementacija monadskih struktura podataka u Pythonu bazirana na programskim jezicima kao što su Haskell i F# sa implementacijama za najčešće korištene tipove monada u funkcionalnom programiranju.https://www.miguelfarrajota.com/2021/06/monads-in-python-with-pymonad/[članak] |
|
PyFunctional |
PyFunctional je Python biblioteka za funkcionalno programiranje koja pruža alate za rad sa čistim funkcijama i iterabilnim. |
|
Toolz |
Toolz je Python biblioteka za funkcionalno programiranje koja pruža alate za rad sa čistim funkcijama i iterabilima. |
|
Fn.py |
Fn.py je Python biblioteka za funkcionalno programiranje koja pruža alate za rad s čistim funkcijama i iterabilnim objektima. |
|
Kokos |
Coconut dodaje nekoliko funkcionalnosti Pythonu za funkcionalno programiranje, uključujući i podudaranje po uzorku.https://stackoverflow.com/questions/11909681/are-there-pattern-matching-functions-in-python-like-this[razgovor sof] |
супштачни эффекти
petlje
# impérative way
result = []
for i in inputs:
x = f(g(i))
result.append(x)
# idiomatic way
result = map(comp(f,g), inputs)