Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Masayuki Ishikawa
5,078 views
フロントエンド制作向け ビルドツールGruntを PHPバックエンド開発で利用する @M_Ishikawa #phpcon2013
PHPカンファレンス2013 発表資料 #phpcon2013 php, grunt, phpcon, phpcon2013, nodejs, node, composer
Technology
◦
Read more
12
Save
Share
Embed
Embed presentation
Download
Downloaded 17 times
1
/ 36
2
/ 36
3
/ 36
4
/ 36
5
/ 36
6
/ 36
7
/ 36
8
/ 36
9
/ 36
10
/ 36
11
/ 36
12
/ 36
13
/ 36
14
/ 36
15
/ 36
16
/ 36
17
/ 36
18
/ 36
19
/ 36
20
/ 36
21
/ 36
22
/ 36
23
/ 36
24
/ 36
25
/ 36
26
/ 36
27
/ 36
28
/ 36
29
/ 36
30
/ 36
31
/ 36
32
/ 36
33
/ 36
34
/ 36
35
/ 36
36
/ 36
More Related Content
PDF
フロントエンド制作向けビルド ツールGruntがバックエンド 開発でも意外と使える! @M_Ishikawa #yapcasia
by
Masayuki Ishikawa
PPTX
Type scriptmemo
by
ytanno
PDF
最近、実務に導入してみたフロントエンドの技術8つの良かった点と反省点
by
Horiguchi Seito
PDF
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
by
Horiguchi Seito
PDF
お気に入り拡張機能
by
SatsukiYabu
PDF
タスクランナー導入 〜とあるWordPress制作環境〜
by
Masaya Kogawa
PDF
Cargo makeを使ってみた話
by
emakryo
PDF
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
by
Hiroh Satoh
フロントエンド制作向けビルド ツールGruntがバックエンド 開発でも意外と使える! @M_Ishikawa #yapcasia
by
Masayuki Ishikawa
Type scriptmemo
by
ytanno
最近、実務に導入してみたフロントエンドの技術8つの良かった点と反省点
by
Horiguchi Seito
超初心者でも大丈夫!AngularJSでフォームページをちょっとリッチに改造してみよう
by
Horiguchi Seito
お気に入り拡張機能
by
SatsukiYabu
タスクランナー導入 〜とあるWordPress制作環境〜
by
Masaya Kogawa
Cargo makeを使ってみた話
by
emakryo
ぼくのかんがえたさいきょうのうぇぶあぷりけーしょんふれーむわーく - YAPC Asia 2011
by
Hiroh Satoh
What's hot
PDF
Gitライフをはじめましょう〜GUIツールで簡単運用 Mac編〜
by
Erina Takei
PDF
SwaggerとAPIのデザイン
by
Kazuhiro Hara
PDF
VS Code新機能紹介2020-2021
by
Yuki Ueda
PDF
f3js - JS Board Shibuya #6 LT
by
Jun Kato
PPTX
アプリ開発&チーム管理で役立った拡張機能
by
Masaki Suzuki
PDF
Feature Store in DRIVE CHART
by
emakryo
PPTX
RustによるGPUプログラミング環境
by
KiyotomoHiroyasu
PDF
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
by
Issei Hiraoka
PDF
JavaScript TDD紹介 #agilesamurai
by
Go Sueyoshi (a.k.a sue445)
ODP
Yapf2013
by
l_b__
PDF
Node.jsでサーバプログラマ デビューしよう
by
Yuusuke Takeuchi
PDF
Customizing cargo for cross compiling
by
emakryo
PDF
PyconJP2017 Kivyによるアプリケーション開発のすすめ
by
Jun Okazaki
PDF
GUIツールで送る快適な Gitライフ@Creators MeetUp #29
by
Erina Takei
PPTX
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
by
Hiroyuki Kusu
PPTX
Kivyでゲーム
by
Jun Okazaki
PPTX
200208 osh-nishimoto-v2
by
Takuya Nishimoto
PPTX
「Kivyによるアプリケーション開発のすすめ」の勧め
by
Jun Okazaki
PDF
Hello, Node.js
by
Shin Sekaryo
PDF
VSCode Conference Japan 2021 kyusque
by
kyusque
Gitライフをはじめましょう〜GUIツールで簡単運用 Mac編〜
by
Erina Takei
SwaggerとAPIのデザイン
by
Kazuhiro Hara
VS Code新機能紹介2020-2021
by
Yuki Ueda
f3js - JS Board Shibuya #6 LT
by
Jun Kato
アプリ開発&チーム管理で役立った拡張機能
by
Masaki Suzuki
Feature Store in DRIVE CHART
by
emakryo
RustによるGPUプログラミング環境
by
KiyotomoHiroyasu
2020/06/16 tsjp-azure-staticwebapps-vs_codespaces
by
Issei Hiraoka
JavaScript TDD紹介 #agilesamurai
by
Go Sueyoshi (a.k.a sue445)
Yapf2013
by
l_b__
Node.jsでサーバプログラマ デビューしよう
by
Yuusuke Takeuchi
Customizing cargo for cross compiling
by
emakryo
PyconJP2017 Kivyによるアプリケーション開発のすすめ
by
Jun Okazaki
GUIツールで送る快適な Gitライフ@Creators MeetUp #29
by
Erina Takei
【東京Node学園祭2016】Node.js × Babel で AWS Lambda アプリケーションを開発する
by
Hiroyuki Kusu
Kivyでゲーム
by
Jun Okazaki
200208 osh-nishimoto-v2
by
Takuya Nishimoto
「Kivyによるアプリケーション開発のすすめ」の勧め
by
Jun Okazaki
Hello, Node.js
by
Shin Sekaryo
VSCode Conference Japan 2021 kyusque
by
kyusque
Similar to フロントエンド制作向け ビルドツールGruntを PHPバックエンド開発で利用する @M_Ishikawa #phpcon2013
PDF
jsCafe v13 Grunt
by
Shinya Sugo
PDF
Gruntを導入しよう!の話
by
Koji Nakamura
PPTX
Grunt入門
by
Tsuyoshi Maeda
ODP
今流行りのウェブアプリ開発環境Yeoman
by
tomo_masakura
PDF
Webサイト・フロントエンドの高速化とgrunt.jsについて
by
Tomo Fujita
PDF
フロントエンドのツール Yeoman を勘違いしていた
by
girigiribauer
PDF
Gruntでフロントの生産性up
by
Kazuyoshi Goto
PDF
説明資料
by
Tomoki Kobayashi
PDF
Hcmtg 1407
by
Tomoki Kobayashi
PPT
GruntでJavaScript 前作業の自動化!
by
leverages_event
PPTX
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
by
近藤 繁延
PDF
Grunt.jsを使った Expressの開発環境構築
by
kamiyam .
PDF
自動化ツール「Grunt.js」について
by
Seiko Kuchida
PDF
PhpStormとGrunt.jsで作るCakePHP快適開発環境
by
kamiyam .
PDF
Gulp入門 - コーディングを10倍速くする
by
Hayashi Yuichi
PDF
フロント開発をがんばるためにGulpとGruntに入門してみた
by
Shou Takenaka
PDF
2015.09.26 gulp使ってみた
by
Takahiro Uemura
PDF
Yeoman RIAビルドツール超入門
by
Masakazu Muraoka
PPTX
Gruntでjava script前作業の自動化!
by
Tanaka Yuichi
PDF
gulp + sass で目指せ倍速コーディング(東区フロントエンド勉強会 2015年 第1回) 環境準備編
by
Toshimichi Suekane
jsCafe v13 Grunt
by
Shinya Sugo
Gruntを導入しよう!の話
by
Koji Nakamura
Grunt入門
by
Tsuyoshi Maeda
今流行りのウェブアプリ開発環境Yeoman
by
tomo_masakura
Webサイト・フロントエンドの高速化とgrunt.jsについて
by
Tomo Fujita
フロントエンドのツール Yeoman を勘違いしていた
by
girigiribauer
Gruntでフロントの生産性up
by
Kazuyoshi Goto
説明資料
by
Tomoki Kobayashi
Hcmtg 1407
by
Tomoki Kobayashi
GruntでJavaScript 前作業の自動化!
by
leverages_event
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
by
近藤 繁延
Grunt.jsを使った Expressの開発環境構築
by
kamiyam .
自動化ツール「Grunt.js」について
by
Seiko Kuchida
PhpStormとGrunt.jsで作るCakePHP快適開発環境
by
kamiyam .
Gulp入門 - コーディングを10倍速くする
by
Hayashi Yuichi
フロント開発をがんばるためにGulpとGruntに入門してみた
by
Shou Takenaka
2015.09.26 gulp使ってみた
by
Takahiro Uemura
Yeoman RIAビルドツール超入門
by
Masakazu Muraoka
Gruntでjava script前作業の自動化!
by
Tanaka Yuichi
gulp + sass で目指せ倍速コーディング(東区フロントエンド勉強会 2015年 第1回) 環境準備編
by
Toshimichi Suekane
フロントエンド制作向け ビルドツールGruntを PHPバックエンド開発で利用する @M_Ishikawa #phpcon2013
1.
フロントエンド制作向け ビルドツールGruntを PHPバックエンド開発で利利⽤用する @M_̲Ishikawa 2013/9/24 (火)
2.
本⽇日の⽬目標 •Gruntがなにかを知る •PHP開発でGruntの使い道を知る •Gruntプラグインを⾃自分で開発できる ようにする ⼊入⾨門者向けの内容です 2013/9/24 (火)
3.
• ⾃自⼰己紹介 • Gruntとは •
Grunt概要 • Gruntプラグイン • 活⽤用事例例 • バックエンド開発での利利⽤用 • 事例例 • PHP関連プラグイン 本⽇日のメニュー 2013/9/24 (火)
4.
⾃自⼰己紹介 2013/9/24 (火)
5.
•Masayuki Ishikawa •@M_̲Ishikawa •id:ishikawam •ブラウザソーシャルゲームの開発エンジニア 2013/9/24 (火)
6.
Gruntとは 2013/9/24 (火)
7.
http://gruntjs.com/ 2013/9/24 (火)
8.
•最近のHTMLとかCSSのイベント・カンファレンスで 使っているのをよく⾒見見かける •講演内容がGruntではなくても、講演者はGrunt使⽤用 が前提でセッションを進めてたり •フロントエンド開発では結構当たり前に使っている •デザイナーが「⿊黒い画⾯面」といいだしたのはGruntを 触るのがきっかけ?(実際はcompassとかsassとか gitとかだけど) でも我々PHPerにはほとんど縁がない! 2013/9/24 (火)
9.
• node.js製のフロントエンド開発⽀支援ツール • フロントエンド関連ファイルのビルドを⾏行行う •
開発⽤用、公開⽤用ディレクトリを分けて管理理し、公開⽤用に画像を圧 縮したりJSを難読化したりCSSプリプロセッサ変換(Sass等) をしたりテストしたり etc... • プラグインによりツールを拡張できる • プラグインの開発が簡単(node=JS) • Gruntプラグイン=nodeモジュールなのでnpmで管理理されてます Gruntとは 2013/9/24 (火)
10.
•依存管理理といったら例例えばこんなの •PEARとかGemは?>パッケージ管理理。 •※npmはパッケージ管理理、依存管理理の両⽅方できる •git submoduleではなく機能として利利⽤用できる npm のおさらい ライブラリの依存管理理 2013/9/24
(火)
11.
Gruntの動作環境 •開発環境で使う •nodeが動けば動く。Macでも、 Windowsでも、Linuxでも •今回はクライアントMacでデモ •サーバ上での開発で使⽤用しても まったく問題なし 2013/9/24 (火)
12.
•デザイナーがMacで制作、Sublime Text を使⽤用して⿊黒い画⾯面でGruntを利利⽤用 •エンジニアがターミナルから接続した開発 ⽤用サーバ上でプログラミング、そこで Gruntを利利⽤用 例例えばこんなシチュエーション 2013/9/24 (火)
13.
•Gruntは枠組みだけ、実態はプラグイ ンで、これをどう使うか。 •http://gruntjs.com/plugins •公式 25 •全体 1390 ※npm
search gruntplugin | wc -‐‑‒l 調べ 2013/9/12現在 Gruntプラグイン 2013/9/24 (火)
14.
• grunt-‐‑‒contrib(公式プラグイン:25個)でどんなことができるか https://github.com/gruntjs/grunt-‐‑‒contrib •
grunt-‐‑‒contrib-‐‑‒clean Clean files and folders. • grunt-‐‑‒contrib-‐‑‒coffee Compile CoffeeScript files to JavaScript. • grunt-‐‑‒contrib-‐‑‒compass Compile Compass to CSS • grunt-‐‑‒contrib-‐‑‒compress Compress files and folders. • grunt-‐‑‒contrib-‐‑‒concat Concatenate files. • grunt-‐‑‒contrib-‐‑‒connect Start a connect web server. • grunt-‐‑‒contrib-‐‑‒copy Copy files and folders. • grunt-‐‑‒contrib-‐‑‒cssmin Compress CSS files. • grunt-‐‑‒contrib-‐‑‒csslint Lint CSS files. • grunt-‐‑‒contrib-‐‑‒handlebars Precompile Handlebars templates to JST file. • grunt-‐‑‒contrib-‐‑‒htmlmin Minify HTML • grunt-‐‑‒contrib-‐‑‒imagemin Minify PNG and JPEG images • grunt-‐‑‒contrib-‐‑‒jade Compile Jade files to HTML. • grunt-‐‑‒contrib-‐‑‒jasmine Run jasmine specs headlessly through PhantomJS. • grunt-‐‑‒contrib-‐‑‒jshint Validate files with JSHint. • grunt-‐‑‒contrib-‐‑‒jst Precompile Underscore templates to JST file. • grunt-‐‑‒contrib-‐‑‒less Compile LESS files to CSS. • grunt-‐‑‒contrib-‐‑‒nodeunit Run Nodeunit unit tests. • grunt-‐‑‒contrib-‐‑‒qunit Run QUnit unit tests in a headless PhantomJS instance. • grunt-‐‑‒contrib-‐‑‒requirejs Optimize RequireJS projects using r.js. • grunt-‐‑‒contrib-‐‑‒sass Compile Sass to CSS • grunt-‐‑‒contrib-‐‑‒stylus Compile Stylus files to CSS. • grunt-‐‑‒contrib-‐‑‒uglify Minify files with UglifyJS. • grunt-‐‑‒contrib-‐‑‒watch Run predefined tasks whenever watched file patterns are added, changed or deleted. • grunt-‐‑‒contrib-‐‑‒yuidoc Compile YUIDoc Documentation. 2013/9/24 (火)
15.
様々なコンバート処理理 nodeunit uglifyjs 2013/9/24 (火)
16.
• 開発、運⽤用において、「コードを書く以外」でやっている⼿手間ありま せんか? • コンパイル、ビルドのコマンド実⾏行行 •
Sass(SCSS,less)を変換、CoffeeScriptを変換 • 本番配布⽤用に画像の圧縮、JSの難読化、CSSのミニファイ • 規則正しく予想できるファイル名(card1.png,card2.png,...) へ直接アクセスされないように隠蔽するのにハッシュのリネーム • CDNのキャッシュをクリアするために⾛走らせているコマンド • srcにパラメータ付与、ファイル名変更更、等 • テストの実⾏行行 • Lint, シンタックスチェック, UNITテスト,等 • その他、無限の可能性が...!!! Gruntの使いどころ 2013/9/24 (火)
17.
•1.開発環境へnode、Gruntを導⼊入 •ちなみに本番運⽤用サーバへnodeを⼊入れる必要は ありません!あくまで開発⽀支援で使うのみです。 •2.プロジェクトリポジトリへGruntfile.jsと package.jsonを⼊入れて、node_̲modules を.gitignoreに⼊入れる •3.各開発環境では npm install
を実⾏行行して node_̲modules以下にGruntプラグインを構築 Grunt導⼊入までの流流れ 2013/9/24 (火)
18.
# nodeが入っている前提 % npm
-g install grunt-cli % mkdir ~/hoge % cd ~/hoge % npm install grunt --save 1.開発環境へGruntを導⼊入 npmのお作法により、プロジェクトごとにインストールする 2013/9/24 (火)
19.
•Gruntfile.js •Gruntの設定ファイル •package.json •Gruntで使⽤用するプラグインのパッ ケージ管理理&依存管理理 2.プロジェクトへ Gruntfile.js と
package.json を設置 2013/9/24 (火)
20.
% npm install 3.node_̲modules以下に Gruntプラグインを構築 package.json
正しく書かれていれば node_̲modules ディレクトリ 以下にプラグインがインストールされます。 2013/9/24 (火)
21.
Gruntデモ ソース公開してます https://github.com/ishikawam/grunt-‐‑‒sample-‐‑‒php 2013/9/24 (火)
22.
Gruntのデモ • Wordpressで試します • 今回使⽤用するプラグイン •
gruntでミニファイ • grunt-‐‑‒contrib-‐‑‒cssmin • grunt-‐‑‒contrib-‐‑‒uglify • gruntで構⽂文チェック • grunt-‐‑‒contrib-‐‑‒csslint • grunt-‐‑‒contrib-‐‑‒jshint • gruntでPHP! • grunt-‐‑‒phpunit • grunt-‐‑‒phplint • grunt-‐‑‒phpcs 2013/9/24 (火)
23.
Gruntでミニファイ • プラグイン例例 • grunt-‐‑‒contrib-‐‑‒cssmin
cssのミニファイ • grunt-‐‑‒contrib-‐‑‒uglify JSのミニファイ • grunt-‐‑‒contrib-‐‑‒imagemin png,jpgのミニファイ • ファイル構成例例 • htdocs/{css,js,img}/ DocmentRoot • assets/{css,js,img}/ オリジナルファイル ※開発⽤用としてはメディアファイルをhtdocsではなく assetsを参照するようにすれと捗ります。 2013/9/24 (火)
24.
Gruntで構⽂文チェック •本⽇日の例例 •grunt-‐‑‒contrib-‐‑‒csslint •cssの構⽂文チェック •grunt-‐‑‒contrib-‐‑‒jshint •JSの構⽂文チェック ※チェッカの設定はGruntfile.js内 Optionsで細かく指定できます。 2013/9/24 (火)
25.
GruntでPHP! •本⽇日の例例 •grunt-‐‑‒phpunit •PHPのユニットテスト •grunt-‐‑‒phplint •PHPの構⽂文チェック •grunt-‐‑‒phpcs •PHPのコーディング規約チェック ※他にもPHP関連Gruntプラグインはあります 2013/9/24 (火)
26.
例例:PHPのソースを監視して ユニットテストを⾛走らせる 2013/9/24 (火)
27.
例例:PHPのソースを監視して ユニットテストを⾛走らせる grunt-‐‑‒watchでソースの変更更を監視して phpunitをgrunt-‐‑‒phpunitを介して実⾏行行する = 2013/9/24 (火)
28.
Gruntプラグインを 作ってみよう 2013/9/24 (火)
29.
•やりたいこと:grunt-‐‑‒watchでソースの変 更更を監視してphpunitをgrunt-‐‑‒phpunitを 介して実⾏行行する •「こんなのあるかな?」と思ったプラグイ ンはだいたい存在する (なければ作れば いいよ) Gruntプラグインを 作ってみよう 2013/9/24 (火)
30.
Gruntプラグインのファイル構成例例 • Gruntfile.js • package.json •
README.* • LICENSE-‐‑‒* • tasks/ • node_̲modules/ • .git • .gitignore • .npmignore • .travis.yml • test/ • tmp/ 2013/9/24 (火)
31.
Gruntプラグインの開発にも Gruntを使います 2013/9/24 (火)
32.
% npm init
#package.jsonを生成 % npm publish #公開! % npm info hoge #npmに登録されたのを確認 1.開発環境へGruntを導⼊入 たったこれだけ! 2013/9/24 (火)
33.
Gruntで楽しい コーディングライフを!! 2013/9/24 (火)
34.
本⽇日のサンプルはGithubで 資料料はslideshareで 公開してます。 http://www.slideshare.net/mishikawa55/2013-‐‑‒phpcon https://github.com/ishikawam/grunt-‐‑‒sample-‐‑‒php 2013/9/24 (火)
35.
以上、ご清聴 ありがとうございました! @M_̲Ishikawa 2013/9/24 (火)
36.
以上、ご清聴 ありがとうございました! @M_̲Ishikawa 2013/9/24 (火)
Download