LoginSignup
2
4

More than 5 years have passed since last update.

ES6、webpack、ESLintまとめ【js開発環境】

Last updated at Posted at 2017-10-11

JavaScriptの開発環境を構築するにあたり、以下の必須項目についての概要をまとめてみた。

必須要素

  • ES6
  • webpack
  • ESLint

各要素の概要

ES6

正式名称はECMAScript2015(ES2015)。通称ECMAScript6(ES6)。
ECMA Internationalによって標準化されたJavaScriptであり、これまでJavaScriptでは不便であったオブジェクト指向プログラミングが、直感的に行えるようになった。

ES6で新たに提供された主な仕様

  • class命名の導入で、Java/C#ライクなクラス定義が可能に
  • import/export命令によるコードのモジュール化をサポート
  • 関数構文の改善(アロー関数、引数のデフォルト値、可変長変数など)
  • let/const命令による値の列挙
  • イテレーター/ジェネレーターにより列挙可能なオブジェクトの操作が可能に
  • 組み込みオブジェクトの拡充(Promise、Map/Set、Proxyなど)
  • String/Number/Arrayなど、既存の組み込みオブジェクトも機能を拡張

ただし、すべてのブラウザーが対応しているわけではないので、Babelのようなトランスコンパイラーが不可欠。

webpack

ウェブコンテンツを構成するファイルをまとめるツール。モジュールバンドラ。

  • モジュールバンドラ
    複数のモジュールを1つにまとめたファイルを出力するツール。代表的なものとして、Browserify、RequireJS、webpackがある。

複数のJavaScriptファイルをまとめることで様々な利点がある。
1. 機能ごとにファイルを分割できる(作業の効率化)
2. 外部モジュールを利用できる
3. リクエスト数を減らすことが出来る

HTTP/1.1接続ではブラウザとウェブサーバーの同時接続数が限られるため、1つのファイルにまとめることで転送時間を短縮できる
4. 依存関係を解決したファイルを出力できる

JavaScriptの他にも、CSSや画像もバンドルできたり、ローカルサーバーの起動まで包括的な制作環境としての機能まである。

ESLint

JavaScriptのための静的検証ツール。コード一貫性の保持やバグの発見などをおこなう。同様のツールにJSLint、JSHint、JSCSなどがある。

特徴

  • すべての検証ルールを自由にon/offできる
  • カスタムルールを作ることができる
  • 豊富なビルトインルールに加えて、多数のプラグインが公開されている
  • ES6、ES7、JSXを標準サポート
  • Babel と連携することで、仕様策定中の新しい構文や Flow 型注釈にも対応できる
  • 迅速に開始できるように、推奨ルールだけでなくサードパーティの設定利用が可能
  • Sublime、Vim、JetBrainsの製品およびVisual Studio Codeなどの、複数のエディタやIDEとの統合が可能
2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4