Tags:
Node Thumbnail

Deno รันไทม์ JavaScript/TypeScript ออกเวอร์ชั่น 2.0 หลังออกเวอร์ชั่นแรกมาสี่ปี ความเปลี่ยนแปลงสำคัญคือการทำงานร่วมกันได้กับ Node.js เต็มตัว สามารถอ่านไฟล์ package.json และโฟลเดอร์ node_modules ได้

สำหรับ Deno เองที่จริงมีระบบจัดการแพ็กเกจผ่านไฟล์ deno.json ของตัวเอง และตอนนี้ก็ยังสามารถใช้งานอ้างอิงแพ็กเกจ npm ได้เหมือนกัน แนวทางการเข้ากันได้กับ Node.js ทำให้ตอนนี้สามารถใช้งานเฟรมเวิร์คยอดนิยมได้แทบทั้งหมด เช่น Next.js, Astro, Remix, Angular, SevelteKit

Tags:
Node Thumbnail

Deno รันไทม์คู่แข่ง NodeJS ออกเวอร์ชั่น 1.34 โดยเพิ่มฟีเจอร์สำคัญคือการคอมไพล์โปรแกรมเป็นไบนารีไฟล์เดียวให้ครอบคลุมยิ่งขึ้น

เดิม Deno รองรับคำสั่งคอมไพล์ตั้งแต่เวอร์ชั่น 1.6 แต่ก่อนหน้านี้ไม่รองรับการคอมไพล์โปรแกรมที่ดึงไลบรารีจาก npm ในเวอร์ชั่นนี้ก็รองรับแล้วทำให้สามารถใช้งานได้หลากหลายขึ้น ข้อดีของการคอมไพล์ทำให้สามารถนำโปรแกรมไปรันเครื่องอื่นได้สะดวกขึ้น แบบเดียวกับโปรแกรมภาษา Go ที่มักส่งไบนารีไฟล์เดียวไปรันได้เลย นอกจากนี้ยังมีข้อดีคือเวลาเริ่มรันโปรแกรมสั้นลงด้วย

Bun รันไทม์คู่แข่งก็เพิ่งรองรับการคอมไพล์ในเวอร์ชั่นล่าสุด

Tags:
Node Thumbnail

โครงการ Deno รันไทม์จาวาสคริปต์ ออกเวอร์ชัน 1.28 มีของใหม่ที่สำคัญคือรองรับโมดูล npm ของโครงการ Node.js ตามที่ประกาศไว้ ทำให้เราสามารถอิมพอร์ตโมดูล npm ที่มีมหาศาล 1.3 ล้านโมดูลมาใช้กับ Deno ได้

การใช้งาน npm ของ Deno ไม่จำเป็นต้องสั่ง npm install เพราะโมดูลจะถูกติดตั้งตอนรันโปรแกรมครั้งแรก, ไม่ต้องมีไฟล์ package.json และไม่ต้องมีโฟลเดอร์ node_modules เพราะโมดูลจะถูกแคชในไดเรคทอรี global แทน

Tags:
Node Thumbnail

Deno โครงการรันไทม์จาวาสคริปต์ประกาศแผนการพัฒนาเพิ่มเติม โดยจุดใหญ่ที่สุดคือการรองรับแพ็กเกจต่างๆ จาก npm ทำให้สามารถใช้แพ็กเกจแบบเดียวกับใน NodeJS ได้ แม้ว่าภายในแล้ว Deno จะต่างกับ NodeJS พอสมควร

Tags:
Node Thumbnail

Deno ประกาศเฟรมเวิร์ค Fresh เวอร์ชั่น 1.0 พร้อมใช้งานเต็มรูปแบบ หลังจากเปิดตัวมาไม่นานนัก โดย Fresh แตกต่างจากเฟรมเวิร์คอื่นๆ ที่มันพยายามหลีกเลี่ยงการส่งจาวาสคริปต์ไปรันบนเบราว์เซอร์ หากไม่ได้คอนฟิก component ใดเป็นการเฉพาะ เว็บทั้งหมดที่เบราว์เซอร์ได้รับก็จะไม่มีต้องรันจาวาสคริปต์เลย

