Tuesday, October 11, 2011

DART : Overview of Google’s new web programming language


So finally, the technology has started moving on the client side of web too, faster than we expected. After many years of using HTML, JavaScript, ActiveX, Flash & Silverlight came the big innovations like HTML5 & CSS3.

Here comes the latest from Google, called DART – Structured Web programming language. Personally I have never been happy with JavaScript due to readability, maintainability & lack of support of good developer tools.

So what is DART ? Here are few highlights:

  • Open source project
  • Class-based programming language (not mentioned as object-oriented language) 
  • Moving to more structured environment. It supports classes & libraries. This is what JavaScript lacked though supported in unstructured way.
  • Optional types. This is interesting as this will allow you to start prototyping your application quickly using JavaScript style programming with simple and untyped code and then as you progress in application lifecycle convert the code from untyped to typed style which is easy to debug, understand and maintain.

Google promises to provide the right tooling support to leverage the enhancements done over javascript in Dart.

Design goals of Dart as mentioned by Google :

  • structured yet flexible
  • familiar & natural
  • high performance & fast application startup
  • full range of devices on the web – phones, tablets, laptops & servers
  • support across all major modern browsers – the current test environment does not support IE.

Deployment/Execution Models

  • Translate Dart code to JavaScript and run it in browsers today except IE.
  • Execute Dart code in a virtual machine on server side
  • Use Dartboard to write and execute code snippets in browser window except IE
  • Proposes a new MIME type called ‘application/dart’ so that it can be embedded or imported into HTML pages.

Dart & HTML5 – Dart will have HTML5 Dom library to interact with HTML elements

I feel Dart will help in making the web richer without compromising the developer productivity. JQuery is helping a lot currently in this aspect on top of JavaScript. Based on the acceptance of Dart, JavaScript may continue to remain popular.

It would have been better if instead of releasing a new language, Google had advocated such advances in JavaScript itself.

With Google Chrome making big advances and may soon become second most popular browser, it could dare to take such a bold step.


No comments: