אינטרנט ישראל
  • ראשי
  • אודות רן בר-זיק ואינטרנט ישראל
  • ערוץ טלגרם
  • מסטודון
  • התחברו אלי בטוויטר
  • התחברו אלי בלינקדאין
  • ספר ג'אווהסקריפט
  • ראשי
  • אודות רן בר-זיק ואינטרנט ישראל
  • ערוץ טלגרם
  • מסטודון
  • התחברו אלי בטוויטר
  • התחברו אלי בלינקדאין
  • ספר ג'אווהסקריפט
ראשי » פיתוח אינטרנט » פתרונות ומאמרים על פיתוח אינטרנט » node.js – מבוא למתחיל

node.js – מבוא למתחיל

רן בר-זיק פברואר 1, 2011 8:39 am אין תגובות

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

כדאי תמיד להשאר מעודכנים! אם יש לכם טלגרם, בדקו את ערוץ הטלגרם של האתר שבו אני מעדכן על פוסטים חדשים 🙂 אם אתם רוצים ללמוד תכנות באופן מקיף ומסודר, הצטרפו לאלפי הלומדים בפרויקט "ללמוד ג'אווהסקריפט בעברית" שמלמד לתכנת בג'אווהסקריפט, ב-Node.js ובריאקט וגם מלמד על תרומה לקוד פתוח. גם ספרים דיגיטליים וגם ספרים מודפסים. בשיתוף הקריה האקדמית אונו ובתמיכת חברות מובילות כגון Wix, Outbrain, Elementor, Iron Source, Chegg, Really Good ועוד.

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

node.js הפך בזמן האחרון לאחד מהבאזזוורדס הכי חזקות בתחום. בקצרה, מדובר בג'אווהסקריפט שרץ על בסיס מנוע V8 של גוגל על שרת לינוקס. השפה הזו מאפשרת לעשות דברים עם ג'אווהסקריפט בדומה לשפות צד שרת אחרות כגון PHP.

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

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

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

התקנת node.js על לינוקס דביאן

ראשית, נתקין כמה חבילות שנדרשות לנו על מנת לתפעל את node.js (סביר להניח שיש לכם אותן, אבל רק ליתר בטחון).


sudo apt-get install g++ curl libssl-dev apache2-utils

יש להוריד את node.js ואז לפתוח אותו בתיקיה כלשהי. אחרי כן יש להפעיל את הפקודות הבאות.


cd PATH/TO/DOWNLOAD
./configure
make
sudo make install

הפעלה ראשונית של node.js בשורת הפקודה

עכשיו ניתן להפעיל את node.js, בואו ננסה לעשות איזה טסט. נכתוב משהו ונריץ אותו דרך שורת הכתובת. צרו קובץ ארביטרארי כלשהו (לצורך העניין test.js) והכניסו לתוכו את הפשתגן הבא:


console.log("Hello World");


הסקריפט הזה פשוט מאד, בואו ונריץ אותו! נכתוב:


node test.js

ונקבל 'Hello World' בשורת הפקודה. מגניב מאד וגם קצת משעמם.

יצירת שרת http

בואו וננסה משהו קצת יותר יישומי – ניצור שרת http שיאזין לפורט 8080 וידפיס לנו על הדפדפן hello world!

node.js עובדת עם מודולים רבים שבהם אנו יכולים להשתמש באמצעות require. כל המודולים נמצאים בדוקומנטציה של node.js. אנו נשתמש במודול http על מנת ליצור שרת:



http = require("http");

http.createServer(function(request, response) {
    response.sendHeader(200, {"Content-Type": "text/html"});
    response.write("Hello World!");
    response.close();
}).listen(8080);

console.log("Server running at http://localhost:8080/");


מודול http הוא מודול פשוט למדי וקל לראות מה עשינו בו. אם נלך ל: http://localhost:8080 נוכל לראות את ה-Hello World כתוב בדפדפן עצמו.

שרת אינטרנט אמיתי

כמובן שאנחנו צריכים משהו קצת יותר רציני מלהדפיס 'שלום עולם', למה שלא ניצור שרת http שמסוגל להציג גם דפים, תמונות וקבצים? זה פשוט ביותר. ניצור בתיקיה מסוימת קובץ בשם index.html וקובץ בשם server.js שאליו נכניס את הקוד הבא:


