秋のJavascript祭りに行ってきました。
最近、社内でもフロント周りのニーズが高まってきてることもあり、主に情報収集の一環です。
どうも参加者はデザイナー寄りな方々が多い様子。backbone.jsとかAngularJSあたりのSPAとかバインディング、あるいはnode.jsなどのサーバサイド的な話題はかなり少なめでした。
「Javascriptは書けないけどjQueryは書けます」っていうのは「Rubyは書けないけどRailsなら書けます」的な感じなんですかね(適当)。
以下、気になったセッションについて。
CSS3でアニメーション
プリミティブなアニメーションはJavascriptで頑張らなくてもCSS3でやれるよ、っていうのと、複数のオブジェクトを制御する場合はjQuery.Deferredを使いましょう、っていう話。
個人的にはngAnimateを稀に使う程度しかアニメーションを必要としないんですが hoverなどで手軽に使えそうなので覚えておいて損はなさそう、と思いきやベンダープレフィックスが必要だったりとそれなりにガチ感がありました。 まぁ、結局はそれなりにJavascriptを組み合わせて使うことになるでしょう。
Google Material DesignをPolymerで表現しよう
時間の都合で、Polymerのイントロ的な内容でした。
「Google Material Design」はGoogleの提唱するUXデザインガイドラインです。 ググってみましたが何となくわかりましたが何とも説明が難しいですね。
PolymerはWeb Componentsの機能を遍くブラウザで利用できるようにするものです。 AngularJSと組み合わせて使えるかが気になるところですね。(おそらくAngularJSでも同等なことはできるでしょうが、やはりなるべくはコモディティ化された機能を使いたいわけで)
個人的にはMaterial-DesignとPolymerのキーワードを得ることができただけで結構満足でした。
あんまり関係ないですが、こんなのがありました。 Angular Material Design
D3.jsでのデータビジュアライゼーションについて(仮)
データバインディングによるデータドリブンなデータ可視化ライブラリ。HTMLやSVG、DOMでドキュメント化、っていうことですがSVGがメインでしょうね。
データが変わると自動で表示が変わるのは気持ちいいですね。しかも個々のデータに対して演算できるということで、CPUパワーが許せばかなり凝ったことができそうです。
このプロダクトは最近よく聞きますが、どんなものかが少しわかったのでよかったです。
SVGとCanvasの特徴 (LightingTalk)
用途で使い分けましょう、という話。
- SVG=ベクターなので拡大縮小に強い。数式データによって画像を描画。pathに沿ったアニメーションができる。レスポンシブデザインに向いている。大きい画像で有効。
- Canvas=ビットマップなので拡大縮小に弱いがそのかわりピクセル操作ができる。Javascriptで動的に描画。(Javascriptなんだけど)単体ではアニメーション機能がない。オブジェクト数が多い描画が高速。
Webアプリエンジニア目線とは違った視点での話題が多く、色々なキーワードを拾えた意義深いお祭りでした。