狠狠撸

狠狠撸Share a Scribd company logo
Gruntで
フロントの生産性UP
品質管理課?後藤 和良
近况
前職最後の仕事が世に出ました。
4/8にOSS版「Aipo8」リリース
? 1ゲーム10分程度で終わる手軽さ。
? プロトーナメントがあるほどの人気。
? ほとんどのプラットフォーム版あり。
HearthStoneにハマる。
骋谤耻苍迟とは
何でも自動化してくれるイノシシ
? node.jsで動くタスクランナー(自動化プログラム)
? ローカルで動作し、プラグイン次第で様々な処理を行う
なぜ骋谤耻苍迟を使うのか
フロント開発の
タスクが増えたから
しかもそれぞれ職能が違う。
フロントデザイン
(設計)
HTML/CSS
JavaScript
リッチ表現
パフォーマンス改善 デザインルール策定 etc...
生産性高めないと
死ぬ!
まずは簡単?ポピュラーで?
効果の分かりやすいものから
SASS
CSSコーディングの生産性UP
Sass記法をGruntがCSSにコンパイル。
Sass
<3
<3
CSS
CSS
.hoge {
~~~
}
.hoge p {
~~~
}
.hoge .head {
~~~
}
.hoge .head a {
~~~
}
.hoge .title a {
~~~
}
クラス「hoge」内の?
スタイルの定義
SASSのネスト記法
.hoge {
~~~
p {~~~}
.head {
~~~
a {~~~}
}
.title a {~~~}
}
SASSのネスト記法
.hoge {
~~~
p {~~~}
.head {
~~~
a {~~~}
}
.title a {~~~}
}
親元のクラスに
ネストして記述できる。
!
記述量が減る。
SASSのネスト記法
.hoge-hoge {
~~~
p {~~~}
.head {
~~~
a {~~~}
}
.title a {~~~}
}
クラス名を変えても
一箇所の変更で済む。
変数が使える
$main-color: #f00;
$sub-color: #0f0;
$font-size: 12px;
!
.hoge {
color: $main-color;
}
.poge {
color: $sub-color;
font-size: $font-size;
}
変数を設定しておいて…
値を使いまわせる。
mixin
@mixin circle {
border-radius: 50%;
width: 100px;
}
!
.hoge {
@include circle;
background: #f00;
}
関数のように
スタイルを定義して…
内容を使いまわせる。
mixinに引数
@mixin circle($size) {
border-radius: 50%;
width: $size;
height: $size;
}
!
.hoge {
@include circle(50px);
background: #f00;
}
引数の設定もできる。
SASS以外のメタ言語
HAML
(HTML)
Less
(CSS)
Co?eeScript
(JavaScript)
TypeScript
(JavaScript)
パフォーマンス改善
圧縮?軽量化で自動改善
Code Code
<3
<3
画像
画像
コードの圧縮
.hoge {
~~~
}
.hoge p {
~~~
}
.hoge .head {
~~~
}
.hoge .head a {
~~~
}
.hoge .title a {
~~~
}
.hoge {~~~}.hoge p {~
~~}.hoge .head {~~
~}.hoge .head a {~~~}
.hoge .title a {~~~}
画像の圧縮?最適化
500KB 250KB
CSSスプライト自動生成
複数の画像を1つに結合して
画像サイズとHTTPリクエスト数を削減する
職人芸的テクニック
コンパイルで機械的に?
出力しているメリット
フォーマットルールの制定、
コード整理も自動化できる。
コーダーはルールを覚える必要もない。
フロントやる人は
この先生きのるため
骋谤耻苍迟オススメします。
Gruntの同種
できることはほぼ変わらない。
肌に合うのを使えばOK
Gulp Brunch
ご静聴
ありがとうございました。

More Related Content

骋谤耻苍迟でフロントの生产性耻辫