http = require("http"),
    url = require("url"),
    path = require("path"),
    fs = require("fs");

http.createServer(function(request, response) {
    var uri = url.parse(request.url).pathname;
    var filename = path.join(process.cwd(), uri);
    path.exists(filename, function(exists) {
        if(!exists) {
            response.writeHead(404, {"Content-Type": "text/plain"});
            response.write("404 Not Found\n");
            response.end();
            return;
        }

        fs.readFile(filename, "binary", function(err, file) {
            if(err) {
                response.writeHead(500, {"Content-Type": "text/plain"});
                response.write(err + "\n");
                response.end();
                return;
            }

            response.writeHead(200);
            response.write(file, "binary");
            response.end();
        });
    });
}).listen(8080);


כניסה אל http://localhost:8080/index.html תציג לנו את העמוד שלנו. חמוד, לא? במאמרים הבאים אני אראה עוד כמה דברים מגניבים שאפשר לעשות עם node.js

כדאי תמיד להשאר מעודכנים! אם יש לכם טלגרם, בדקו את ערוץ הטלגרם של האתר שבו אני מעדכן על פוסטים חדשים 🙂 אם אתם רוצים ללמוד תכנות באופן מקיף ומסודר, הצטרפו לאלפי הלומדים בפרויקט "ללמוד ג'אווהסקריפט בעברית" שמלמד לתכנת בג'אווהסקריפט, ב-Node.js ובריאקט וגם מלמד על תרומה לקוד פתוח. גם ספרים דיגיטליים וגם ספרים מודפסים. בשיתוף הקריה האקדמית אונו ובתמיכת חברות מובילות כגון Wix, Outbrain, Elementor, Iron Source, Chegg, Really Good ועוד.
node.js ג'אווה סקריפט ו-jQuery באתרי אינטרנט

השארת תגובה

ביטול

ללמוד ג'אווהסקריפט בעברית

ללמוד לתכנת ג'אווהסקריפט בעברית שגייס יותר משלוש מאות אלף שקל ולמעלה מ-2000 תומכים - בואו ללמוד עכשיו איך לתכנת.

רשימת הנושאים
  • מדריכים
    • ריאקט
    • טייפסקריפט
    • ECMAScript 6
    • ES20XX
    • Node.js
    • Express
    • רספברי פיי
    • Babel
    • docker
    • MongoDB
    • Git
    • לימוד MySQL
    • SASS
    • jQuery
    • CSS3
    • HTML 5
    • SVN
    • LESS
  • פיתוח אינטרנט
    • פתרונות ומאמרים על פיתוח אינטרנט
    • jQuery Scripts
    • jQuery למתקדמים
    • יסודות בתכנות
    • נגישות אינטרנט
  • חדשות אינטרנט
  • מידע כללי על אינטרנט
    • רשת האינטרנט
    • בניית אתרי אינטרנט
  • rss logo

    לכל המאמרים

    לכל המאמרים שפורסמו באינטרנט ישראל משנת 2008 ועד עכשיו.
  • rss logo

    RSS Feed

    משתמשים בקורא RSS? אם כן, עקבו אחרי אינטרנט ישראל באמצעות פיד ה-RSS!
    מה זה RSS?
  • Twitter logo

    עקבו אחרי בטוויטר

    בחשבון הטוויטר שלי אני מפרסם עדכונים מהירים על חדשות בתחום התכנות והיזמות, התרעות על מצבי חירום ורכילות בוערת על תחום הווב.
    מה זה טוויטר?
  • facebook like image

    ערוץ הטלגרם של אינטרנט ישראל

    בערוץ הטלגרם של אינטרנט ישראל אני מפרסם את הפוסטים של באתר וכן עדכונים טכנולוגיים נוספים.
    מה זה טלגרם?
  • github logo

    הפרויקטים שלי בגיטהאב

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

כל הזכויות שמורות לרן בר-זיק ולאינטרנט ישראל | מדיניות הפרטיות של אתר אינטרנט ישראל | אתר אינטרנט ישראל נגיש לפי תקן WCAG 2.0 AA | הצהרת הנגישות של האתר | אבטחת מידע ודיווח על בעיית אבטחת מידע

גלילה לראש העמוד