Globalni Objekat

U Node.js-u, globalni objekat služi kao kontejner za sve globalne varijable koje su dostupne u svim modulima vaše aplikacije. Slično objektu window u pregledačima, globalni objekat u Node.js-u omogućava pristup različitim globalnim funkcijama i varijablama, poput console, setTimeout, i clearTimeout. Da bi se pristupilo globalnom objektu, možete koristiti ključnu reč global.

node.js

Moduli

Moduli u Node.js-u omogućavaju izolaciju delova koda u odvojene jedinice. Da bi neki modul bio dostupan u drugim delovima aplikacije, koristi se module.exports za izvoz, a require() za uvoz modula.

Primer

Ovde je prikazan modul koje exportuje jednu funkciju:

A u sledećem kodu se vidi kako se može pristupiti i iskoristiti ta funkcija u nekom drugom fajlu/modulu:

Više o ovome pogledajte u članku “Modularno programiranje u JS-u” u delu CommonJS

commonjs

Module Wrapper Function

U Node.js-u, svaki modul se automatski obavija u funkciju. Ova funkcija omogućava modulima da imaju sopstveni privatni obim, gde exports, require, module, __filename, i __dirname postaju lokalni parametri funkcije. To znači da kada pišete kod u Node.js modulu, zapravo pišete kod unutar ove wrapper funkcije.

  • exports: Ovaj objekat se koristi za izvoz metoda ili promenljivih iz modula. Bilo koji svojstvo ili metoda dodana na exports objekat postaje deo javnog interfejsa modula.
  • require(): Funkcija koja se koristi za učitavanje drugih modula.
  • module: Ovaj objekat predstavlja trenutni modul i sadrži informacije o njemu, uključujući exports objekat.
  • __filename: Apsoslutna putanja do trenutnog fajla modula. To znači da pokazuje punu putanju od korena fajl sistema do lokacije gde se fajl nalazi.

  • __dirname: Putanja do direktorijuma trenutnog modula.
OBJAŠNJENJE:

Zamisli da su moduli kao kutije sa alatima. Svaka kutija (modul) ima svoje alate (metode) koje možeš koristiti kada imaš dostupnu tu kutiju. Ako želiš da tvoj prijatelj koristi neke od tvojih alata, staviš ih u “posebnu” kutiju koju mu pošalješ. U svetu Node.js-a, to je kao kada koristiš module.exports da “staviš alate u kutiju” i require() da “otvoriš kutiju” koju ti je neko poslao.

Sada, zamisli da svaka kutija automatski dobije posebnu torbu kada je šalješ. U tu torbu možeš staviti sve što ti treba da tvoji alati rade kako treba, kao uputstva ili dodatne delove. U Node.js-u, to je kao “Module Wrapper Function”. Kad napišeš kod u modulu, Node.js automatski stavlja tvoj kod u tu posebnu funkciju (torbu) koja ti daje neke korisne stvari poput exports, require, module, __filename, i __dirname, tako da tvoj kod može lepo da radi sa ostalim delovima aplikacije.

Dakle, “Module Wrapper Function” je kao “magična” torba koja osigurava da svaka kutija (modul) ima sve što joj treba da bi alati (kodovi) unutra radili kako treba, čak i kada su poslati negde daleko

Ugrađeni Moduli u Node.js-u

Node.js dolazi sa bogatim setom ugrađenih modula koji su dizajnirani da olakšaju razvoj aplikacija. Ovi moduli obuhvataju širok spektar funkcionalnosti, od manipulacije fajlovima do kreiranja HTTP servera. Evo nekoliko ključnih:

  • Path Module: Ovaj modul pruža alate za rad sa putanjama fajlova i direktorijuma.
  • OS Module: Omogućava interakciju sa operativnim sistemom.
  • FileSystem Module: Pruža funkcije za čitanje, pisanje i manipulisanje fajlovima.
  • Events Module: Omogućava rad sa događajima kroz implementaciju observer patterna.
  • Http Module: Omogućava kreiranje HTTP servera i klijenata.
Podelite:

Ostavite komentar