質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
gulp

gulpは、Node.jsをベースとしたタスク自動化ツールの一つ。ストリームでファイルを処理することが特徴です。CSSプリプロセッサの使用時のコンパイルや、CSS・JavaScriptファイルの圧縮・結合などを自動的に行うことができます。

Q&A

1回答

3132閲覧

gulpとwebpackとnpm scriptの使い分け

auropun

総合スコア19

gulp

gulpは、Node.jsをベースとしたタスク自動化ツールの一つ。ストリームでファイルを処理することが特徴です。CSSプリプロセッサの使用時のコンパイルや、CSS・JavaScriptファイルの圧縮・結合などを自動的に行うことができます。

0グッド

2クリップ

投稿2017/05/13 20:42

###前提・実現したいこと
サイトを作るときモジュールをまとめたり管理したいときには、gulpとwebpackとnpm scriptというツールを使ってやると簡単に管理したりできると知りました(解釈が間違っていたら教えてください。)。
この3つを組み合わせて使うという方法も検索したらあったのですが、場合で使い分けろという意見が多かったです。
「これらの3つはどのように使い分けるのか。それともどれかひとつだけでいいのか。」「具体的な場面やそれぞれの特徴」を教えてもらいたいと思ったので質問しまsした。

###発生している問題・エラーメッセージ

  • 3つの管理ツールの使い分け、特徴などがわからない。

###該当のソースコード
ソースコードはないです。

###試したこと
検索していろいろな情報を見てみる。

###補足情報(言語/FW/ツール等のバージョンなど)
windows8を使っています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

gulp

タスクランナー
実際は単なるJavaScriptなので、下記のような流れるような事を数珠繋ぎに定義して保存しておくと後から同じファイル加工を何度でも行える。

AltJSをJSにコンパイル
→特定のディレクトリへ移動
→ファイル同士をconcatして一つのファイルに固めなおす
→1行に圧縮してファイルサイズを減らす
→難読化

webpack

配布物を生成する為のビルドツール
gulpはタスクランナーだけど、これの導入目的の9割は同じく配布物を生成する為のビルドツールとして使うわけで、競合ツールと認識してほぼ間違いない。

プロジェクトによってGulpとWebpackのどちらかを使い分ける感じ。
※そしてどっちでもいいし、どちらも使わずにNode.jsを使って自力コンパイルしてもいい。

npm script

これは単にpackage.jsonにコマンドを仕込めるよってだけの機能
例えば"build": "gulp build"等と記載しておけば、そのフォルダの配下で以下のコマンドでgulp buildが呼び出せるようになる。
npm run build => gulp build

えっ、なにそれ微妙じゃん…
いやいや、Node.jsを使うなら必須級の超重要項目ですよ。
絶対にGulpやWebpackのビルドツールと併用すべき。

なぜならば、package.jsonはプロジェクト内定義書といっても過言でない程の重要ファイル。
後からジョインしたメンバーはpackage.jsonを読んでプロジェクトの概要を理解するわけ。

package.json内のnpm scriptは目を通しておくべき1項目。
上記のnpm run buildはタイプ数が増えているので一見無駄なんだけど、
前任者がコマンドを保存しておくと、後からジョインしたメンバーはどんなTOOLやコマンドで配布物を生成しているか一目でわかる。

投稿2017/06/03 07:30

miyabi-sun

総合スコア21158

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問