JSer.info #210 - ES6+のコードをES5に変換するツールである6to5の公式サイトがリニューアルされました。
また、同じくES6のコードを変換するツールであるesnextが6to5に合流して、移行していくようです。
ちょうどライブラリをES6で書いて公開する所から始めよう | Web Scratchという、6to5を使いES6で書いたライブラリを公開する流れについての記事も公開したので6to5を試してみるといいかもしれません。
JavaScript in 2015 - Glen Maddern: Internet Proという記事では、jspmというパッケージ管理ツールについて紹介しています。
jspmはnpmやGitHubからライブラリをインストールするコマンドラインツールとSystemJSを使ったモジュールローダから成っています。
上記の動画では、redditからgifを抽出して表示するという流れをjspmで行っていて、とてもテンポよく紹介しています。
開発中はRequireJSのように動的にES6 modulesやCommonJS、AMD等を読み込み、最後にProduction Workflowsにあるように一つのファイルにバンドルする流れで紹介されています。
また、現在の多くのモジュール周りのツールはHTTP/1での配信を考えてひとつのファイルに結合します。
しかし、HTTP/2ではモジュール的なデータの通信効率がよくなるため、モジュールそのままで配信するとどうなるかという話がjspmの作者でもある@guybedfordによって話されています。
The Refactoring Talesという電子書籍ではJavaScriptのリファクタリングについて書かれています。
まだ未完成ですが、jQueryでかかれたテストがしにくいレガシーコードをどうやって修正していくのかなどについて紹介されています。
簡単な概要はThe Refactoring Tales - JavaScriptのリファクタリング本を読んだ | Web Scratchにて紹介しています。
ヘッドライン
6to5 · Turn ES6+ code into readable vanilla ES5
包含的にES6のコードをES5に変換する6to5の公式サイトリニューアル。
JSXやFlowとか多くの部分に対応、polyfill出来るところは外部のpolyfillを読み込み対応、可読性が高いコードを吐くようになっている。
アーティクル
ライブラリをES6で書いて公開する所から始めよう | Web Scratch
efcl.info/2015/01/09/write-es6/
ES6でライブラリを書いて、テストしてnpmに公開するまでの流れ。
6to5+power-assert+mochaの組み合わせを設定ファイルレスで行う話
Shape Security Labs: A Technical Comparison of the Shift and SpiderMonkey AST Formats
engineering.shapesecurity.com/2015/01/a-technical-comparison-of-shift-and.html
Shift ASTとSpiderMonkey ASTの違いについて。
改善点、拡張された点、まだ議論すべき点について
A Good Front-End Architecture
www.sitepoint.com/good-front-end-architecture/
フロントエンド(HTML、JavaScript、CSS、リソース)のディレクトリ構造について
Modularizing Underscore.js | &yet Blog
blog.andyet.com/2015/01/07/modularizing-underscorejs
小さいモジュールを大量に作って公開する場合にも問題となる点がある事について。
Amp.jsという小さなモジュールの組み合わせでUnderscoreライクなものを作り、それぞれのモジュールがどのような構造になっているかについて
What's New in QUnit 1.16
www.sitepoint.com/whats-new-qunit-1-16/
QUnit 1.16について。
2.0に向けて変更、非同期のテストの新しい方法の追加、Promiseのサポート、QUnit.skip()
などについて
Cross-tab Communication
ponyfoo.com/articles/cross-tab-communication
localStorageを使ったタブ間のやり取りをする方法。
より簡単に行うlocal-storage
というライブラリについて
スライド、動画関係
JavaScript in 2015 - Glen Maddern: Internet Pro
glenmaddern.com/articles/javascript-in-2015
jspmの紹介記事 + 動画。
redditのAPIを使いGIFを表示する画面をjspm+npm+ES6をつかって書く動画。
テンポ良く紹介されている動画で、開発中はビルド等不要でローダで読み込み、プロダクションでは一つのファイルにbundle出来るという特徴を紹介してる。
サイト、サービス
Essential JavaScript Links
gist.github.com/ericelliott/d576f72441fc1b27dace
JavaScriptに関するリソースリンク集
Internet ExplorerのどのバージョンからどのHTML/CSS/JSに対応しているかの一覧|Web制作 W3G
IEバージョン別のサポート終了日、対応したHTML/CSS/JSの機能のまとめ
ソフトウェア、ツール、ライブラリ関係
azu/espower-6to5 · GitHub
power-assert + 6to5 ES6でpower-assertのテストを書ける。
使用例: https://github.com/azu/textlint-rule-helper
conceptsandtraining/modernie_selenium
github.com/conceptsandtraining/modernie_selenium
modern.ieを使ったSeleniumの設定ツール。
自動で必要なものをインストール + Windowsの余計な設定をオフにしてくれる
es-shims/es7-shim
ES7のpolyfillライブラリ
bevacqua/local-storage
github.com/bevacqua/local-storage
localStorageのAPIをシンプルにしたライブラリ
タブ間のコミュニケーションに使うような監視機能も持ってる
Zhouzi/TheaterJS
タイプライター的な文字表示効果等を行えるライブラリ
mirek/node-unused-deps
github.com/mirek/node-unused-deps
使用してないNode.jsモジュールがあるかどうかをチェックするコマンドラインツール
tejasmanohar/npm-algos
github.com/tejasmanohar/npm-algos
コンピュータサイエンス、アルゴリズムの実装ライブラリのまとめ
Headless Browser Testing With Xvfb
tobyho.com/2015/01/09/headless-browser-testing-xvfb/
Firefoxなどヘッドレスで動かすのにXvfbが必要なアプリをxvfb-run firefox
という感じで起動できるコマンドラインツール
Amp.js
Underscore.js的なユーティリティ関数のコレクションライブラリ。
それぞれの機能をちゃんと個別のnpmモジュールとしてインストール出来る
書籍関係
Node.js Design Patterns | Packt
www.packtpub.com/web-development/nodejs-design-patterns
Node.jsのデザインパターンについての書籍
The Refactoring Tales
javascriptplayground.com/the-refactoring-tales/refactoring-tales.html
JavaScriptのリファクタリングについてのウェブで公開されてる書籍。(まだ執筆中)
1,2章はjQueryべったりな書き方のリファクタリング、3章は不必要な複雑性を分離、4章はデザインパターン、5章はFat Controller等