Node JS-ის კურსის აღწერა
კურსის მიზანია გამოვიყენოთ ჯავასკრიპტი, როგორც backend ტექნოლოგია. კურსის განმავლობაში სტუდენტი გაეცნობა express / Nest.js framework – ებს და იმუშავებს რელაციურ (postgre) და არარელაციურ (mongodb) მონაცემთა ბაზებთან. კურსის გასავლელად სავალდებულოა javascript – ის საბაზისო ცოდნა.
კურსის მენტორი
ნოდარ იმედაშვილი
Node JS დეველოპერი
,,ჩემი მიზანია, სტუდენტებს გავუზიარო თითოეული აღმოჩენილი დეტალი, რომელიც მათ დაეხმარებათ სხვადასხვა ტექნოლოგიების მარტივად ათვისებაში და საჭირო დისციპლინის განვითარებაში.“
ინფორმაციულ ტექნოლოგიებში მუშაობს ბავშვობიდან. თავდაპირველად შემოიფარგლებოდა აპარატურული, პროგრამული უზრუნველყოფით, ქსელების შეკეთება/ ინსტალაციით, შემდეგ უკვე პროგრამული უზრუნველყოფის მხარდაჭერის სპეციალისტი გახდა, საიდანაც დაიწყო მისი დეველოპმენტთან შეხება. საწყის ეტაპზე მუშაობდა Back-End ინჟინერის პოზიციაზე, ხოლო 3 თვეში გახდა Full-Stack ინჟინერი.
დაასრულა ბიზნესის და ტექნოლოგიების უნივერსიტეტი, ინფორმაციული ტექნოლოგიების მიმართულებით.
ამჟამად მუშაობს სითიქომში, Full-Stack Software Engineer-ის პოზიციაზე. ქმნის ვებ აპლიკაციებს, ასევე სხვადასხვა ტიპის მიკროსერვისებს და IoT მოწყობილობების პროგრამულ უზრუნველყოფებს. მის შექმნილია სითიქომის გადახდის აპარატი, NCDC (National Center for disease control and public health of georgia) სამენეჯმენტო აპლიკაცია და სხვა.
კურსის სილაბუსი
Workshop 1
- რა არის Node.js
- Node.js -ის მუშაობის პრინციპები
- Node.js ის უპირატესობები
- ტრადიციული ვებ სერვერის მოდელი
- Node.js ის Process მოდელი
Workshop 2
- როგორ დავაინსტალიროთ და გავუშვათ Node.js ზე დაწერილი კოდი
- REPL
- Node.js Console
- რა არის npm
- გლობალური პაკეტების მენეჯმენტი
- npm – პაკეტის შექმნა
- პაკეტის განახლება
Workshop 3
- მოდულები და მათი ტიპები
- Node.js ის Core მოდულები
- ლოკალური მოდულები
- მოდულების export/import
- დეველოპმენტ გარემოს მოწყობა
Workshop 4
- როგორ ინახება ინფორმაცია
- Buffer– ები
- Stream-ები და მათი მნიშვნელობა
- Chunk-ებთან და buffer-ებთან მუშაობა
- ენკოდირების ტიპები
- ფაილების სინქრონული და ასინქრონული დამუშავება
Workshop 5
- ინტერნეტში ინფორმაციის მიმოცვლის ზოგადი მიმოხილვა
- HTTP-ის მიმოხილვა (სტატუსკოდები, ჰედერები)
- HTTP მოდული
- CORS
- ვებ-სერვერის გაშვება
- HTTP მოთხოვნების მიღება და დამუშავება
- ფაილების ატვირთვა დაბრუნება
Workshop 6
- REST პრინციპები
- Express ფრეიმვორკის გაცნობა
- Postman ინსტალაცია და გამოყენება
- Routing Expess-ში
Workshop 7
- რელაციური მონაცემთა ბაზების ზოგადი მიმოხილვა (ინდექსები, რელაციები, ცხრილები)
- Postgres მონაცემთა ბაზა
- Postgres მონაცემთა ბაზასთან დაკავშირება და მუშაობა Sequelize (ORM)-ით
Workshop 8
- Jwt Tokens
- ტოკენის შექმნა
- აუტენთიფიკაცია JWT ტოკენის დამხარებით
- Axios
Workshop 9
- არარელაციური მონაცემთა ბაზების მიმოხილვა
- მონაცემთა ბაზებთან მუშაობა MongoDB (Atlas)
- mongoose
Workshop 10
- სერვერის ტესტირება
- Unit Testing
Workshop 11
- სოკეტები
- განსხვავება სოკეტებსა და HTTP-ს შორის
- აპლიკაციის შექმნა (socket.io)
Workshop 12
- Ecommerce აპლიკაციის შექმნა (ExpressJs / Postgres)