PracticU

מה זה Node.js

בלי כתוביותעם כתוביות
PracticU › קורס NodeJS › מה זה Node.js
מילון מושגים:
Node.js - סביבת ריצה שמאפשרת להריץ קוד JavaScript מחוץ לדפדפן, בעיקר בצד השרת.
JavaScript - שפת תכנות שרצה בעיקר בדפדפן ומוסיפה אינטראקטיביות לדפי אינטרנט. רצה גם בצד השרת באמצעות Node.js.
קוד פתוח - תוכנה שקוד המקור שלה זמין לציבור לצפייה, לשימוש ולשינוי, לרוב לפי רישיון מתאים.
Linux - מערכת הפעלה בקוד פתוח מבוססת ליבת Linux, נפוצה מאוד בשרתים וקיימת בהפצות רבות כמו Ubuntu.
API - ממשק תכנותי שמגדיר כיצד תוכנה אחת פונה לאחרת ומחליפה איתה נתונים ופעולות.
REST - סגנון לבניית ממשקי API מעל HTTP, המבוסס על משאבים ועל שיטות סטנדרטיות כמו GET ו-POST.
HTTP - פרוטוקול להעברת דפי אינטרנט ונתונים בין דפדפן לשרת. הגרסה המאובטחת שלו היא HTTPS.
תגובה - המידע שהשרת מחזיר ללקוח בתשובה לבקשה, הכולל בדרך כלל נתונים וקוד סטטוס.

מה זה Node.js
Node.js היא סביבת הרצה של JavaScript, בקוד פתוח (Open Source) ורב-פלטפורמית. הקוד שלה גלוי לכולם, והיא מותקנת על Windows, Linux, Mac וכדומה.
איך היא פועלת
Node.js מריצה JavaScript מחוץ לדפדפן, ומשתמשת במנוע V8 של כרום, שהוא מהמנועים המהירים ביותר. הקוד רץ בתהליך אחד (Single Threaded), כלומר יש מנגנון הרצה אחד. לכן חישוב כבד, כמו עיבוד תמונה או וידאו, עלול לתפוס את כל הפלטפורמה ולמנוע שירות ללקוחות אחרים.
מה מתאים לה
Node.js מתאימה לפעולות קצרות ומהירות, כמו גישה לדיסק, למסד נתונים ושמירת מידע, ולכן היא יכולה לשרת הרבה לקוחות. השימוש המרכזי שלה הוא בניית שירותי Back-end, שנקראים לעיתים API או REST, ונותנים מענה לדפדפנים ולאפליקציות מובייל.
רקע
Node.js נוצרה ב-2009 על ידי ריין דל, ומאז הפופולריות שלה רק גדלה. את ההתקנה מבצעים מאתר Node.js הרשמי.
ארכיטקטורה בקצרה
הלקוח שולח בקשת HTTP לשרת. שרת Node.js הוא אפליקציית C++ בשם node.exe, ובתוכה מנוע V8 שמריץ את קוד ה-JavaScript ומחזיר את התשובה (response) ללקוח. בקורס נכתוב את הקוד בעצמנו, ב-JavaScript, ונלמד גם את הבסיס וגם נושאים מתקדמים.
השיעור הבא בקורס: הסבר על NPM

פרקי ההרצאה: מה זה Node.js

  1. 00:00

    מה זה Node.js: סביבת הרצה של JavaScript

  2. 00:42

    Cross-Platform: הרצה על כל מערכת הפעלה

  3. 01:19

    מנוע V8 ומהירות ההרצה

  4. 01:59

    Single Thread: מה לא כדאי לבצע

  5. 02:45

    מתי Node.js מתאימה: פעולות קצרות

  6. 03:25

    בניית שירותי Back-end ו-API

  7. 04:03

    איפה Node.js נמצאת בארכיטקטורת הווב

  8. 04:45

    בקשה ותשובה בין הלקוח לשרת

תמלול ההרצאה: מה זה Node.js

