最近はBabelやSass案件ばかりですが、個人的にはもっと速く開発できる選択肢があると思っているので、そのまとめ。
Sass → Stylus
- 透過的に変数とミックスインが使える(もちろん非透過的にも使える)
-
gulp
不要でnpm script
だけでAuto Prefixingが行える(kouto-swiss併用) - タイプ数が一番少ない
- Ruby由来ではなくNode発祥(作者はExpressの人)
Sassに比べるとエディタの補完機能が弱いけど、トータルで見た場合の時間的な差がばかにならないくらい大きい。(自分比)
stylus
@import "components/*"
.foo
clear fix
line-height narrow
Babel → Coffee
- コンパイルに際してサポートブラウザを引き上げたりすることがない(自分たちがサポートしたいブラウザを自由に選べる)
- セミコロンが要らない
- 後置
if
やunless
文が利用でき、読みやすいコードが書ける - ファットアローだけではなく、シングルアローも使える
- 結局みんなES5を出力している
とっととJS(ES5)を納品して、Coffee飲みに行きたい
coffee
unless isNessesary then return
doSomething = ()->
console.log('No need semi-colons')
HTML手書き → Pug
- 記述量が半分で済む
- 閉じタグ忘れとかのドジがない
- 出力時の拡張子を変更できる(
.tx
他) - 変数とミックスインが使えるので、プログラマブル
- 複雑なHTMLを静的に出力できるので、SEOに強い
もとはJadeだったのに、改名を余儀なくされてかわいそう
pug
- var $ = "block"
input(type="checkbox" class=$+"__element" name="foo" value="1")
以上です
出力結果を担保するので、手段はその時その時で最短なもので走り去りたい。コンパイル先を同一階層の同名出力にしておけば、後日これらをなかったことにもできる。uglify
前のHTML
とJS
とCSS
を残しておけば、未来の担当者がリバースエンジニアリングもできる。
爆速で改修できるのに、ノロノロ運転もったいない