Fork me on GitHub

2015-11-16のJS: ECMAScript 2016(ES7)って何、WindowsでのNode.js入門

Edit on GitHub 編集履歴を見る

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 ReleaseNote

Babel 6.1.4リリース。
babel/registerbabel-registerというパッケージに分離、ブラウザ向けのbabel-browserパッケージの追加、バグ修正など


アーティクル


What’s in ECMAScript 2016 (ES7)?

www.2ality.com/2015/11/tc39-process.html

ECMAScript spec

ECMAScriptに関する用語解説やES.nextにおける策定プロセスの解説。
また“ES7 features”のような紹介は間違っているかもしれないという話や現状の策定状況についてなど


Haskell in ES6: Part 1- casual javascript

casualjavascript.com/javascript/es6/haskell/native/implementation/2015/11/12/haskell-in-es6-part-1.html

JavaScript 関数型プログラミング

JavaScriptでHaskellの関数を実装していく話


Anatomy of a large Angular application — Medium

medium.com/@bojzi/anatomy-of-a-large-angular-application-f098e5e36994

AngularJS JavaScript 設計

大きなAngularJSアプリの構造について。
TypeScriptで書いてBrowserifyでビルド、コードの構造のレイヤー分けやデータフローなどの設計について


Microsoft/nodejs-guidelines

github.com/Microsoft/nodejs-guidelines

MS node.js windows tutorial

Windows向けのNode.js入門的なガイドライン


KeitaMoromizato/js-study-front-test

github.com/KeitaMoromizato/js-study-front-test

JavaScript testing tutorial

Node.jsでのテストとKarmaなどを使ったブラウザテストの違いや仕組みについて。
実際に試せるサンプルと共に紹介されているので分かりやすい。


Kinoma now shipping JavaScript 6th Edition (ES6) support | Kinoma Notes - Blog of Kinoma team

blog.kinoma.com/2015/10/es6_support/

JavaScript ECMAScript

KinomaのIoTデバイス向けのJavaScriptエンジンXS6がES6 Compat tableで96%の実装率を持っているという話


スライド、動画関係


ES6 in Practice

www.slideshare.net/teppeis/es6-in-practice

ECMAScript スライド

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

blink イベント まとめ

BlinkOn 5のスライドと動画まとめ


Porting C/C++ to Web - Google スライド

docs.google.com/presentation/d/1liKVavDBbcg0w8izutvVopCWKGu5M7EJPvst1JlpN_s/present#slide=id.p

JavaScript C言語 C++ スライド

ブラウザのプラグイン(ネイティブコード)とJavaScriptについてのスライド。
C/C++をemscriptenで変換する方法やasm.js、wasmについての解説。
またそれぞれの現段階での実行速度について


鉄腕アニメーション

people.mozilla.org/~bbirtles/pres/201511-astro-animation/#/title-screen

firefox animation スライド

Web Animationについてのスライド


Schedule - View Source

viewsourceconf.org/schedule/

browser イベント スライド まとめ

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 動画

ReactとFlowTypeを使った開発についての動画


ソフトウェア、ツール、ライブラリ関係


jaredreich/notie.js

github.com/jaredreich/notie.js

JavaScript UI library

依存がないNotification UIライブラリ。
画面上部に被さる形の通知UI


danvk/source-map-explorer · GitHub

github.com/danvk/source-map-explorer

sourcemap debug

Source Mapから利用情報を可視化してファイルサイズやサイズの割合などを調べるツール


mweststrate/mobservable

github.com/mweststrate/mobservable

JavaScript library

配列やオブジェクトなどをラップして変更監視が出来るライブラリ。
getterとsetterを使い変更を監視するためプロパティの代入による変更を通知出来る


書籍関係


Client-Side Data Storage - O'Reilly Media

shop.oreilly.com/product/0636920043676.do

browser JavaScript book

2016年1月発売
クライアントサイドのストレージについての書籍


この記事へ修正リクエストをする
記事を紹介する