JSer.info #253 - What’s in ECMAScript 2016 (ES7)?という記事では、最近よく見るECMAScript 2016(ES7)というのは実際には何の事を言ってるのかについて書かれています。
TC39とは何か?、今後(ES7から)は機能ごとのProposalとなってること、どのように策定が進んでいくかといったことについて書かれています。
以前自分が書いたIntroduction | ECMAScriptとは何か?や記事と扱ってる内容はかなり近いです。
合わせてES6のエディタであるAllenさんのインタビューも読むと、今後どのようになっていくかが分かりやすいです。
上記の記事と同時期にES6 in Practiceというスライドが公開されています。
こちらのスライドでも同様に仕様策定のプロセスや現状のES6 Modulesの問題点についてなどが書かれています。
ES6 Modulesは構文とセマンティクスのみが仕様化されており、どのようにパスを解決してどう読み込むのかについて安定した仕様がありません。
そのため、BabelなどのTranspilerはある種の独自解釈をしてES6 Modulesを扱っています。
そこから生まれるCommonJSとの相互運用性の問題などについて問題提起がされています。
どれもES7 XXX言うな問題について触れています。
"ES7 Decorator"というようにProposal段階の機能が、まるでES7の機能であるような言い方は誤解を生むことがあります。
そのため、仕様として提案中の機能であることやStage 1の機能であることなどもう少し正確な言い回しをしようという話となっています。
Microsoft/nodejs-guidelinesというリポジトリでMicrosoftによるNode.js入門ガイドラインが公開されています。
Windows上でのNode.jsの利用方法について、npmの使い方、開発ツールやエディタなどについて書かれています。
お知らせ
ウェブ上で記事の方を見ると分かりますが、それぞれの記事に"▼関連記事の表示"というボタンが増えていると思います。
これは、その記事に関連する記事一覧をjser-statを使い表示しています。
取得から探索まで全部ブラウザ上で処理してるので、そこまで正確というものではないですが、気になる記事の関連記事を探してみると面白いかもしれません。
お知らせ2
以前お知らせしていたJSer.info 5周年イベントですが、2016年1月16日(土)午後あたりに開催する予定となりました。
まだ、何をするかが決まっていないので、興味がある人は以下のIssueにコメントを書いて頂けると参考にします。
ヘッドライン
babel/CHANGELOG.md at master · babel/babel
github.com/babel/babel/blob/master/CHANGELOG.md#614
Babel 6.1.4リリース。
babel/register
がbabel-register
というパッケージに分離、ブラウザ向けのbabel-browser
パッケージの追加、バグ修正など
アーティクル
What’s in ECMAScript 2016 (ES7)?
www.2ality.com/2015/11/tc39-process.html
ECMAScriptに関する用語解説やES.nextにおける策定プロセスの解説。
また“ES7 features”のような紹介は間違っているかもしれないという話や現状の策定状況についてなど
Haskell in ES6: Part 1- casual javascript
JavaScriptでHaskellの関数を実装していく話
Anatomy of a large Angular application — Medium
medium.com/@bojzi/anatomy-of-a-large-angular-application-f098e5e36994
大きなAngularJSアプリの構造について。
TypeScriptで書いてBrowserifyでビルド、コードの構造のレイヤー分けやデータフローなどの設計について
Microsoft/nodejs-guidelines
github.com/Microsoft/nodejs-guidelines
Windows向けのNode.js入門的なガイドライン
KeitaMoromizato/js-study-front-test
github.com/KeitaMoromizato/js-study-front-test
Node.jsでのテストとKarmaなどを使ったブラウザテストの違いや仕組みについて。
実際に試せるサンプルと共に紹介されているので分かりやすい。
Kinoma now shipping JavaScript 6th Edition (ES6) support | Kinoma Notes - Blog of Kinoma team
blog.kinoma.com/2015/10/es6_support/
KinomaのIoTデバイス向けのJavaScriptエンジンXS6がES6 Compat tableで96%の実装率を持っているという話
スライド、動画関係
ES6 in Practice
www.slideshare.net/teppeis/es6-in-practice
ECMAScriptの策定プロセスやES6 Modulesについてのスライド。
ES6 Modulesのメリット、現状の問題について書かれている。
現状では構文とセマンティクスのみが決定している。
読み込み方などについて、BabelなどのTranspilerは独自の解釈があることについての問題提起
BlinkOn 5 One Pager - Google ドキュメント
docs.google.com/document/d/1BtfsTBVt7KZekH69dCXK0nOCn-W_kkv23lqjqTJ_sYY/edit#heading=h.rx77pwie3tnj
BlinkOn 5のスライドと動画まとめ
Porting C/C++ to Web - Google スライド
docs.google.com/presentation/d/1liKVavDBbcg0w8izutvVopCWKGu5M7EJPvst1JlpN_s/present#slide=id.p
ブラウザのプラグイン(ネイティブコード)とJavaScriptについてのスライド。
C/C++をemscriptenで変換する方法やasm.js、wasmについての解説。
またそれぞれの現段階での実行速度について
- Web Assembly BlinkOn 5 - Google スライド
- ハイパフォーマンスなWebを実現するasm.js/WebAssemblyとは――Mozillaのルーク・ワグナー氏に聞く:CodeZine(コードジン)
鉄腕アニメーション
people.mozilla.org/~bbirtles/pres/201511-astro-animation/#/title-screen
Web Animationについてのスライド
Schedule - View Source
ViewSource Conferenceの動画とスライドまとめ
Jeff Morrison - Flow or how I learned to stop worrying and typecheck my React code - YouTube
www.youtube.com/watch?v=9U4_hlnaFEE
ReactとFlowTypeを使った開発についての動画
ソフトウェア、ツール、ライブラリ関係
jaredreich/notie.js
github.com/jaredreich/notie.js
依存がないNotification UIライブラリ。
画面上部に被さる形の通知UI
danvk/source-map-explorer · GitHub
github.com/danvk/source-map-explorer
Source Mapから利用情報を可視化してファイルサイズやサイズの割合などを調べるツール
mweststrate/mobservable
github.com/mweststrate/mobservable
配列やオブジェクトなどをラップして変更監視が出来るライブラリ。
getterとsetterを使い変更を監視するためプロパティの代入による変更を通知出来る
書籍関係
Client-Side Data Storage - O'Reilly Media
shop.oreilly.com/product/0636920043676.do
2016年1月発売
クライアントサイドのストレージについての書籍