กูเกิลเปิดตัวภาษา Dart ภาษาโปรแกรมชนิดใหม่สำหรับงานบนเว็บ

by mk
10 October 2011 - 14:05

จากข่าวเก่า กูเกิลเตรียมเปิดตัว "DART" ภาษาโปรแกรมใหม่สำหรับเว็บ วันนี้มันมาแล้วครับ

Dart (เว็บไซต์) เป็นภาษาสคริปต์สไตล์วงเล็บปีกกาที่คุ้นเคย รองรับ OOP มีแนวคิดของ class และ inheritance ส่วนการประกาศชนิดตัวแปรจะประกาศหรือไม่ก็ได้ (optional types) ช่วยให้การสร้างโค้ดขั้นต้นทำได้เร็ว แต่ก็สามารถมาจัดระเบียบตัวแปรทีหลังได้เช่นกัน

เพื่อความเข้าใจที่ดีของทุกคน ก็ดูโค้ดกันก่อน

{syntaxhighlighter brush: css}
main() {
var name = 'World';
print('Hello, ${name}!');
}
{/syntaxhighlighter}

การแปลภาษา Dart สามารถทำได้สองแบบ คือ

  1. แปลง Dart มาเป็น JavaScript ก่อน (ตอนนี้รองรับ Chrome, Safari 5+, Firefox 4+)
  2. รันโค้ด Dart ตรงๆ บน Virtual Machine ที่ฝั่งเซิร์ฟเวอร์

กูเกิลบอกว่าในอนาคตอาจจะรวม Dart VM เข้ามาใน Chrome ด้วย

ส่วนการแทรกโค้ดภาษา Dart ลงในไฟล์ HTML ก็ทำแบบเดียวกับ JavaScript แต่เปลี่ยน MIME type เล็กน้อย (รายละเอียด Embedding DART in HTML)

{syntaxhighlighter brush: xml}
<html>
<body>
<script type="application/dart">
main() {
Element element = document.getElementById('message');
element.innerHTML = 'Hello from Dart';
}
</script>
<div id="message"></div>
</body>
</html>
{/syntaxhighlighter}

Dart จะมีไลบรารีและเครื่องมือพัฒนาต่างๆ ให้พร้อม รายละเอียดทางเทคนิคดูจาก Technical Overview, รายละเอียดของภาษาดูจาก Dart Programming Language Specification (PDF), ตัวอย่างโค้ด

กูเกิลอธิบายว่า Dart ถูกสร้างขึ้นโดยมีเป้าหมาย 3 ประการ

  1. สร้างภาษาโปรแกรมสำหรับเว็บที่เป็นภาษาเชิงโครงสร้าง แต่ก็ยืดหยุ่นเพียงพอ (structured yet flexible language)
  2. สร้างภาษาที่นักพัฒนาคุ้นเคย ใช้ได้เป็นธรรมชาติ และเรียนรู้ได้ง่าย
  3. สร้างภาษาที่มีประสิทธิภาพสูงบนเบราว์เซอร์สมัยใหม่ทุกตัว และใช้ได้ตั้งแต่อุปกรณ์พกพาขนาดเล็กจนถึงเซิร์ฟเวอร์

สิ่งที่น่าสนใจคงเป็นคำว่า "ประสิทธิภาพสูง" ซึ่งตอนนี้กูเกิลยังไม่พูดเรื่องนี้มากนัก รออีกสักพักพอตัวภาษาและเครื่องมือเริ่มนิ่ง เราคงได้เห็นการทดสอบประสิทธิภาพของ Dart กันอีกมากมาย (หนึ่งในทีมพัฒนา Dart คือทีมที่พัฒนาเอนจิน V8 ของ Chrome มีชื่อเรื่องประสิทธิภาพอยู่แล้ว)

ตอนนี้ Dart ยังมีสถานะเป็น early preview สเปกและเครื่องมือยังไม่นิ่ง แต่คนที่สนใจก็สามารถเข้าไปดูรายละเอียดได้บนเว็บ Dart รวมถึงเสนอความเห็นไปยังกูเกิลได้ด้วย

ที่มา - Google Code

Blognone Jobs Premium