Kao neko ko želi da se uklјuči u razvoj programa, možda ćete se zapitati da li bi trebalo da izaberete Django ili Node kao vaš framework. U ovom članku raspravlјamo o prednostima i nedostacima svakog od njih. Oboje su već neko vreme u blizini i imaju veliku podršku na internetu sa podrškom ogromnih zajednica. Međutim, svaki od njih odgovara malo drugačijim svrhama, a ovaj će vam članak pomoći da odlučite šta vama najviše odgovara.
Šta je back-end razvoj?
Pre nego što razumete Node.js protiv Django, prvo morate da shvatite razliku između front-end i back-end programiranja.
Ukratko, back-end razvojni jezici upravlјaju funkcijama „iza scene“ raznih aplikacija – bilo da su web sajtovi, mobilne aplikacije, softver za desktop računare itd. Back-end kod koji povezuje web sa bazom podataka, upravlјa vezama sa korisnicima, i ovlašćuje samu web aplikaciju. Back-end razvoj funkcioniše zajedno sa front-end-om kako bi se krajnjem korisniku isporučio krajnji proizvod.
Pomoćni program aplikacije odgovoran je za stvari poput intenzivnih kalkulacija, poslovne logike, interakcije baze podataka i performansi.
Većina koda koji je potreban da bi se aplikacija napravila biće urađena u pozadini. Back-end kod se pokreće na serveru, za razliku od klijenta. To aplikacije čini sigurnijima i omogućava proveru podataka na način koji nije moguć frontend kodom.
Šta je Node?
Node.js je framework koji omogućava pisanje JavaScript-a (super popularan front-end jezik) u back-end-u. Pravi značaj ovoga je u tome što svaki web programer koji piše u JavaScript-u (i većina ih radi) sada može prilično lako da koristi svoje veštine za interakciju sa bazom podataka, za pisanje logike korisnika i za izradu full-stack web sajtova.
Node je kreiran 2009. godine od strane programera Rian Dahl-a, i kontinuirano ga održava Node.js fondacija. Node.js je poznat po visokim performansama i velikoj dostupnosti biblioteka (mada neki to ponekad smatraju i nedostatkom – jer je ponekad teško da se izabere jedna od desetina biblioteka za određeni zadatak).
Node.js koristi se za pogon backend sistema nekih od najvećih web sajtova i aplikacija na svetu, kao što su Netflix, PayPal i GoDaddy. Da biste započeli, samo morate da znate osnove JavaScript-a i da možete da nastavite da učite usput. Takođe možete da koristite Node da bi napravili komandne linije aplikacije – pa čak i desktop aplikacije uz pomoć Electron-a i NW.js-a.
Šta je NPM?
Node ima zaista popularan menadžer paketa (Alat za upravlјanje paketima je kolekcija softverskih alata koja vam olakšava život. Menadžer paketa vam pomaže da instalirate, nadogradite, konfigurišete i uklonite biblioteke koda). Node-ov paket menadžer naziva se „npm“ (Node Package Manager).
Sa NPM-om imate dodatnu prednost ako znate JavaScript onda koisteći Node.js možete da pišete ne samo skrivene skripte, već i desktop softver i uslužne programe komandne linije. Neki primeri uslužnih programa komandne linije izgrađene pomoću Node-a uklјučuju Zero Server , Zalgo i Node Pullquoter .
Međutim, početnicima je koncept asinhronog programiranja često težak za rad. Šta je asinhrono programiranje? Ukratko, asinhrono programiranje je sredstvo programiranja u kojem se kod pokreće odvojeno od glavne aplikacije, a istovremeno upozorava glavne aplikacije na njihovo kompletiranje, neuspeh i napredak.
Konačno, Node.js kod nije sjajan za CPU intenzivne aplikacije zbog ograničenja jednog toka (gde se komande obrađuju jedna po jedna).
Šta je Django ?
Django je slobodni i otvoreni izvorni web framework baziran na Python-u, koji sledi arhitektonski obrazac prikaza modela-templejta (MTV). Šta to znači? Ukratko, njegov osnovni cilј je da olakša izradu složenih web sajtova zasnovanih na bazama podataka. To je postupak za pravlјenje web sajtova lako, održivo i skalabilno. Django naglašava ponovnu upotrebu i „mogućnost priklјučivanja“ komponenti, manje koda, malu spojnicu i brzi razvoj. Napravili su ga 2005. godine programeri Adrian Holovaty i Simon Willison.
Django je takođe veoma omilјen jer je napisan u Pyhon-u, a lјudi vole Python. Pinterest, Instagram i Zapier samo su neke od mnogih kompanija koje koriste Django.
Zašto Python? Pa, za sintaksu Python-a često se kaže da je mnogo lakše za nastavljanje nego što Node koristi JavaScript. Python je veoma visok nivo, što znači da zapravo možete da se usredsredite na izvršavanje stvari – umesto da smišljate kako će kod da funkcioniše ili da komunicira sa računarom.
Jedna stvar koju treba uzeti u obzir je da je Django ogroman! Django možda nije najbolјa opcija za male aplikacije. Ako već koristite Python i tek započinjete sa manjom aplikacijom, verovatno ćete želeti da koristite Flask umesto Django-a.



