დღევანდელი გაკვეთილით ჩვენ ვიწყებთ node.js-ის შესწავლას, რომელიც დაგვეხმარება შევქმნათ, როგორც backend ასევე frontend აპლიკაციები.
მოცემულ გაკვეთილში ჩვენ გავლილით შემდეგ თემებს:
"Node.js is an open-source and cross-platform JavaScript runtime environment." - Nodejs.dev Docs
მოდი ვეცადოთ ქართულად გადავთარგმონოთ მისი მნიშვნელობა, პირველ რიგში განვიხილოთ თუ რას ნიშნავს open source.
open source წარმოდაგენს კოდს რომელიც არის ხელმისაწვდომი საზოგადოდ და ამ კოდში როგორც ჩახედვა, ასევე განვითარებაში წვლილის შეტანა შენც კი შეგიძლია.
cross platform ნიშნავს იმას, რომ node-ის გაშვება შეგვიძლია ნებისმიერ ოპერაციულ სისტემაზე.
Node.js is javaScript runtime environment: როდესაც ჩვენ რამე ჯავასკრიპტ კოდს დავწერთ, პირდაპირ მისი შესრულება შეუძლებალია, შესასრულებლად ჩვენ გვჭირდება მაგალითად ბრაუზერი, რომელსაც აქვს ე.წ. ძრავი (engine) რომელიც შეასრულებს ჩვენს მიერ დაწერილ კოდს.
სწორედ ესაა ე.წ. runtime environment. სანამ node.js შეიქმნებოდა მანამდე ჯავასკრიპტის კოდის გაშვება მხოლოდ ბრაუზერებში იყო შესაძლებელი, შესაბამისად ჯავასკრიპტი გამოიყენებოდა მხოლოდ frontend აპლიკაციებში.
Node.js უზუნველყოფს, შევასრულოთ ჯავასკრიპტის კოდი ბრაუზერებისგან დამოუკიდებლად. node.js იყენებს Chrome v8 javascript engine.-ს ჯავასკრიპტის შესასრულებლად. სწორედ ის გვაძლევს საშუალებას ავაწყოთ backend აპლიკაციები, ზუსტად იმ ჯავასკრიპიტს ცოდნით რომელიც ჩვენ უკვე ნასწავლი გვაქვს.
Node.js არის მძლავრი ხელსაწყო fullstack აპლიკაციების შესაქმნელად, რომელიც გვაძლევს საშუალებას, უკვე კარგად ნაცნობი ჯავასკრიპტით დავწეროთ, არა მხოლოდ frontend არამედ backend აპლიკაციებიც, ქვემოთ ვეცდები მოკლედ ჩამოვთვალო მიზეზები იმისა, თუ რატომ უნდა დაიწყო Node-ის შესწავლა
Node გვაძლევს საშუალებას გამოვიყენოთ ჯავასკრიპტი, როგორც frontend-ში ასევე backend-ში.
Node ცნობილია მისი სისწრაფით, ის არის ე.წ. ასინქრონული რაც ჩვენს აპლიკაციას დამატებით სისწრაფეს აძლევს
node-ს აქვს ე.წ. package manager იგივე NPM, (node package manager), რომელიც მოიცავს უამრავ ღია კოდის პრინციპზე დაწერილ სასარგებლო პატარა პროგრამებს (package-ებს) რომელთა გამოყენებაც პროექტში უამრავ დროს დაგვიზოგავს.
პირველ რიგში მინდა გახსოვდეთ, რომ ჯავასკრიპტი რომელიც აქამდე ვისწავლეთ ორივე გარემოში ჩვეულებრივ მუშაბს, მაგრამ ასევე აქვთ მცირედი განსხვავებები, რომლებზეც ქვემოთ ვისაუბრებთ.
ბრაუზერის გარემოში ჯავასკრიპტი საშუალებას გვაძლევს ხელმისაწვდომი გვქონდეს DOM. Node.js-ში კი ის არ გვაქვს, ვინაიდან კოდი ბრაუზერის გარემოში არ ეშვება
სამაგიეროდ Node.js-ში საშუალება გვაქვს მივწვდეთ ოპერაციული სისტემის რესურსებს. მაგალითისთვის ჩვეგ გვექნება სრული წვდომა ფაილურ სისტემაზე, რაც შესაძლებლობას გვაძლევს ჯავასკრიპტის საშუალებით მოვახდინოთ მასზე მანიპულაციები.
როგორც ვიცით ჯავასკრიპტში ჩაშენებულია ე.წ. გლობალური ობიექტები, მაგალითად ისეთები, როგორიცაა window ობიექტი ბრაუზერის გარემოში. Node.js-ში window ობეიქტი საერთოდ არ გვაქვს, მაგრამ გვაქვს global ობიექტი
სანამ უშუალოდ node.js-ის დეტალებში უფრო ღრმად წავალთ აუცილებელია ვიცოდეთ ჯავასკრიპტის საფუძვლები, რომელსაც რა თქმა უნდა val-do.com-ზე სრულიად უფასოდ შეძლებთ შეისწავლოთ.
node.js-ის შესასწავლად აუცილებელია ვიცოდეთ ჯავასკრიპტის ძირითადი პრინციპები.
სანამ ამ კურის გავლას გადაწყვეტთ აუცილებელია გავიაროთ კურსები, რომელიც სრულიად უფასოდაა val-do.com-ის მოცემულ ბმულზე ჯავასკრიპტის კურსი დამწყებთათვის.
კურსში შეხვდებით ისეთ თემებს, როგორებიცაა:
შეისწავლეთ ვებდეველოპმენტის ენები სრულიად უფასოდ, ისეთები როგორებიცაა Javascript, HTML, CSS და კიდევ სხვა მრავალი ენა
ქვემოთ მოცემულია უახლესი 3 ბლოგი პროგრამირების თემატიკასთან დაკავშირებით