הטקסט המלא של הדקות הראשונות בהרצאה «מה זה Node.js» בקורס הווידאו של PracticU – כתוביות בעברית עם זמן התחלה לכל פסקה. כך תוכלו לקרוא ולחפש את הנושאים לפני שמתחילים ללמוד.

  1. 00:03

    ראשית חשוב לנו להבין מה זה Node.js. אז Node.js זה Open Source Cross-Platform JavaScript Runtime Environment. Open Source אומר שכל הקוד שאנחנו כותבים הוא בשפת JavaScript והוא נגיש לכולם וכל אחד יכול פשוט לקרוא את הקוד הזה, הקוד לא מוסתר מאף אחד.

  2. 00:31

    רוס פלטפורם אומר שאנחנו יכולים להתקין את Node.js על כל פלטפורמה, כלומר על כל מכונה שיש בה כל מערכת הפעלה שהיא. זה יכול להיות מותקן על Windows, זה יכול להיות מותקן על Linux, זה יכול להיות מותקן על Mac וכדומה.

  3. 00:50

    JavaScript Runtime Environment מציין ש-Node.js זה פשוט סביבה שמריצה בתוכה קודים של JavaScript. Node.js מריצה JavaScript מחוץ לדפדפן.

  4. 01:07

    אנחנו יודעים שJavaScript רצה כחלק מדפדפנים. דפדפנים מריצים JavaScript. אז Node.js פשוט עושה את זה ומסוגלת להריץ JavaScript מחוץ לדפדפן וללא קשר בכלל לדפדפן.

  5. 01:23

    Node.js משתמשת במנוע של כרום שנקרא V8 כדי להוציא לפועל את JavaScript לכל דפדפן יש איזשהו סוג של מנוע לכרום יש את אחד המנועים המהירים ביותר אם לא המהיר ביותר ו-Node.js משתמשת במנוע הזה בכדי להוציא לפועל את קוד JavaScript לכן Node.js מאוד מאוד מהירה להרצה אבל חשוב להבין מה נכון לבצע עם Node.js ומה לא נכון לבצע

  6. 01:59

    עם Node.js אנחנו נראה בהמשך ש-Node.js בגלל שהיא מריצה JavaScript אז היא נחשבת כ-Single Threaded. זה אומר שקיים איזשהו Thread או מנגנון הרצה אחד ויחיד בכדי להריץ את כל הפלטפורמה הזאת.

  7. 02:18

    לכן אם אנחנו עכשיו מבצעים חישוב מאוד מורכב שלוקח המון זמן כמו עיבוד תמונה או עיבוד וידאו או משהו כזה, בעצם ותופס את כל זמן הריצה של Node.js ואנחנו לא נוכל לתת שירות ללקוחות אחרים שרוצים להשתמש במערכת.

  8. 02:41

    למה Node.js כן טובה? Node.js טובה לביצוע פעולות קצרות של גישה לדוגמה לדיסק או גישה למסדי נתונים ושמירת מידע במהירות ואז יכולה לשרת הרבה לקוחות. אז אם אני מבצע פעולה מאוד מאוד כבדה, אני פשוט תופס את כל המשאבים עבור לקוח אחד ושאר הלקוחות לא יכולים לקבל מענה.

  9. 03:09

    אם אני מבצע פעולות מהירות, קצרות, Node.js מצוינת לזה. הדבר המרכזי ש-Node.js משמשת עבורו זה בניית Back-end Services. לפעמים קוראים לזה APIs, כלומר Application Programming Interface.

  10. 03:30

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

  11. 03:47

    Node.js נוצרה על ידי בחור שנקרא ריין דל ב-2009 והפופולריות שלה גדלה כל הזמן מאז. אתר שמאפשר להוריד את Node.js זה www.node.js.org אנחנו תכף ניכנס נוריד ונתקין את Node.js אז ראשית בואו נבין טיפה מה קורה מבחינת Node.js איפה בעצם Node.js נמצאת ויש לנו מערכת של ווב יש לנו כאן בצד שמאל לקוח שיכול להריץ מחשב

  12. 04:25

    PC או לפטופ או אפליקציית מובייל ויש לו דפדפנים לדוגמה והוא על גבי רשת האינטרנט שפורטוקול רשת האינטרנט זה HTTP מבצע request בכדי לגלוש לשרת שיש בו בעצם את האתר או את השירות שהוא צריך והאתר או השירות פשוט מבצעים איזושהי פעולה חישוב מחזירים לו מידע

  13. 04:53

    וזה בעצם מתבצע כ-response בחזרה ללקוח. אז בקליינט סייד יש לנו דפדפנים, יש לנו מובייל אפס ובסרבר סייד יושבת לה Node.js ונותנת את השירות ויכולה גם לגשת לדטאבייס ולחשוף

לקורס המלא: קורס NodeJS אונליין בעברית

ההרצאה הקודמת: מבוא ל-NodeJS

ההרצאה הבאה: הסבר על NPM

הרצאות קשורות מקורסים אחרים

  • שחזור node modules
  • Swarm - Node Labels

קורסים נוספים במסלול

  • קורס יסודות HTML - בניית אתר אינטרנט פשוט
  • קורס CSS 3 - בדגש על Flex & Grid
  • קורס Javascript כולל JQuery
  • קורס ג'אווה סקריפט מעשי - JavaScript
  • קורס TypeScript
  • קורס ריאקט - React