ทีมงาน Deno ระบุว่าเฟรมเวิร์คทุกวันนี้อาศัยการรันจาวาสคริปต์บนไคลเอนต์จำนวนมาก ผลที่ได้คือผู้ใช้มักต้องดาวน์โหลดโค้ดจาวาสคริปต์ขนาดใหญ่ การทำงานช้าลงโดยเฉพาะในอุปกรณ์เคลื่อนที่ ตัว Fresh จะส่งจาวาสคริปต์ไปเป็นส่วนๆ เฉพาะที่จำเป็น สำหรับนักพัฒนา Fresh ไม่มีขั้นตอนการ build กระบวนการพัฒนาและการ deploy จึงทำได้เร็วกว่าเฟรมเวิร์คอื่นๆ มาก

Tags:
Node Thumbnail

บริษัท Deno ของผู้สร้าง Node.js ที่หันมาทำเฟรมเวิร์คจาวาสคริปต์ที่เขียนด้วย Rust ตั้งแต่ปี 2020 ประกาศข่าวระดมทุน Series A มูลค่า 21 ล้านดอลลาร์จากนักลงทุนหลายราย นำโดย Sequoia Capital และมี Nat Friedman ผู้ร่วมก่อตั้ง Xamain และอดีตซีอีโอ GitHub มาร่วมลงทุนด้วย

ตัวเฟรมเวิร์ค Deno จะยังเป็นโอเพนซอร์สต่อไปเช่นเดิม แต่โมเดลธุรกิจของบริษัท Deno คือ Deno Deploy ระบบคลาวด์ที่ใช้รัน JavaScript, TypeScript, WebAssembly ประสิทธิภาพสูง กินทรัพยากรน้อย ราคาถูกกว่าการใช้สถาปัตยกรรมคอนเทนเนอร์ที่นิยมกันในปัจจุบัน

Tags:
Node Thumbnail

Luca Casonato หนึ่งในนักพัฒนาหลักของโครงการ Deno เปิดโครงการ Fresh เฟรมเวิร์คสำหรับ frontend ขนาดเล็ก แต่มีแนวคิดแก้ปัญหาเฟรมเวิร์คอื่นๆ หลายอย่าง

ตัวเฟรมเวิร์คเป็นแบบ server side render (SSR) และอาศัยการทำ routing ด้วยไฟล/โฟลเดอร์แบบเดียวกับ Next.js แต่ Fresh นั้นไม่มีการ build สามารถแก้ไฟล์แล้วรันได้ทันที หรือหากอยู่ระหว่างการพัฒนาก็เพิ่มออปชั่น --watch เพื่อให้โหลดไฟล์ใหม่ทันทีระหว่างแก้ไข และผลที่ได้หากไม่ได้กำหนดไว้เฉพาะก็จะไม่มี javascript ไปถึงเบราว์เซอร์ผู้ใช้เลย

ตอนนี้ Fresh ยังอยู่ระหว่างการพัฒนา และผู้พัฒนาแนะนำว่าอย่าเพิ่งทำไปใช้บนโปรดักชั่น

ที่มา - Deno

Tags:
Node Thumbnail

Netlify ผู้ให้บริการคลาวด์สำหรับการพัฒนาเว็บ เปิดบริการ Netlify Edge Functions บริการ serverless โดยใช้ Deno เป็นเอนจินภายในที่อาจจะใช้สำหรับรันงานเฉพาะทาง เช่น เรนเดอร์ภาพ, แก้ไขคอนเทนต์ก่อนส่งถึงผู้ใช้, ทดสอบผู้ใช้แบบ A/B ไปจนถึงการรันเฟรมเวิร์ค front-end เต็มรูปแบบ

ทาง Netlify เคยเปิดทดสอบบริการรูปแบบเดียวกันมาก่อนแล้วในชื่อ Edge Handlers แต่ใช้เอนจินเฉพาะของตัวเอง แบบเดียวกับผู้ให้บริการคลาวด์รายอื่น แต่ปรากฎว่าไม่ได้รับความนิยมเพราะนักพัฒนาใช้เฟรมเวิร์คยอดนิยมไม่ได้เลย รอบบนี้การเปิดตัว Edge Functions จึงหันมาใช้เอนจิน Deno แล้วทดสอบกับเฟรมเวิร์คดังๆ ได้แก่ Astro, 11ty, Hydrogen, Next.js, Nuxt, Remix, และ SvelteKit

Tags:
Topics: 
Node Thumbnail

MDN Web Docs โครงการดูแลเอกสารฟีเจอร์ต่างๆ ของ Web API ที่เดิมเป็นโครงการของ Mozilla แต่ได้รับเงินจากโครงการ Open Web Docs เป็นการเฉพาะในภายหลัง ล่าสุดทาง MDN ก็เพิ่มข้อมูลในหมวด Deno เอนจินเว็บสำหรับการทำงานฝั่งเซิร์ฟเวอร์ ทำให้ตอนนี้ข้อมูลบน MDN มีข้อมูลฝั่งเซิร์ฟเวอร์สองตัวคือ Deno และ NodeJS

