Dart勉強中
- Categories
- Tags
- Share
少し前ですが、プログラミング言語 Dartの勉強を始めました。どうも一時期はDartVMのChromeへの搭載が見送られ、そのまま尻すぼみになっていくかと思われたのですが、 Google社内では活発に使われていてAdwordsやAdsenseなどはDartを使って作られている模様。
とはいえ、JavaScriptもes2015が使われだしてるのにわざわざDartをこれからやるの?という気もしたのですが、 GoogleがわざわざDartにこれだけ力を入れるということは、やっぱり使いやすい言語だから、ということなんじゃないかと 思います。
なにやら、Sassの開発もRubyは遅すぎるからDartでの開発に移行するというアナウンスもされていたので、今後はDartが見直されるんじゃないかと思ってます。
そこで、Dart本を読んでざっと勉強してみたのですが、静的型付けもでき、かつモダンな言語なので結構いいんじゃないかと感じました。 Dartの強みはDartVMであり、DartVMは結構速くて、Node.jsより速いというベンチマークも見かけました。 ブラウザへのDartVMの搭載は見送られたものの、DartからJavaScriptへのトランスパイルは結構よくなっていて速度も問題なくなってるらしいです。 (らしい、とかそんなのばかりですが…)
ただ、現行でWebアプリケーション開発でDartを使うのは結構面倒くさそうというか、Low Level APIを使うのはDart本で読みながらやってみたのですが、 jQueryぽい開発手法になってしまって微妙。かつ、JSのライブラリを使うのが面倒くさそう…。 結果、AngularDartを使うのが、デファクトスタンダードになっているみたいだなという印象でした。まぁDartのサイトのチュートリアルが即AngularDartだったので、 そういう流れにしたいのかなと思いつつ、Angularのこと殆ど知らないけれど、とりあえずCodeLabのサンプルだけやってみました。
Avast, Ye Pirates: Write an Angular App
これをやっただけなのでまだよくわかってませんが、AngularDartの良い点は、
- コンポーネント単位でhtml, css, dart(JS相当)がまとめられる。
- 再利用しやすそう
- コードの責任範囲をコンポーネント内のみにできそう
- モデルをサーバサイドとクライアントサイドで共通化しやすそう。
- サービス層を作ることでモックを作りやすくなり、クライアントサイドの開発が捗りそう
と感じました。
まだどんなサーバサイドフレームワークがあるかとかは殆ど調べてないのですが、AngularDartでモックを定義してサクサク開発したのちに、 APIを呼ぶ形式でサーバサイドと繋げられればよさそうかなと思います。
AngularDartでBootstrapやMaterialDesignLiteは簡単に利用できるもんなのだろうか…?