JSer.info #251 - Vue.js 1.0.0がリリースされました。
0.12.16から1.0.0までの変更はリリースノートに詳しく書かれていますが、テンプレート周りの改善や非推奨のAPIの削除やAPIの整理が行われています
同時にVue.jsに再入門するという趣旨の記事が作者によって書かれているので一緒に見てみるといいです。
JavaScript変換ツールであるBabel 6がリリースされました。
NOTE: Not all integrations have been updated yet. This is a very disruptive major so please bear with us as we smooth out the edges.
と書かれているようにかなり大きな変更が入っています。
簡単にまとめると
babel
ではなくbabel-cli
またはbabel-core
を使うように- デフォルト(設定なし)では何も変換しないように
.babelrc
や--presets
などで変換方法の設定が必須に- ES6のコードを変換したい場合はbabel-preset-es2015、Reactならbabel-preset-react、CommonJSのモジュールを扱うならbabel-plugin-transform-es2015-modules-commonjsというようにそれぞれ設定が必要
- 設定や依存するパッケージをチェックするBabel Doctorというツールもある
参考
- Setting up Babel 6 · Babel
- Update babel-core to version 6.0.2 🚀 by greenkeeperio-bot · Pull Request #30 · jbhannah/jbhannah.net
- Quick guide: how to update Babel 5.x -> 6.x — Medium
今までのBabelはデフォルトでベースとなる変換(ES2015やCommonJS、Reactなど)が含まれていましたが、Babel 6からはそれらの変換が個別のモジュールとして分けられています。
このモジュール化によって人によっては不要だった変換がそもそも行われなくなり、必要な変換だけを設定していく形に変更されています。
今までは、whitelist
やblacklist
などの設定がありましたが、これにともない削除されています。
またBabel 6ではプラグインによる変換の仕組みが変わっているため、コミュニティにより開発されてるプラグインは大体がまだ未対応となってます。
ドキュメントもまだ更新されてなかったり、リグレッション的なバグなどもまだあるので、もう少し落ち着いてからBabel 6.xへ移行しても遅くはないと思います。
Node.js v5.0.0がリリースされました。
fs.readFile
がfile descriptorをサポート、npm 3.xがデフォルトへと変更などが行われています。
Node.js v4.2.1から始まったLTSについてはWhat You Should Know about Node.js v5 and More | Node.jsにて解説されています。
ヘッドライン
Vue.js 1.0.0 Released - vue.js
vuejs.org/2015/10/26/1.0.0-release/
Vue.js 1.0.0リリース。
テンプレートの改善、非推奨なAPIを削除、初期表示の速度改善など
6.0.0 Released · Babel
babeljs.io/blog/2015/10/29/6.0.0
Babel 6.0.0リリース。
まだ関連プラグインが追いついていないため扱いに注意。
Babelの内部的に使っていたモジュールがそれぞれパッケージとして利用できるようになった。
プラグインがオプトインとなり、同時にプラグインプリセットが用意された。
また変換の速度改善やプラグインのAPI変更が行われている。
Node v5.0.0 (Stable) | Node.js
nodejs.org/en/blog/release/v5.0.0/
Node.js 5.0.0リリース。
fs.readFile
がfile descriptorをサポート、npm 3.xがデフォルトへと変更、ALPNサポート、util.inherits
がES6 Classesからも継承できるようになるなど
New in bluebird 3.0 | bluebird
bluebirdjs.com/docs/new-in-bluebird-3.html
Promiseライブラリであるbluebird 3.0リリース。
Cancellation APIのデザインを変更、 Promisificationの挙動を変更、Promise.config
で警告についてを設定可能になるなど
Dev.Opera — Opera 33 released
Opera 33リリース。
<link rel=preconnect>
、ES6 new.target
、spread operator、DOMException、CSS.escape
、HTTP Client Hintsなどのサポート
Release 1.20.0 · jquery/qunit
github.com/jquery/qunit/releases/tag/1.20.0
QUnit 1.20.0リリース
assert.raises()
の追加、Symbol
の比較をサポート、QUnit.module
のネストに対応するなど
node-browserify/changelog.markdown at master · substack/node-browserify
github.com/substack/node-browserify/blob/master/changelog.markdown#1200
Browserify 12.0.0リリース。
Node.js 4.xが対象となり、0.8はサポートから外れた。
Source Mapで日本語などが化けないように、シンボリックリンクされたモジュールは変換の対象外へと変更など
ESLint v1.8.0 released - ESLint - Pluggable JavaScript linter
eslint.org/blog/2015/10/eslint-v1.8.0-released/
ESLint v1.8.0リリース。
--cache
でキャッシュを作るファイル・ディレクトリを指定できるように
アーティクル
Vue.js: a (re)introduction
blog.evanyou.me/2015/10/25/vuejs-re-introduction/
Vue.js 1.0.0がリリースされたため、Vue.jsについて改めて紹介する記事
express実践入門
gist.github.com/mitsuruog/fc48397a8e80f051a145
expressの入門記事
基本的な使い方、ミドルウェア、プロジェクト構造、テンプレート、エラーハンドリング、ログの取り方などについて書かれている
Bitovi.com | DoneJS Release
blog.bitovi.com/donejs-release/
JavaScriptMVCの後継であるDoneJSリリース。
DoneJSの特徴について紹介されてる
Firebug & DevTools Integration ★ Mozilla Hacks – the Web developer blog
hacks.mozilla.org/2015/10/firebug-devtools-integration/
FirebugとFirefox開発者ツールについて。
Firebug 3ではFirefox開発者ツール上で動くものとなる。
HAR exportやServer側からconsole APIを利用できるChrome Loggerのプロトコルに対応するなど
React+Flux can do in just 137 lines what jQuery can do in 10 | A geek with a hat
swizec.com/blog/reactflux-can-do-in-just-137-lines-what-jquery-can-do-in-10/swizec/6740
メールを出すだけの機能を作るのにjQueryだと10行、React+Fluxだと137行となった。
行数で見ると無駄に見えるが、
Fluxはパターンであるため他の人が見た時に理解がしやすかったり、新しい機能を追加しやすいなどの違いがあるという話。
ES7: Async await
async/awaitについてのスクリーンキャスト。
PromiseでGitHub APIを叩くものを書いて、それをasync/awaitに書き換えながら紹介している
Easier Concurrent Programming in JavaScript with Async Functions
amasad.me/2015/10/31/javascript-async-functions-for-easier-concurrent-programming/
自動販売機的なプログラミングを題材とした、非同期処理とレースコンディションについて
ステートマシンベースのもの、Promiseキューとasync/awaitを使ったものをそれぞれ見ていく話
スライド、動画関係
Vue.js入門
www.slideshare.net/nazone/vuejs-54412741
Vue.jsについてのスライド
1.0での変更点や基本的な使い方について
サイト、サービス、ドキュメント
React Cheat Sheet
ReactのAPIから該当ドキュメントへ移動出来るチートシート
ソフトウェア、ツール、ライブラリ関係
codemix/fast.js
ArrayやStringなどのネイティブメソッドと似たような処理を実装し直してるライブラリ。
100%の互換性ではなくエッジケースへの対応などは落とすことで速度を稼いでいる
samccone/drool
ChromeDriver(via selenium)を使ってメモリリークが起きてないかを自動チェックするためのツール。
書籍関係
Why Isomorphic JavaScript? - O'Reilly Media
www.oreilly.com/web-platform/free/why-isomorphic-javascript.csp
Isomorphicについての薄い電子書籍
Learning JavaScript, 3rd Edition - O'Reilly Media
shop.oreilly.com/product/0636920035534.do
2016年1月発売
初めてのJavaScript 第3版