### 語言特性
* Dart所有的東西都是對象, 即使是數字numbers、函數function、null也都是對象,所有的對象都繼承自Object類。
* Dart動態類型語言, 盡量給變量定義一個類型,會更安全,沒有顯示定義類型的變量在 debug 模式下會類型會是 dynamic(動態的)。
* Dart 在 running 之前解析你的所有代碼,指定數據類型和編譯時的常量,可以提高運行速度。
* Dart中的類和接口是統一的,類即接口,你可以繼承一個類,也可以實現一個類(接口),自然也包含了良好的面向對象和并發編程的支持。
* Dart 提供了頂級函數(如:main())。
* Dart 沒有 public、private、protected 這些關鍵字,變量名以"\_"開頭意味著對它的 lib 是私有的。
* 沒有初始化的變量都會被賦予默認值 null。
* final的值只能被設定一次。const 是一個編譯時的常量,可以通過 const 來創建常量值,var c=const\[\];,這里 c 還是一個變量,只是被賦值了一個常量值,它還是可以賦其它值。實例變量可以是 final,但不能是 const。
* 編程語言并不是孤立存在的,Dart也是這樣,他由語言規范、虛擬機、類庫和工具等組成:
* SDK:SDK 包含 Dart VM、dart2js、Pub、庫和工具。
* Dartium:內嵌 Dart VM 的 Chromium ,可以在瀏覽器中直接執行 dart 代碼。
* Dart2js:將 Dart 代碼編譯為 JavaScript 的工具。
* Dart Editor:基于 Eclipse 的全功能 IDE,并包含以上所有工具。支持代碼補全、代碼導航、快速修正、重構、調試等功能。