קורסים מקצועיים למתקדמים

קורסים ללמידה עצמית - פיתוח תוכנה

Node.js – Online Course

מספר הקורס 90965

פיתוח תוכנה אונלייןJB Online Academyקורס בעבריתקורס מקוון
למה ללמוד בג'ון ברייס?
  • למידה חדשנית ודינמית עם כלים מתקדמים בשילוב סימולציות, תרגול וסביבות מעבדה
  • מגוון הכשרות טכנולוגיות עם תכנים המותאמים להתפתחות הטכנולוגית ולביקוש בתעשיית ההייטק
  • מובילים את תחום ההכשרות לעולם ההייטק והטכנולוגיה כבר 30 שנה, עם קהילה של עשרות אלפי בוגרים
  • אתם בוחרים איך ללמוד: פרונטאלית בכיתה, מרחוק ב- Live Class או בלמידה עצמית

על הקורס בקצרה​

Node.js הינה סביבת הרצה לשפת JavaScript הפועלת מחוץ לדפדפן וללא קשר לדפדפן. הומצאה ב-2009 ע”י ראיין דהל (Ryan Dahl) שבנה אותה ע”י ++C ושילב בתוכה את המנוע העוצמתי של Chrome בשם 8V לצורך ההרצה של קוד ה-JavaScript. לפיכך, ע”י Node.js ניתן להריץ קוד JavaScript בצד השרת ולכן לבנות Backend מלא. דבר זה מאפשר כיום לפתח מערכת Full Stack מלאה ע”י שימוש ב-JavaScript גם בצד הלקוח (Frontend) וגם בצד השרת (Backend), ללא הצורך לשלב שפות צד שרת אחרות כגון #C, Java, Python וכדומה.

Node.js ניתן לכתוב ב-Native JavaScript וניתן לכתוב בשפת High-Level אחרת ההופכת את עצמה ל-JavaScript, כדוגמת TypeScript – השפה הפופולרית ביותר כיום ליצירת JavaScript, בהתאם לכך, קורס זה מועבר ברובו ע”י פיתוח TypeScript – לשם התעשייה הולכת. מודול היכרות עם שפת TypeScript קיים כחלק מהקורס עבור מי שלא מכיר את השפה.

הקורס מותאם למפתחי JavaScript/TypeScript המעוניינים לבנות Backends בארכיטקטורת RESTful Service, או לפתח מערכות אחרות ב-Node.js.

קורס מקוון זה מועבר באמצעות John Bryce Online Academy, הלמידה בקורסים הדיגיטליים שלנו הינה מבוססת למידה עצמית מקיפה הזמינה לכם מכל מקום ובכל זמן ובהובלת מיטב המרצים. סגל המרצים שלנו בעל ניסיון רב בהדרכה והינו בעלי ניסיון מעשי ועדכני בתעשייה לשם העברת הידע והכשרת כוח אדם חדש ואיכותי.

hat.png

מטרות הקורס

הקניית הידע והכישורים המקצועיים הנדרשים

רכישת ידע מקצועי בקצב אישי, מכל מקום ובכל זמן

kahal.png

למי מיועד הקורס

מתכנתים המעוניינים ללמוד Node.js ולבנות מערכת Backend ע"י שימוש ב-JavaScript או ב-TypeScript.

structure.png

תכנית הלימודים

הסילבוס המלא

Topic

Chapter

  1. What is Node.js?
  2. Installations Needed
  3. Node.js Hello World
  1. Introduction

שפתNode.js  – היכרות

  1. What is package.json File?
  2. Creating Custom Modules
  3. Using Built-In Modules
  4. Installing Local npm Package
  5. Restoring Project Dependencies
  6. Installing Global npm Package
  7. Installing Local npm Dev Package
  8. Using nodemon to Watch Changes
  9. Understanding Node.js Versioning
  10. Understanding the Global Object
  11. Creating Package Config File
  12. Using Package .env File
  1. Package & Modules

מהם Packages ומהם Modules, כיצד בונים כל אחד מהם?

  1. What is TypeScript?
  2. TypeScript Basics
  3. Creating a Node.js TypeScript Project
  1. TypeScript

שפת TypeScript – הכרות

  1. Understanding Synchronous Functions
  2. Understanding Asynchronous Functions – Part 1
  3. Understanding Asynchronous Functions – Part 2
  4. Understanding JavaScript Asynchronous Model
  5. The Try-Catch Problem
  6. successCallback & errorCallback to the Rescue
  7. Returning a Promise from Asynchronous Function
  8. The Callback-Hell Problem
  9. async-await to the Rescue
  10. Promisifying a Function – Part 1
  11. Promisifying a Function – Part 2
  1. Asynchronous

תכנות אסינכרוני

  1. File System Operations
  2. Write, Append, Read File Sync
  3. Write, Append, Read File Async – Part 1
  4. Write, Append, Read File Async – Part 2
  5. Write, Read JSON File
  1. File System

גישה למערכת הקבצים והתיקיות

  1. The Car-Game Scenario Problem
  2. Using Callbacks as a not-so-good-solution
  3. Using Events as a Better Solution
  1. Events

