Javascript

เขียน JavaScript แบบภาษา Ruby ด้วย RubyJS

เรื่องที่เกี่ยวข้อง - Javascript, RubyJS

วันนี้หลังจากว่างๆ ตัดวิดีโอคอร์สสอนพัฒนาแอพ iOS และ Android ด้วย HTML5 และ Ionic 2 ออนไลน์ ก็แว้บมาดูความเป็นไปของโลกบน Facebook ซักหน่อย แล้วก็โป๊ะเช้ะ เห็นน้องกอล์ฟ แชร์เจ้านี่มา เห็นน่าสนใจดี เลยของแชร์ต่อ

แท่น แทน แท๊นนนน

RubyJS

ชื่อออกมาอย่างนี้ แน่นอนว่าต้องเกี่ยวกับภาษา Ruby และ JavaScript ว่าแต่มันคืออะไร? เหมาะกับเราไหม? อ่านต่อด้านล่างเลย

RubyJS: JavaScript Library สำหรับคนเขียน Ruby โดยเฉพาะ

ถ้าเกิดเราเคยทำเว็บ น่าจะเคยเจอช่วงเวลาที่เราเขียนโค้ดมากกว่า 1 ภาษาแน่นอน เช่นแบบเบาะๆ ก็ HTML-CSS-PHP

ถ้าโหดๆ หน่อยลองเขียน JavaScript Framework อย่าง Angular 1 และย้ายมาเขียน PHP ดู ฮ่าๆๆ

…ปวดหัวสุดๆ – -”

คนสร้าง RubyJS ก็เลยคิดขึ้นมาว่า ถ้าเราเขียน JavaScript ด้วย Syntax ที่คุ้นเคยอย่าง Ruby (คนสร้างเขียน Ruby) มันคงจะสะดวกสบายไม่ใช่น้อย

Syntax ภาษา Ruby เลยมาโผล่หรากลาง HTML ได้อย่างนี้ไง

rubyjs-example.png

RubyJS นำส่วนหลักของ Ruby มาใช้ แต่ไม่ทั้งหมด

ทีนี้คนเขียน Ruby ก็คงจะตื่นเต้นกันแล้ว แต่โครงสร้างภาษาอย่าง Class, Ruby Object, หรือ Meta Programming ไม่ได้มาด้วยนา

แต่พวกพื้นฐาน Core-library ของ Ruby นี่ RubyJS เอามาหมดเลยนะ

โดยคนสร้างไม่อยากทำให้เกิดความวุ่นวายกับความเป็นธรรมชาติของ JavaScript (เช่น ES5 ใน JavaScript ไม่มี Class) เลยไม่ได้นำ feature พิเศษๆ ของ Ruby มาด้วย

แต่จริงๆ แล้วโค้ชพลว่า ถ้า ES6 (EcmaScript 2015) แพร่หลายกว่านี้ ทางผู้สร้าง RubyJS อาจจะ port ส่วนอื่นๆ มาด้วยก็ได้ใครจะไปรู้

เพราะ ES6 นั่นทำให้ JavaScript มีหลายๆ ส่วนที่เหมือนกับภาษาเชิง OOP อย่าง .NET และ Java มากเลยล่ะ ทำให้ RubyJS น่าจะสามารถ port หลายๆ อย่างของ Ruby มาได้อยู่

ใครเขียน Ruby หรือมีเพื่อนเขียน Ruby ลองกดเข้าไปดูโครงการของเขาได้ที่ rubyjs.org ตอนที่โค้ชพลเขียนอยู่นี่เป็นช่วง Alpha จ้า

 

 

เริ่มต้นยุค AI ด้วยคอร์สฟรี และพรีเมี่ยม กับพล

หากชอบสิ่งที่พลเล่า เรื่องที่พลสอน สามารถสนับสนุนพลโดยการเข้าเรียนคอร์สออนไลน์ของพลนะคร้าบ

  • เข้าใจง่าย ใช้ได้จริง ออกแบบการสอนอย่างเข้าใจโดยโค้ชพล
  • มีคอร์สสำหรับคนใช้งานทั่วไป จนถึงเรียนรู้เพื่อใช้งานในสายอาชีพขั้นสูง
  • ทุกคอร์สมีใบประกาศณียบัตรรับรองหลังเรียนจบ

เราใช้คุกกี้เพื่อพัฒนาประสิทธิภาพ และประสบการณ์ที่ดีในการใช้เว็บไซต์ของคุณ คุณสามารถศึกษารายละเอียดได้ที่ นโยบายความเป็นส่วนตัว และสามารถจัดการความเป็นส่วนตัวเองได้ของคุณได้เองโดยคลิกที่ ตั้งค่า

Privacy Preferences

คุณสามารถเลือกการตั้งค่าคุกกี้โดยเปิด/ปิด คุกกี้ในแต่ละประเภทได้ตามความต้องการ ยกเว้น คุกกี้ที่จำเป็น

Allow All
Manage Consent Preferences
  • Always Active

Save