Submit Search
Upload
php開発で使うタスクランナー gulp
•
17 likes
•
10,799 views
Yuuki Takezawa
Follow
2015-01-26(月)第86回 PHP勉強会 フロントエンドだけではなく、phpなどの開発にも取り込んで効率化をはかりましょう!
Read less
Read more
Technology
Report
Share
Report
Share
1 of 37
Download now
Download to read offline
Recommended
Laravel / Lumen 次の一歩
Laravel / Lumen 次の一歩
Yuuki Takezawa
LaravelとMVCの先へ
LaravelとMVCの先へ
Yuuki Takezawa
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Yuuki Takezawa
PHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
はじめてLaravelさわった 第86回php勉強会
はじめてLaravelさわった 第86回php勉強会
Osamu Kawasaki
Laravel5.1 Release
Laravel5.1 Release
Yuuki Takezawa
Laravel 5.1 LTSでサービスを作る
Laravel 5.1 LTSでサービスを作る
infinite_loop
今日から始めるLaravel
今日から始めるLaravel
Masaru Matsuo
Recommended
Laravel / Lumen 次の一歩
Laravel / Lumen 次の一歩
Yuuki Takezawa
LaravelとMVCの先へ
LaravelとMVCの先へ
Yuuki Takezawa
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Laravel_オープンソースカンファレンスhokkaido_JP_2014
Yuuki Takezawa
PHPで並列処理する ライブラリを作った
PHPで並列処理する ライブラリを作った
Hironobu Saitoh
はじめてLaravelさわった 第86回php勉強会
はじめてLaravelさわった 第86回php勉強会
Osamu Kawasaki
Laravel5.1 Release
Laravel5.1 Release
Yuuki Takezawa
Laravel 5.1 LTSでサービスを作る
Laravel 5.1 LTSでサービスを作る
infinite_loop
今日から始めるLaravel
今日から始めるLaravel
Masaru Matsuo
Phpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろう
Syouta Tada
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
Kenichi Mukai
Laravelのパッケージのテストに便利なパッケージ
Laravelのパッケージのテストに便利なパッケージ
Yuta Nagamiya
PHPデプロイツールの世界
PHPデプロイツールの世界
Yuuki Takezawa
Laravel の学び方と得られる学び
Laravel の学び方と得られる学び
Masaru Matsuo
魔法少女 Laravel
魔法少女 Laravel
Kenichi Mukai
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
活動報告9 laravel5入門-
活動報告9 laravel5入門-
vx-pc-club
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
Yuuki Takezawa
魔法少女 Laravel 2014
魔法少女 Laravel 2014
Kenichi Mukai
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
Yuta Ohashi
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
flyingV Laravel & AWS 經驗分享
flyingV Laravel & AWS 經驗分享
Eugene Wang
Behat Driven Development
Behat Driven Development
Ryo Tomidokoro
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Tomoki Hasegawa
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
Laravelチュートリアルを作ってみた。
Laravelチュートリアルを作ってみた。
Futoshi Endo
Laravel5.1&homesteadで楽々ローカル環境構築
Laravel5.1&homesteadで楽々ローカル環境構築
Noriaki Takamizawa
More Related Content
What's hot
Phpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろう
Syouta Tada
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
Kenichi Mukai
Laravelのパッケージのテストに便利なパッケージ
Laravelのパッケージのテストに便利なパッケージ
Yuta Nagamiya
PHPデプロイツールの世界
PHPデプロイツールの世界
Yuuki Takezawa
Laravel の学び方と得られる学び
Laravel の学び方と得られる学び
Masaru Matsuo
魔法少女 Laravel
魔法少女 Laravel
Kenichi Mukai
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
Junichi Ishida
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
Hisateru Tanaka
PHPとJavaScriptの噺
PHPとJavaScriptの噺
Shogo Kawahara
活動報告9 laravel5入門-
活動報告9 laravel5入門-
vx-pc-club
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
Yuuki Takezawa
魔法少女 Laravel 2014
魔法少女 Laravel 2014
Kenichi Mukai
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
Taiji INOUE
PHPの今とこれから2015
PHPの今とこれから2015
Rui Hirokawa
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
Yuta Ohashi
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
Masashi Shinbara
flyingV Laravel & AWS 經驗分享
flyingV Laravel & AWS 經驗分享
Eugene Wang
Behat Driven Development
Behat Driven Development
Ryo Tomidokoro
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Tomoki Hasegawa
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
shinjiigarashi
What's hot
(20)
Phpフレームワーク 「laravel」でブログを作ろう
Phpフレームワーク 「laravel」でブログを作ろう
フレームワークを使うべき 3 つの理由
フレームワークを使うべき 3 つの理由
Laravelのパッケージのテストに便利なパッケージ
Laravelのパッケージのテストに便利なパッケージ
PHPデプロイツールの世界
PHPデプロイツールの世界
Laravel の学び方と得られる学び
Laravel の学び方と得られる学び
魔法少女 Laravel
魔法少女 Laravel
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
YAPC::Asia 2014 - 半端なPHPDisでPHPerに陰で笑われないためのPerl Monger向け最新PHP事情
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
第21回関西PHP勉強会 ReactPHPは もっと流行って欲しい #phpkansai
PHPとJavaScriptの噺
PHPとJavaScriptの噺
活動報告9 laravel5入門-
活動報告9 laravel5入門-
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
laravel websocket(use redis pubsub) [Laravel meetup tokyo]
魔法少女 Laravel 2014
魔法少女 Laravel 2014
PHP x AWS でスケーラブルなシステムをつくろう
PHP x AWS でスケーラブルなシステムをつくろう
PHPの今とこれから2015
PHPの今とこれから2015
Laravelから学びレガシーと闘いはじめた
Laravelから学びレガシーと闘いはじめた
いまどきのPHP開発現場 -2015年秋-
いまどきのPHP開発現場 -2015年秋-
flyingV Laravel & AWS 經驗分享
flyingV Laravel & AWS 經驗分享
Behat Driven Development
Behat Driven Development
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
Drupal 8 - モダンなアーキテクチャのPHPベースOSS CMS
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
モダン PHP テクニック 12 選 ―PsalmとPHP 8.1で今はこんなこともできる!―
Similar to php開発で使うタスクランナー gulp
Laravelチュートリアルを作ってみた。
Laravelチュートリアルを作ってみた。
Futoshi Endo
Laravel5.1&homesteadで楽々ローカル環境構築
Laravel5.1&homesteadで楽々ローカル環境構築
Noriaki Takamizawa
PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014
Yuuki Takezawa
Laravel4で運用するサービス,そしてlaravel5へ
Laravel4で運用するサービス,そしてlaravel5へ
Nʎ Nkogues
20090801phpstudy Sanemat
20090801phpstudy Sanemat
Kenichi Murahashi
簡単便利!Laravel Homestead
簡単便利!Laravel Homestead
Shota Inoue
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
Takuya Sato
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Yuuki Takezawa
いまどき(これから)のPHP開発
いまどき(これから)のPHP開発
Kenjiro Kubota
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
sasezaki
Laravel shibuya 3 Laravel Beginner IRT
Laravel shibuya 3 Laravel Beginner IRT
Obata Masaki
Laravel Mix とは何なのか? - Laravel/Vue 勉強会 #1
Laravel Mix とは何なのか? - Laravel/Vue 勉強会 #1
Shohei Okada
PHP AV BINDING
PHP AV BINDING
Yo Ya
Hashicorpツールズ
Hashicorpツールズ
Uchio Kondo
筋トレ大事
筋トレ大事
Eiji Yokota
PHPerのためのpostgresqlチューニングmini
PHPerのためのpostgresqlチューニングmini
Takhisa Hirokawa
Laravelのすごいと思うところを 初級レベルで語ってみる。
Laravelのすごいと思うところを 初級レベルで語ってみる。
AfiruPain NaokiSoga
Laravelを使ってみた
Laravelを使ってみた
Jaeseop Jeong
PHP&NewSQLで考える次世代アプリケーション
PHP&NewSQLで考える次世代アプリケーション
Yuuki Takezawa
Word pressのテーマは firephpでハックすれば 良かったのか
Word pressのテーマは firephpでハックすれば 良かったのか
Hisateru Tanaka
Similar to php開発で使うタスクランナー gulp
(20)
Laravelチュートリアルを作ってみた。
Laravelチュートリアルを作ってみた。
Laravel5.1&homesteadで楽々ローカル環境構築
Laravel5.1&homesteadで楽々ローカル環境構築
PHP フィールドインジェクションに挑戦する PHP勉強会2014
PHP フィールドインジェクションに挑戦する PHP勉強会2014
Laravel4で運用するサービス,そしてlaravel5へ
Laravel4で運用するサービス,そしてlaravel5へ
20090801phpstudy Sanemat
20090801phpstudy Sanemat
簡単便利!Laravel Homestead
簡単便利!Laravel Homestead
PHPでセキュリティを真面目に考える
PHPでセキュリティを真面目に考える
Laravel meetup5(Laravel meet NewSQL/VoltDB )
Laravel meetup5(Laravel meet NewSQL/VoltDB )
いまどき(これから)のPHP開発
いまどき(これから)のPHP開発
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
なぜ、PHPのmbstring.func_overloadをdeprecatedにするのに5年かかったのか? - 慢心、環境の違い
Laravel shibuya 3 Laravel Beginner IRT
Laravel shibuya 3 Laravel Beginner IRT
Laravel Mix とは何なのか? - Laravel/Vue 勉強会 #1
Laravel Mix とは何なのか? - Laravel/Vue 勉強会 #1
PHP AV BINDING
PHP AV BINDING
Hashicorpツールズ
Hashicorpツールズ
筋トレ大事
筋トレ大事
PHPerのためのpostgresqlチューニングmini
PHPerのためのpostgresqlチューニングmini
Laravelのすごいと思うところを 初級レベルで語ってみる。
Laravelのすごいと思うところを 初級レベルで語ってみる。
Laravelを使ってみた
Laravelを使ってみた
PHP&NewSQLで考える次世代アプリケーション
PHP&NewSQLで考える次世代アプリケーション
Word pressのテーマは firephpでハックすれば 良かったのか
Word pressのテーマは firephpでハックすれば 良かったのか
Recently uploaded
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
Recently uploaded
(9)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
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 now