Deno เป็นรันไทม์จาวาสคริปต์ที่สร้างโดย Ryan Dahl ผู้เริ่มโครงการ NodeJS เอง แต่กลับมาสร้าง Deno โดยใช้แนวทางใหม่ๆ เช่น ใช้ภาษา Rust ในการพัฒนา โมเดลความปลอดภัยเน้นการล็อกไว้ก่อนเป็นค่าเริ่มต้น และมีไลบรารีมาตรฐานที่เลียนแบบมาจากไลบรารีของภาษา Go

Tags:
Node Thumbnail

Deno รันไทม์สำหรับรันจาวาสคริปต์บนเซิร์ฟเวอร์ คู่แข่ง NodeJS ออกเวอร์ชั่น 1.9 โดยมีฟีเจอร์ใหญ่คือการเตรียมเปลี่ยน HTTP Server ในตัว จากเดิมที่เป็นเซิร์ฟเวอร์เขียนด้วย TypeScript มาเป็นโครงการ Hyper ที่เป็นภาษา Rust (ตัว Deno เองเป็น Rust อยู่แล้ว)

การเปลี่ยนเซิร์ฟเวอร์ใหม่ทำให้ Deno จะรองรับ HTTP/2 ไปด้วย และประสิทธิภาพยังดีขึ้นถึง 48% จากการทดสอบตอบกลับด้วยข้อความ Hello World อย่างเดียว แต่ตอนนี้ฟีเจอร์นี้ยังปิดไว้เป็นค่าเริ่มต้น ต้องเปิดด้วยออปชั่น --unstable เท่านั้น

ฟีเจอร์อื่นๆ เช่น

Tags:
Node Thumbnail

Deno โครงการรันไทม์จาวาสคริปต์สำหรับเซิร์ฟเวอร์คู่แข่ง Nodejs ที่สร้างโดยผู้เริ่มโครงการ Nodejs เองประกาศตั้งบริษัท Deno Company พร้อมเงินทุนประเดิม 4.9 ล้านดอลลาร์

ในบล็อคประกาศเปิดตัวบริษัท ผู้ก่อตั้ง Deno ยืนยันว่าโครงการ Deno จะเป็นโอเพนซอร์สสัญญาอนุญาต MIT ต่อไป และจะไม่กั๊กฟีเจอร์บางส่วนเอาไว้ทำการค้า (รูปแบบ open core) ที่โครงการโอเพนซอร์สจำนวนมากทำกัน แต่จะสร้างธุรกิจจากโครงการโอเพนซอร์สแทน

แม้ในการประกาศครั้งนี้จะไม่ได้ระบุว่าธุรกิจที่จะทำเงินมีอะไรบ้าง แต่ Deno ก็มีบริการ Deno Deploy บริการรันไทม์จาวาสคริปต์ที่รันบน CDN ทั่วโลกให้บริการอยู่

Tags:
Node Thumbnail

โครงการ Deno รันไทม์ JavaScript/TypeScript ที่เขียนด้วยภาษา Rust ของผู้สร้าง Node.js เปิดตัวเวอร์ชัน 1.0 ไปเมื่อเดือนพฤษภาคม

ตอนนี้ Deno เดินทางมาถึงเวอร์ชัน 1.5 โดยปรับปรุงทั้งเรื่องฟีเจอร์และประสิทธิภาพอย่างรวดเร็ว ของใหม่ในเวอร์ชันนี้คือ Deno เปลี่ยนมาใช้คอมไพเลอร์ชื่อ swc ที่เขียนด้วยภาษา Rust เช่นกัน ทำให้ประสิทธิภาพตอนเช็คชนิดของตัวแปร (type-check) เพิ่มขึ้น 3 เท่า (หรือ 15 เท่าถ้าระบุว่าไม่ต้องเช็คเลย)

ในฝั่งของขนาดโค้ด ทีม Deno ปรับวิธีการจัดการไฟล์ bundle ใหม่ ให้ลดขนาดโค้ดลงได้มาก บาง bundle อาจมีขนาดลดลงได้ถึง 35%

Tags:
Node Thumbnail

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

ฟีเจอร์สำคัญของ Deno ได้แก่