แนวโน้มการพัฒนาเว็บได้เปลี่ยนแปลงไปอย่างมากในช่วงสองสามปีที่ผ่านมา และในฐานะนักพัฒนาเว็บ การเป็นผู้นำในเกมของคุณ สิ่งสำคัญคือต้องคอยอัปเดตเทคโนโลยีล่าสุดอยู่เสมอ
JavaScript เป็นภาษาโปรแกรมที่กำลังมาแรงในปัจจุบัน ไม่ต้องสงสัยเลยว่าเป็นเทคโนโลยีที่ได้รับความนิยมมากที่สุดที่นักพัฒนาฟูลสแต็กใช้
เว็บเฟรมเวิร์กของ JavaScript ได้กลายเป็นโซลูชันที่มหัศจรรย์สำหรับการพัฒนาเว็บที่รวดเร็วขึ้นด้วยประสิทธิภาพ ความปลอดภัย และต้นทุนที่ต่ำที่สุด ฉันค่อนข้างแน่ใจว่าคุณเคยได้ยินเกี่ยวกับ โหนด JavaScript (เรียกกันทั่วไปว่า Node.js หรือง่ายๆ โหนด) มีข่าวลือเกี่ยวกับเรื่องนี้ทางอินเทอร์เน็ต
ในบทความนี้ ฉันจะแสดงวิธีเริ่มต้นพัฒนาแอปพลิเคชันใน JavaScript โดยใช้ Node.js ในลินุกซ์ แต่ก่อนอื่น มาทำความรู้จักกับ Node.js.
Node.js เป็นโอเพ่นซอร์ส รันไทม์ JavaScript น้ำหนักเบา และมีประสิทธิภาพ ซึ่งสร้างจากเอ็นจิ้น V8 JavaScript ของ Chrome ได้รับการออกแบบโดยไม่มีเธรด (เธรดเดียว) และมีการใช้งานคล้ายกับ Twisted ซึ่งเป็นเอ็นจิ้นเครือข่ายที่สร้างโดยใช้ Python หรือ Event Machine ซึ่งเป็นไลบรารีประมวลผลเหตุการณ์สำหรับโปรแกรม Ruby
หัวใจของ Node.js อิงตามโปรแกรมที่ขับเคลื่อนด้วยเหตุการณ์ โปรแกรมเมอร์ควรเข้าใจว่ามีกิจกรรมใดบ้างและจะตอบสนองต่อเหตุการณ์เหล่านั้นอย่างไร
Node.js ใช้ JavaScript ตัวจัดการแพ็คเกจและระบบนิเวศที่เรียกว่า “นพ”ซึ่งมีไลบรารีโอเพนซอร์สฟรีมากมาย รองรับการพัฒนาซอฟต์แวร์แบบแยกส่วน คุณสามารถใช้เพื่อติดตั้งโหนดแพ็กเกจ แชร์ แจกจ่ายโค้ดของคุณ และจัดการการขึ้นต่อกันของแพ็กเกจ
Node.js มีประสิทธิภาพและมีความสำคัญด้วยเหตุดังต่อไปนี้
ด้วยบทนำสั้นๆ นี้ คุณต้องกระตือรือร้นที่จะเขียนก่อน JavaScript โปรแกรม. อย่างไรก็ตาม ก่อนอื่น คุณต้องติดตั้ง Node.js และ NPM แพ็คเกจบนระบบ Linux ของคุณโดยใช้คำแนะนำต่อไปนี้
เมื่อคุณติดตั้งแล้ว Node.js, คุณพร้อมที่จะไป ขั้นแรกให้เริ่มต้นด้วยการสร้างไดเร็กทอรีที่จะเก็บไฟล์แอปพลิเคชันของคุณ
$ sudo mkdir -p /var/www/myapp.
จากนั้นย้ายไปยังไดเร็กทอรีนั้นแล้วสร้าง a package.json
ไฟล์สำหรับการสมัครของคุณ ไฟล์นี้ช่วยเป็นเอกสารขนาดเล็กสำหรับโปรเจ็กต์ของคุณ: ชื่อโปรเจ็กต์ ผู้แต่ง รายการแพ็คเกจที่ขึ้นอยู่กับ และอื่นๆ
$ cd /var/www/myapp. $ npm เริ่มต้น
นี่จะถามคำถามคุณหลายข้อ เพียงตอบตามที่อธิบายไว้ด้านล่างแล้วกด [เข้า]. โปรดทราบว่าสิ่งที่สำคัญที่สุดใน package.json
คือช่องชื่อและรุ่นตามที่อธิบายไว้ด้านล่าง
ถัดไป สร้าง a server.js
ไฟล์.
$ sudo vi server.js
คัดลอกและวางรหัสด้านล่างในนั้น
var http = ต้องการ ('http'); http.createServer (ฟังก์ชัน (req, res) { res.writeHead (200, { 'Content-Type': 'text/plain' }); res.end('สวัสดีชาวโลก!'); }). ฟัง (8080); console.log('เซิร์ฟเวอร์เริ่มทำงานบน localhost: 8080; กด Ctrl-C เพื่อยุติ!!!');
ถัดไป เริ่มแอปพลิเคชันของคุณโดยใช้คำสั่งต่อไปนี้
$ โหนดเซิร์ฟเวอร์ js หรือ. $ npm เริ่ม
ถัดไป เปิดเว็บเบราว์เซอร์และเข้าถึงเว็บแอปของคุณ ซึ่งไม่ได้ทำอะไรมากไปกว่าการพิมพ์สตริง "สวัสดีชาวโลก!"โดยใช้ที่อยู่:
http://localhost: 3333.
ในโค้ดด้านบนของเรา เหตุการณ์หลักที่กำลังประมวลผลคือ an HTTP ขอผ่านทาง โมดูล HTTP.
ใน Node.js, โมดูลเป็นเหมือน JavaScript ไลบรารีมีฟังก์ชันที่คุณสามารถนำกลับมาใช้ใหม่ในแอปของคุณได้ คุณสามารถใช้โมดูลในตัว โมดูลปาร์ตี้ 30 โมดูล หรือสร้างโมดูลของคุณเอง
หากต้องการเรียกใช้โมดูลในแอปของคุณ ให้ใช้ฟังก์ชัน require ดังที่แสดง
var http = ต้องการ ('http');
เมื่อรวมโมดูล http แล้ว มันจะสร้างเซิร์ฟเวอร์ที่รับฟังพอร์ตเฉพาะ (3333 ในตัวอย่างนี้) NS http.creatServer เมธอดสร้างเซิร์ฟเวอร์ http จริงซึ่งยอมรับฟังก์ชัน (ซึ่งถูกเรียกใช้เมื่อไคลเอ็นต์พยายามเข้าถึงแอป) เป็นอาร์กิวเมนต์
http.createServer (ฟังก์ชัน (req, res) { res.writeHead (200, { 'Content-Type': 'text/plain' }); res.end('สวัสดีชาวโลก!'); }). ฟัง (8080);
ฟังก์ชันใน http.createServer มีสองอาร์กิวเมนต์: ขอ (ขอ) และ res (ตอบกลับ). NS ความต้องการ อาร์กิวเมนต์คือคำขอจากผู้ใช้หรือไคลเอนต์และ res อาร์กิวเมนต์ส่งการตอบกลับไปยังไคลเอนต์
res.writeHead (200, { 'ประเภทเนื้อหา': 'ข้อความ/ธรรมดา' }); #นี่คือส่วนหัว HTTP การตอบสนอง res.end('สวัสดีชาวโลก!');
ส่วนสุดท้ายของโค้ดจะส่งเอาต์พุตไปยังคอนโซล เมื่อเซิร์ฟเวอร์เปิดตัว
console.log('เซิร์ฟเวอร์เริ่มทำงานบน localhost: 8080; กด Ctrl-C เพื่อยุติ!!!');
ในส่วนนี้ ผมจะอธิบายแนวคิดที่สำคัญที่สุดอย่างหนึ่งภายใต้ Node.js การเขียนโปรแกรมที่เรียกว่า เส้นทาง (เปรียบได้กับการกำหนดเส้นทางภายใต้เครือข่ายคอมพิวเตอร์: กระบวนการค้นหาเส้นทางการรับส่งข้อมูลในเครือข่าย)
ที่นี่, เส้นทาง เป็นเทคนิคในการจัดการคำขอของลูกค้า ให้บริการเนื้อหาที่ลูกค้าร้องขอตามที่ระบุใน URL URL ประกอบด้วยเส้นทางและสตริงการสืบค้น
หากต้องการดูสตริงการสืบค้นคำขอของลูกค้า เราสามารถเพิ่มบรรทัดด้านล่างในการตอบกลับของเรา
res.write (req.url); ส่งซ้ำ()
ด้านล่างเป็นรหัสใหม่
var http = ต้องการ ('http'); http.createServer (ฟังก์ชัน (req, res) { res.writeHead (200, { 'Content-Type': 'text/plain' }); res.write (req.url); ส่งซ้ำ(); }). ฟัง (8080); console.log('เซิร์ฟเวอร์เริ่มทำงานบน localhost: 8080; กด Ctrl-C เพื่อยุติ!!!');
บันทึกไฟล์และเริ่มต้นแอปพลิเคชันของคุณอีกครั้งโดยใช้คำสั่งต่อไปนี้
$ โหนดเซิร์ฟเวอร์ js หรือ. $ npm เริ่ม
จากเว็บเบราว์เซอร์ ให้พิมพ์ URL ต่างๆ ซึ่งจะแสดงดังที่แสดงด้านล่าง
http://localhost: 3333. http://localhost: 3333/ประมาณ. http://localhost: 3333/tecmint/ผู้เขียน.
ตอนนี้เราจะสร้างเว็บไซต์ขนาดเล็กจริงๆสำหรับ เทคมินท์ มีโฮมเพจ เกี่ยวกับ และหน้าผู้แต่ง เราจะแสดงข้อมูลบางส่วนในหน้าเหล่านี้
เปิด server.js
ไฟล์สำหรับแก้ไขและเพิ่มรหัสด้านล่างในนั้น
//รวมโมดูล http var http = ต้องการ ('http'); http.createServer (ฟังก์ชัน (req, res) { //เก็บ URL ในตัวแปร q_string var q_string = req.url; สวิตช์ (q_string) { กรณี '/': res.writeHead (200, { 'ประเภทเนื้อหา': 'ข้อความ/ธรรมดา' }); res.write('ยินดีต้อนรับสู่ Tecmint.com!') res.end(); หยุดพัก; ตัวพิมพ์ '/about': res.writeHead (200, { 'Content-Type': 'text/plain' }); res.write('เกี่ยวกับเรา'); res.write('\n\n'); res.write('Tecmint.com - Linux HowTos ที่ดีที่สุดบนเว็บ'); res.write('\n'); res.end('ดูข้อมูลเพิ่มเติม: https://www.tecmint.com/who-we-are/'); หยุดพัก; case '/tecmint/authors': res.writeHead (200, { 'Content-Type': 'text/plain' }); res.write('ผู้เขียน Tecmint'); res.write('\n\n'); res.end('ค้นหาผู้เขียนทั้งหมดของเราที่นี่: https://www.tecmint.com/who-we-are/'); หยุดพัก; ค่าเริ่มต้น: res.writeHead (404, { 'ประเภทเนื้อหา': 'ข้อความ/ธรรมดา' }); res.end('ไม่พบ'); หยุดพัก; } }).ฟัง (3333); console.log('เซิร์ฟเวอร์เริ่มทำงานบน localhost: 3333; กด Ctrl-C เพื่อยุติ...');
ในโค้ดด้านบนนี้ เราได้เห็นวิธีการเขียนความคิดเห็นใน Node.js ใช้ //
อักขระและยังแนะนำคำสั่ง switch และ case สำหรับการร้องขอไคลเอ็นต์การกำหนดเส้นทาง
บันทึกไฟล์ เริ่มเซิร์ฟเวอร์ และลองเข้าถึงหน้าต่างๆ
แค่นั้นแหละ! สามารถดูข้อมูลเพิ่มเติมได้ที่ Nodejs และ NPM เว็บไซต์
อ่านเพิ่มเติม: วิธีติดตั้ง PM2 เพื่อเรียกใช้แอป Node.js บน Linux
Node.js กำลังเพิ่มขึ้นสู่จุดสูงสุดใหม่ในวันนี้ มันทำให้การพัฒนาแบบฟูลสแตกง่ายกว่าเมื่อก่อนมาก เป็นปรัชญาเฉพาะของการเขียนโปรแกรมที่ขับเคลื่อนด้วยเหตุการณ์ ช่วยให้คุณสร้างกระบวนการเว็บและเซิร์ฟเวอร์ที่รวดเร็ว มีประสิทธิภาพ และปรับขนาดได้
ต่อไปเราจะอธิบาย Node.js เฟรมเวิร์ก ซึ่งขยายขีดความสามารถดั้งเดิมสำหรับการพัฒนาเว็บ/แอปพลิเคชันมือถืออย่างรวดเร็วและเชื่อถือได้ แบ่งปันความคิดของคุณเกี่ยวกับบทความนี้ผ่านทางส่วนความคิดเห็นด้านล่าง