どんなツールにも当てはまるように、Backbone.jsにもエレガントに問題を解決できる使い方がある。
この記事ではBackbone.jsにおけるModel、Views、Routersはどんなツールなのかから、Backbone.jsを利用するにあたり気をつけておきたい諸々を紹介している。
他のプログラミング言語の経験がある人がJavaScriptを書くと必ず見かけるのが「巻き上げ」(hoisting)を無視したコード。
どんなツールにも当てはまるように、Backbone.jsにもエレガントに問題を解決できる使い方がある。
この記事ではBackbone.jsにおけるModel、Views、Routersはどんなツールなのかから、Backbone.jsを利用するにあたり気をつけておきたい諸々を紹介している。
他のプログラミング言語の経験がある人がJavaScriptを書くと必ず見かけるのが「巻き上げ」(hoisting)を無視したコード。
モバイルSafariとUIWebViewで使われているレンダリングエンジンは同じものではなく、後者のレンダリングエンジンの方がJavaScriptの実行が3倍ほど遅いこともよく知られている。しかし、その後者のレンダリングエンジンを使っているはずのChrome for iOSはモバイルSafariと遜色のない速度が出るのはなぜか。両者を比べてデータとともに検証。
CSSには限らないが、特にCSSで発生するややハックな気がしてならないコードをshame.cssというような別のファイルで管理するアプローチの紹介。
こうして別ファイルにすることでどこがハックっぽいのかも分かるし、記事にあるようにshame.cssへのエントリへは細かいドキュメントを付けることを必須にすることでよりわかりやすく、振り返りしやすくなる。
Backbone.jsでよく出会うである入れ子になるViewsを作成するパターンをMarionette.jsでシンプルにする方法。両者の比較もあって非常にわかりやすい。例のスニペットはCoffeeScript。
最近再び話題になりつつあるCSSのFlexboxにアニメーションを付加する方法。正確にはTransitionとAnimation、そしてJS + Transitionを使ったアプローチを紹介。
JavaScriptの継承について解説するのに必ず出てくるたとえ話を評価しながら継承について解説するおもしろい記事。
最終的にはたとえではなく、どんな場面で利用されるかを使って説明するのが1番理解しやすいという結論。
さぞかし調べてまとめるのが大変だったと思われるCSSで利用できるフォーム用の疑似要素セレクタのまとめ。
James Hallidayこと、substackによるjQueryは今では多くの場面で必要がなくなってきているのではないかというオピニオン記事。
もちろん、反対意見もOscar Godsonにより、The DOM is still a mess — The JavaScript Collection via Medium書かれている。
CSS3により、角丸やシャドウを画像を使うことなく表現できるようになった。が、それらの表現をブラウザが表示するのにはペイントという処理は必要。
Chromeの開発ツールでも使い方がわかりづらいProfileパネルについて、Addy Osmani氏より解説。メモリマネジメントは大切なトピックなので、しっかりと使い方を覚えておこう。
CSSを柔軟に、堅牢にするアプローチは数多くあるが、既存のCSSをどうやってリファクタリングしていくべきかの指針はあまりない。
この記事ではそのリファクタリングのアプローチに対する1つの手法について触れている。
非常に強力なレイアウトスタイルであるFlexboxはその短い歴史に反して仕様変更が多い。その上、強力なスタイルであるが故、シンタックスも複雑だ。この記事ではクロスブラウザなFlexboxの使い方を詳しく解説。
記事内でも紹介されているが、Flexy
Boxesというジェネレータは非常に便利なので要チェック。
関数型とオブジェクト指向のJavaScriptの違い。
それぞれのアプローチには向き不向きがあり、どちらがどちらよりも優秀であるということではない。
記事では細かくその特徴について紹介もしているので両アプローチのイントロダクションとしてもいい記事。
ウェブアプリにおける最適化の話はあまりにもよく聞くトピックの1つ。
最適化をする際にJSPerfなどを使ってswitch…case
とメソッドルックアップがどちらが早いか、と計測したりするが、それ以前にもっとやらなければならないことがある。
1%の最適化を行うのが無駄なタイミングと、そうでないタイミングがあることを努々忘れてはいけない。