General Flashcards
Functional programming vs Object-Oritented programming
Funkcionalno - paradigma koja se fokusira na korišćenje funkcija kao osnovnih građevinskih blokova za rešavanje problema. Karakteristike:
**Immutable podaci **- podaci ne mogu biti menjani nakon što su kreirani
Čiste funkcije - funkcija uvek daje isti rezultat za iste ulazne vrednosti i nema sporednih efekata
First class citizens
Rekurzija - rekurzija se često koristi umesto petlji
Deklarativan pristup - fokus je na ŠTA a ne KAKO
OOP - Paradigma koje organizuje kod oko objekata, koji predstavljaju entitete sa stanjima i ponašanjima. Karakteristike:
Klase i objekti - kod se struktuira u klase koje instanciraju objekte
Stanje i promenljivost - objekti imaju stanje koje se može menjati tokom vremena
4 stuba OOP
Memory Leak
Nastaje kada program alocira memoriju, ali ne oslobodi kada više nije potrebna. U JavaScript-u Garbage Collector automatski oslobađa memoriju koja više nije referencirana, ali memory leak se ipak može dogoditi. Do memory leak-a dolazi:
- Kada su reference zadržane (dangling reference)
- Globalne promenljive - promenljive definisane u globalnom prostoru ostaju u memoriji tokom trajanja aplikacije
- Closures - funkcije koje pamte svoj leksički opseg mogu sadržati nepotrebne reference
Dobra praksa:
* Izbegavati globalne promenljive
* Ručno uklanjanje event listener-a
* Izbegavanje nepotrebnih closures