Submit Search
php開発で使うタスクランナー gulp
17 likes
10,862 views
Yuuki Takezawa
2015-01-26(月)第86回 PHP勉強会 フロントエンドだけではなく、phpなどの開発にも取り込んで効率化をはかりましょう!
Technology
Related topics:
Node.js Development
Read more
1 of 37
Download now
Downloaded 17 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
More Related Content
PDF
Laravel / Lumen 次の一歩
Yuuki Takezawa
PDF
LaravelとMVCの先へ
Yuuki Takezawa
PDF
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Yuuki Takezawa
PPTX
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
PDF
はじめてLaravelさわった 第86回php勉強会
Osamu Kawasaki
PDF
Laravel5.1 Release
Yuuki Takezawa
PDF
Laravel 5.1 LTSでサービスを作る
infinite_loop
PPTX
今日から始めるLaravel
Masaru Matsuo
Laravel / Lumen 次の一歩
Yuuki Takezawa
LaravelとMVCの先へ
Yuuki Takezawa
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Yuuki Takezawa
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
はじめてLaravelさわった 第86回php勉強会
Osamu Kawasaki
Laravel5.1 Release
Yuuki Takezawa
Laravel 5.1 LTSでサービスを作る
infinite_loop
今日から始めるLaravel
Masaru Matsuo
What's hot
(20)
PPTX
Phpフレームワーク 「laravel」でブログを作ろう
Syouta Tada
PDF
フレームワークを使うべき 3 つの理由
Kenichi Mukai
PDF
Laravelのパッケージのテストに便利なパッケージ
Yuta Nagamiya
PDF
PHPデプロイツールの世界
Yuuki Takezawa
PDF
Laravel の学び方と得られる学び
Masaru Matsuo
PDF
魔法少女 Laravel
Kenichi Mukai
PDF
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
PDF
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
PDF
PHPとJavaScriptの噺
Shogo Kawahara
PPTX
活動報告9 laravel5入門-
vx-pc-club
PDF
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
Yuuki Takezawa
PDF
魔法少女 Laravel 2014
Kenichi Mukai
PPTX
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
PDF
PHPの今とこれから2015
Rui Hirokawa
PDF
Laravelから学びレガシーと闘いはじめた
Yuta Ohashi
PDF
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
PDF
flyingV Laravel & AWS 經驗分享
Eugene Wang
PPTX
Behat Driven Development
Ryo Tomidokoro
PDF
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Tomoki Hasegawa
PDF
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Phpフレームワーク 「laravel」でブログを作ろう
Syouta Tada
フレームワークを使うべき 3 つの理由
Kenichi Mukai
Laravelのパッケージのテストに便利なパッケージ
Yuta Nagamiya
PHPデプロイツールの世界
Yuuki Takezawa
Laravel の学び方と得られる学び
Masaru Matsuo
魔法少女 Laravel
Kenichi Mukai
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
PHPとJavaScriptの噺
Shogo Kawahara
活動報告9 laravel5入門-
vx-pc-club
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
Yuuki Takezawa
魔法少女 Laravel 2014
Kenichi Mukai
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
PHPの今とこれから2015
Rui Hirokawa
Laravelから学びレガシーと闘いはじめた
Yuta Ohashi
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
flyingV Laravel & AWS 經驗分享
Eugene Wang
Behat Driven Development
Ryo Tomidokoro
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Tomoki Hasegawa
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Ad
Similar to php開発で使うタスクランナー gulp
(20)
PPTX
Laravelチュートリアルを作ってみた。
Futoshi Endo
PDF
Laravel5.1&homesteadで楽々ローカル環境構築
Noriaki Takamizawa
PDF
PHP フィールドインジェクションに挑戦する PHP勉強会2014
Yuuki Takezawa
PDF
Laravel4で運用するサービス,そしてlaravel5へ
Nʎ Nkogues
PPT
20090801phpstudy Sanemat
Kenichi Murahashi
PPTX
簡単便利!Laravel Homestead
Shota Inoue
PDF
PHPでセキュリティを真面目に考える
Takuya Sato
PDF
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Yuuki Takezawa
PDF
いまどき(これから)のPHP開発
Kenjiro Kubota
PDF
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
PDF
Laravel shibuya 3 Laravel Beginner IRT
Obata Masaki
PDF
Laravel Mix とは何なのか? - Laravel/Vue 勉強会 #1
Shohei Okada
PPTX
PHP AV BINDING
Yo Ya
PDF
Hashicorpツールズ
Uchio Kondo
PDF
筋トレ大事
Eiji Yokota
PDF
PHPerのためのpostgresqlチューニングmini
Takhisa Hirokawa
PDF
Laravelのすごいと思うところを 初級レベルで語ってみる。
AfiruPain NaokiSoga
PPTX
Laravelを使ってみた
Jaeseop Jeong
PDF
PHP&NewSQLで考える次世代アプリケーション
Yuuki Takezawa
PDF
Word pressのテーマは firephpでハックすれば 良かったのか
Hisateru Tanaka
Laravelチュートリアルを作ってみた。
Futoshi Endo
Laravel5.1&homesteadで楽々ローカル環境構築
Noriaki Takamizawa
PHP フィールドインジェクションに挑戦する PHP勉強会2014
Yuuki Takezawa
Laravel4で運用するサービス,そしてlaravel5へ
Nʎ Nkogues
20090801phpstudy Sanemat
Kenichi Murahashi
簡単便利!Laravel Homestead
Shota Inoue
PHPでセキュリティを真面目に考える
Takuya Sato
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Yuuki Takezawa
いまどき(これから)のPHP開発
Kenjiro Kubota
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
Laravel shibuya 3 Laravel Beginner IRT
Obata Masaki
Laravel Mix とは何なのか? - Laravel/Vue 勉強会 #1
Shohei Okada
PHP AV BINDING
Yo Ya
Hashicorpツールズ
Uchio Kondo
筋トレ大事
Eiji Yokota
PHPerのためのpostgresqlチューニングmini
Takhisa Hirokawa
Laravelのすごいと思うところを 初級レベルで語ってみる。
AfiruPain NaokiSoga
Laravelを使ってみた
Jaeseop Jeong
PHP&NewSQLで考える次世代アプリケーション
Yuuki Takezawa
Word pressのテーマは firephpでハックすれば 良かったのか
Hisateru Tanaka
Ad
php開発で使うタスクランナー gulp
1.
PHP開発で使う タスクランナー GULP 第86回 PHP勉強会 YUUKI
TAKEZAWA ytake
2.
自己紹介 なまえ: 竹澤 有貴(ytake) twitter:
@ex_takezawa blog: http://blog.comnect.jp.net GitHub: https://github.com/ytake php, node.js, RDBMS, NoSQL, NewSQL Laravel JPユーザー Laravel答えないマン ytake
3.
すこしだけLaravel Laravel5でるでる詐欺 たぶんそろそろベータかすっ飛ばして突然出そう ファサードあまり使わなくなるよ 使えなくなる訳ではない! インターフェースを理解してる人としてない人の差がすん ごい出る Laravelレシピ日本語版 ver5 用意中 ytake
4.
本日は PHPの話は ほとんどしません ytake
5.
ytake
6.
フロントエンドも自動化 してますか? ytake
7.
タスクランナー ご存知ですか? ytake
8.
ytake
9.
ytake 覚えてもすぐ新しいものがでるじゃん!
10.
と思っていました 少し覚えるだけ node.jsはトモダチ(ありがとう phpstorm) angular, backboneなど使う機会が多くなった React.js便利過ぎた(ブラウザでコンパイル嫌だ sass,
lessとかなんか増えてきた ytake
11.
ytake どっちが良い、悪いではなくて 単純に好みの話です なので今日はgulp
12.
こんな経験ありませんか? jsライブラリ落としたら 依存パッケージ足りなくて動かなかった css, jsフレームワークのバージョンアップが ついていけない パスがバラバラで辛い 解決しようと手動でやってたら残業してた ytake
13.
ytake phpに関わっている以上、 この問題は常に・・・
14.
タスクランナー 導入すべし ytake
15.
ytake フロントエンドはphpよりも進化が早い
16.
ytake node.jsが普及し、 フロントエンドでも使われ始めた
17.
ytake
18.
bower フロントエンドパッケージ管理(twitter製) Yeomanの普及もあり常識的なものに 足りない、動かないからの解放 node.js, bower.json bower_componentsファイルをvendorに 移動すれば綺麗(.bowerrc設置) ytake
19.
ytake { "ignore": [ "**/.*", "node_modules", "bower_components", "test", "tests" ], "dependencies": { "jquery":
"*", "bootstrap": "*", "react": "*" } }
20.
ytake phpのあれと同じ
21.
ytake
22.
使うには? ytake node.jsインストール npm install -g
gulp npm install -g bower package.json
23.
ytake { "devDependencies": { "bower": "1.*", "gulp":
"3.*" } } $ npm install
24.
タスク書いてみよう ytake
25.
タスクの作り方 ytake gulpfile.jsに書く タスク名を付けてその中に書く よくわからなければサンプル見てみよう stream云々色々あるので気になったら 調べてみてください(今回はそこまで触れません) 以上
26.
ytake var gulp =
require('gulp'), bower = require('bower’); ! gulp.task('bower', function () { return bower.commands.install( [], {save: true}, {}) .on('end', function (data) { console.log(data); }); }); $ gulp bower
27.
インストール後に 所定のディレクトリに配置して URLのパスをシステムに合わせて書き換えて 圧縮 ytake
28.
ytake gulp.task('publish', ['bower'], function
() { var jsFilter = gulpFilter('**/*.js'); var cssFilter = gulpFilter('**/*.css'); var fontFilter = gulpFilter([ '**/*webfont*', "**/Font*", "**/glyphicons-*" ]); var imageFilter = gulpFilter(['**/*.png', "**/*.gif"]); return gulp.src( mainBowerFiles({ paths: { bowerDirectory: 'vendor/bower_components', bowerrc: '.bowerrc', bowerJson: 'bower.json' } }) ) .pipe(jsFilter) .pipe(gulp.dest('public/assets/js')) .pipe(jsFilter.restore()) .pipe(cssFilter) .pipe(urlAdjuster({ replace: ['../fonts/', ''], prepend: '/assets/fonts/' })) .pipe(minifyCSS({keepBreaks:true})) .pipe(gulp.dest('public/assets/css')) .pipe(cssFilter.restore()) .pipe(fontFilter) .pipe(gulp.dest('public/assets/fonts')) .pipe(fontFilter.restore()) .pipe(imageFilter) .pipe(gulp.dest('public/images')); });
29.
少しPHPの開発でも ありがたくなってきました ytake
30.
ファイルの変更を監視 ytake
31.
node.jsの得意分野 ytake ファイルの変更などを監視してリアルタイムにタス ク実行 shellもOK phpunitも実行可能 ブラウザの更新も自動でやらせる PHPビルトインサーバも必要であれば
32.
ytake gulp.task("phpunit", function ()
{ var options = { debug: false, notify: true }; return gulp.src('tests/*Test.php') .pipe(plumber()) .pipe(phpunit('', options)) .on('error', notify.onError(testNotification('fail', 'phpunit'))) .pipe(notify(testNotification('pass', 'phpunit'))); }); phpunit + 通知付き
33.
ytake ブラウザシンク gulp.task('browserSync', function ()
{ browserSync({ open: true, port: 3001, proxy: "127.0.0.1:" + configure.php_server.port, notify: false }); }); gulp.task('browserReload', function (){ browserSync.reload(); });
34.
ytake あとはよろしく! gulp.task('default', ['browserSync', 'publish'],
function () { gulp.watch(['src/**/*.php'], ['phpunit']); gulp.watch(['src/**/*.php'], ['browserReload']); }); パターンにマッチした ファイルが変更されたら 勝手に実行してくれます
35.
実際に動かしてみよう ytake https://github.com/ytake/gulp-tutorial
36.
まとめ ytake こんなのできるかな?と思ったら大体ある タスクランナーってすごい 楽になったのでjsフレームワークの勉強 る 開発効率が上がりました 早く帰れる様になりました
37.
おわり ytake
Download