JSer.info #169 - MSによるJavaScriptのスーパーセット実装であるTypeScript 1.0がリリースされました。
TypeScriptのドキュメントやバグレポートのリンク等はTypeScriptがついに1.0になった話にまとめられています。
JavaScriptのLintツールであるJSHint 2.5.0がリリースされました。
JSHint 3 plansで書かれていたようにスタイル関係のLintルールが一部削除されています。
この辺を補完したい場合はJSCSを利用することが推奨されています。
@ChiperSoft JSCS
— JSHint (@JSHint) April 3, 2014
この辺のLintツールの流れについては以前紹介したThe state of JavaScript Linting - English versionにも書かれているので、こちらも見てみるといいです。
Debugging Asynchronous JavaScript with Chrome DevTools - HTML5 Rocksという記事ではChrome 35あたり(現時点のCanary)に入ってるChrome DevToolsの機能について紹介されています。
PromisesやObject.observe
といった機能がChromeに入ってくる関係もあってか、
DevToolsでもAsync
のデバッグがかなり強化されています。
具体的には、非同期処理のコードでもスタックトレースがかなり追えるようになった事や、Watch機能、スタックトレースで選択したスコープの情報を見られるようになる等、非同期処理に関するデバッグ機能がかなり充実しています。
JavaScriptの言語機能やDOM APIでも非同期処理に触れる機会は増えてきているので、こういったデバッグツールのサポートは大事になってくると思います。
ヘッドライン
Announcing TypeScript 1.0 - TypeScript - Site Home - MSDN Blogs
TypeScript 1.0リリース。
Pull Request等の直接的なContributionsの受け入れやドキュメントの改善等が行われている。
Ember.js - Ember 1.5.0 and 1.6 Beta Released
Ember 1.5.0リリース
Release JSHint 2.5.0 · jshint/jshint
JSHint 2.5.0リリース。
インデントスタイル関係のLintの削除(JSCSへと移行を推奨)、template strings、--filename
のCLIオプションを追加、ディレクトリごとにオプションを変更する設定を追加
harmony:specification_drafts [ES Wiki]
ES6 Draft Rev 23リリース。
アーティクル
power-assertの使い方 Node.js編 | Web scratch
シンプルなアサーションでも分かりやすくテスト出来るツールであるpower-assertについて。
Node.jsでの導入方法、Grunt/gulpなどからの利用方法等
Debugging Asynchronous JavaScript with Chrome DevTools - HTML5 Rocks
Chrome 35でsetTimeout, XHR, promisesのような非同期処理のスタックトレースが取れるようになった。
またコールスタックで特定のものを選択した時にそのスコープでの情報を取れるように、Promise chainのデバッグ、名前付き関数式にすることのメリット等についても書かれている
TypeScriptとは? Visual Studioを使って開発してみよう - Build Insider
Visual Studioを使ったTypeScriptチュートリアルの連載
TypeScriptの型定義ファイルを共有しよう! - Qiita
TypeScriptの型定義ファイルの利用方法と自分で定義したものをpull requestする手順について書かれてる。
JavaScriptでもWebStorm等から補完候補の定義として利用できる
IE11 の新機能 – エンタープライズ モード | Hebikuzure’s Tech Memo
IE11のエンタープライズモードについて。
"作成したリストに含まれるサイトやユーザーが指定したサイトを Internet Explorer 8 のエミュレーション モードで表示/動作させる機能"
Practical Workflows for ES6 Modules
ES6 moduleとmodule loaderについて。
またES6 moduleをCJS/AMDへ変換して利用する方法や動的にロードするSystemJS loader等について
SETT April 2014 - ES6: Jump in, the water is warm!
ES6でTodoアプリを作るチュートリアル。
Optimization killers · petkaantonov/bluebird Wiki
V8の最適化ができない事例についてよくまとめられている。
最適化ができるか調べる方法、try-catchなど関数内にあると最適化をしなくなる式、arguments、switch-case、hash tableとしてのオブジェクトについて等
モダンブラウザのストレージ容量と調査方法まとめ - HTML5 Rocks
WebStorage(LocalStorage/SessionStorage)、WebSQL、Indexed DB、FileSystem API、App Cacheの容量と調査方法にまとまっている。
また、この辺のローカルストレージの違いをあまり意識せずに使える非同期APIを提供してくれるlocalForageも最近話題な感じがするので一緒に見ておくといいかもしれません。(依存するストレージの実装がそれぞれdrivers
と分けられて実装されてるのも見ていると面白いです)
Server-Sent Events: The simplest realtime browser spec
Server-Sent Eventsについて。
クライアントとサーバ(node)での実装について
サイトに適したリソース配置 – レンダリング優先のグッド・プラクティス | ゆっくりと…
script要素の場所とasync
とdefer
属性について。
style要素、img要素とDOM構築の関係、</body>
直前での読み込みとFOUC。
読み込みを実験出来るサイトについて
Grid 日本語版
"レスポンシブデザイン入門"
CSSのボックスモデル、コンテナ、カラム、clearfix、flloatについて書かれてる
Async
JavaScriptの非同期処理のパターンの実装ライブラリと紹介。
EventEmitter、Promises、FSM、Doors、Emitter queueの実装であるライブラリと概要が書かれてる
スライド、動画関係
Browser Support in jQuery 1.12 and Beyond | Official jQuery Blog
jQuery 1.12がIE6,7をサポートした最後のバージョンになり。1.13からはIE8未満は非サポート。
サポートの定義についても書かれてる
サイト、サービス
Handbook - Welcome to TypeScript
TypeScriptハンドブック。
言語機能についてまとまってる
Internet Explorer Web Platform Status and Roadmap - status.modern.IE
IEのWeb Platform APIの対応ステータス、ロードマップが公開されているサイト
ソフトウェア、ツール、ライブラリ関係
jwagner/smartcrop.js
画像から注目する部分を中心とした切り抜きを行うアルゴリズムを持ってるライブラリ
seen.js
3D空間をSVGかCanvasを使って描画出来るライブラリ
winjs/winjs
WinJSがGithubで公開された
http://try.buildwinjs.com/default.aspx
から試すことが出来る
書籍関係
TypeScript入門/川俣晶 本・コミック : オンライン書店e-hon
2014年5月30日発売
TypeScript本
Automate with Grunt - O’Reilly Media
2014年5月発売
Gruntについての書籍
O’Reilly Japan - AngularJSアプリケーション開発ガイド
2014年04月18日 発売
AngularJS本