Deno คืออะไร ว่ากันว่าจะมาแทน Node.js

23 May 2020,
Share: 
Cover image

สวัสดีครับ บทความนี้ผมจะมาเรียนรู้กันนะครับว่า Deno คืออะไร มีฟีเจอร์สำคัญอะไรบ้าง รวมไปถึงการใช้งานเบื้องต้น

Deno เป็น JavaScript Runtime เหมือนกับ Node.js เลยครับ ผู้สร้าง Deno คือ Ryan Dahl ซึ่งเป็นคนเดียวกันกับผู้ที่เริ่มโครงการ Node.js ตั้งแต่ปี 2009 หลังจากนั้นเค้าก็ได้ออกจากโครงการ Node.js ไปเมื่อปี 2012 และกลับมาพัฒนาโครงการ Deno โดยใช้ภาษา Rust ในการพัฒนา และกล่าวด้วยว่า Deno นั้นสร้างขึ้นมาเพื่อลบข้อเสียของ Node.js ตอนนี้ Deno ก็ออกเวอร์ชั่น 1.0 พร้อมสําหรับการใช้งานจริงแล้ว

ฟีเจอร์สำคัญของ Deno

  • Support TypeScript สามารถใช้กับ Typescript ได้ทันที ไม่ต้องคอมไพล์ก่อน
  • Security by default รันโค้ดด้วยความปลอดภัยสูงสุดเป็นค่าเริ่มต้น โค้ดไม่สามรถเชื่อมต่อเน็ตเวิร์ค, เขียนไฟล์, หรือเข้าถึงระบบภายนอกได้หากไม่ได้อนุญาต เช่นจะทำ Web server ต้องใส่แฟลก —allow-net
  • มีไลบรารีมาตรฐานโดยไม่ต้องพึ่งโครงการภายนอก โดยพอร์ตจากไลบรารีของ Go เป็นหลัก
  • มีระบบตรวจสอบ dependency มาในตัว และตัวฟอร์แมตโค้ดแบบมาตรฐาน เช่น dependency inspector, code formatter
  • ไม่มี Package manager และ centralize registry สามารถ Import library/dependency ได้โดยตรงผ่าน URL

Install

สามารถ Download และ Install ตาม Document ของ Deno ที่นี่ได้เลยครับ deno.land/

Getting Started

เริ่มต้น Deno ด้วย Project แรก Hello World กันครับ

คือจะบอกว่ามันง่ายมากๆ มันง่ายอย่างไงมาดูกันต่อครับ

แบบแรก เราสามารถทําแบบนี้ได้ครับ คือรัน Code ของเราที่อยู่บน Internet ได้เลย แบบนี้

$ deno run https://deno.land/std/examples/welcome.ts

หรือแบบที่สอง สร้าง file “app.ts” แล้วใส่ Code นี้ลงไป

import { serve } from 'https://deno.land/std@0.52.0/http/server.ts';
const s = serve({ port: 8000 });
console.log('http://localhost:8000/');
for await (const req of s) {
  req.respond({ body: 'Hello World\n' });
}

และใช้คําสั่ง run ด้วยคำสั่งนี้

$ deno run --allow-net app.ts

ให้สังเกตุว่า เราสามารถ Import script จาก internet มาใช้งานได้เลย และ —allow-net เพื่อ บอก Deno ว่าเราจะใช้ Network ด้วย

เป็นไงครับง่ายมั้ยครับ ถ้าเทียบกับ Node.js

Suggestion blogs

Review ไฟฉาย IMALENT DN70

ไฟฉาย IMALENT รุ่น DN70 เป็นไฟฉายขนาด ไม่เล็กและไม่ใหญ่จนเกินไป แต่ให้ความสว่างสูงถึง 3,800 Lumens แสงพุ่งไกล 325 เมตร ใช้ถ่านชาร์จลิเธี่ยมขนาด 26650 3.7V เพียงก้อนเดียว(มีแถมให้ในตัวไฟฉาย) สามารถชาร์จได้ด้วย Micro USB

ตัวหารร่วมมาก และการนำไปใช้

ตัวหารร่วมมาก (ห.ร.ม.) คือ ตัวหารร่วม (หรือตัวประกอบร่วม) ที่มีค่ามากที่สุด ที่นำไปหารจำนวนนับชุดใด(ตั้งแต่สองจำนวนขึ้นไป) ได้ลงตัว ต่อไปนี้เราจะเรียกว่าการหา ห.ร.ม. เช่น ห.ร.ม. ของ 8 และ 12 คือ 4 เพราะ 4 คือจำนวนที่มากที่สุดที่หารทั้ง 8 และ 12 ได้ลงตัว

Go EP.3 Go packages คืออะไร

สวัสดีครับ ในบทความนี้ก็เป็น EP.3 แล้วนะครับ โดยเนื้อหาจะเป็นเรื่องเกี่ยวกับ Go packages ว่าคืออะไร ใช้ทําอะไร และมีประโยชน์อย่างไรสําหรับท่านใดที่ยังไม่ได้อ่าน EP.2 ท่านสามารถกลับไปอ่านก่อนได้นะครับที่นี่ Go EP.2 ทําความรู้จักกับ Go module


Copyright © 2019 - 2026 thiti.dev |  v1.61.0 |  Privacy policy | 

Build with ❤️ and Astro.

Github profile   Linkedin profile   Instagram   X profile   Nostr   Youtube channel   Telegram   Email contact   วงแหวนเว็บ