יצירה והעלאת אירועים

  1. What is a Web Service?
  2. Understanding HTTP Protocol
  3. Understanding REST Architecture
  4. Understanding REST API Convention
  5. Understanding REST API Errors
  1. RESTful Service

הבנה של ארכיטקטורת

 RESTful Service

  1. Using Express to Create a Server
  2. Using Postman to Test our Server
  3. Working with Layers
  4. Creating Product Model
  5. Creating the Data Access Layer
  6. Creating the Business Logic Layer
  7. Creating the Controllers Layer
  8. Running and Testing with Postman
  9. Adding Configuration Files
  10. Getting One Product
  11. Adding New Product
  12. Updating Full Product
  13. Updating Partial Product
  14. Deleting Existing Product
  15. Creating Additional Routes
  16. Using Query String
  1. Building REST API

בניית RESTful Service מלא

  1. What is a Middleware?
  2. Creating a Middleware
  3. Using a Middleware on App Level
  4. Using a Middleware on Controller Level
  5. Using a Middleware on Route Level
  6. Creating Pre-Route Middleware
  7. Creating Post-Route Middleware
  8. Creating a Non-Blocking Middleware
  9. Creating a Blocking Middleware
  10. Sending Errors to a Middleware
  11. Creating a Catch-All Middleware
  1. Middleware

בנייה ושימוש ב-Middleware

  1. Handling Exceptions
  2. Handling General System Errors
  3. Handling Route Not Found
  4. Handling Wrong Parameter Format
  5. Handling Resource Not Found – Part 1
  6. Handling Resource Not Found – Part 2
  7. Creating Joi Validation Schemas
  8. Validating Post Request
  9. Validating Put and Patch Requests
  1.  Error Handling

טיפול בשגיאות בצד השרת

  1. Adding Images to our REST Project
  2. Installing a File Upload Library
  3. Updating Product Model to Support an Image
  4. Saving an Image in Post Request – Part 1
  5. Saving an Image in Post Request – Part 2
  6. Saving an Image in Put Request
  7. Creating a Safe Delete for the Old Image
  8. Saving an Image in Patch Request
  9. Deleting an Image in Delete Request
  10. Serving an Image to Frontend
  1. Handling Images

טיפול בהעלאת תמונות לשרת

  1. What is JWT
  2. Creating uses.json with Some Users
  3. Creating User Model
  4. Adding User Validation
  5. Updating the DAL to Support Users
  6. Creating Registration Logic
  7. Creating Registration Route
  8. Creating Credentials Model
  9. Creating Login Logic
  10. Creating Login Route
  11. Signing and Returning a Token
  12. Creating a Token Verification Helper
  13. Blocking Routes using Verify Token Middleware
  14. Blocking Routes using Verify Admin Middleware
  15. Blocking Routes using Verify Role Middleware
  1. Authentication & Authorization

טיפול באימות (Authentication) ובהרשאות (Authorization)

  1. Understanding CORS Policy
  2. Supporting CORS Policy
  3. Exploring Winston Logger – Part 1
  4. Exploring Winston Logger – Part 2
  5. Using Winston Logger
  6. Handling Error Report
  7. Removing Password from Returned Token
  8. Hashing Passwords
  9. Salting Passwords
  10. Preventing IDOR Attacks
  11. Preventing XSS Attacks
  12. Preventing DoS Attacks
  13. Adding Helmet Against Problematic Headers
  14. Creating a SSL Certificate Files
  15. Using SSL Certificate Files for HTTPS
  1. Security

Security וכתיבת קוד מאובטח

  1. What is Socket.io?
  2. Running Socket.io Server
  3. Listening to Client Connect
  4. Connecting Client to Server
  5. Listening to Client Messages
  6. Sending Messages from Client
  7. Listening to Server Messages
  8. Sending Messages from Server
  9. Listening to Client Disconnect
  10. Disconnecting Client from Server
  11. Displaying Number of Connected Clients
  12. Understanding Single-Server-Multiple-Clients Architecture
  13. Creating a Chat Backend
  14. Creating a Chat Frontend
  15. Enhancing our Chat
  1. Socket.io

בנייה ושימוש ב-Socket.io

  1. What are Microservices?
  2. Using TypeScript Compiler to Generate JavaScript Output
  3. Creating Microservice A
  4. Creating Microservice B which uses Microservice A
  5. Sending a Value from Microservice B to Microservice A
  6. Creating Main App which uses Microservice B
  1. Microservices

מבוא ל-Microservices

  1. Conclusion
תנאי קבלה
  • ידיעת שפת תכנות כלשהי
  • ידיעת OOP
  • ידיעת JavaScript – יתרון
סביבת תרגול
  1. Node: https://nodejs.org/en/
  2. Visual Studio Code: https://code.visualstudio.com/download

 

כל דרישות והנחיות ההתקנה לתלמיד יפורטו בהרחבה במודול הראשון.

 

מבנה הקורס

הערכה כוללת 16 פרקים ותכולתה:

    • סרטוני הדרכה
    • תרגילים
    • פתרונות לתרגילים

Schedule Appointment

Fill out the form below, and we will be in touch shortly.

לא הצלחנו לאתר את הטופס.