Fork me on GitHub

2016-02-24のJS: TypeScript 1.8、Reactのバージョニング、Draft.js

Edit on GitHub 編集履歴を見る

JSer.info #267 - TypeScript 1.8が正式リリースされました。

JavaScriptファイルをTypeScriptプロジェクトに含めやすくする--allowJsオプションやTypeScriptファイルをそのまま1つのJavaScriptにbundleする機能が追加されています。

また、String Literal Typesの対応やフローコントロールを解析し到達できていないコードの検知などの機能も追加されています。


New Versioning Scheme | ReactではReactの次期バージョンはv15.0.0となることについて書かれています。

いわゆるSemantic Versioningの1.0.0以降の方式でアップデートしていくという方針について書かれています。

また、Reactに依存したライブラリにおけるReactバージョンに指定方法についても書かれているので、
React Componentのライブラリを作っている人は参照するといいかもしれません。

react versioning


FacebookのNoteやMessengerで使われているReactベースのリッチテキストエディタフレームワークであるDraft.jsが公開されています。

Reactでコンポーネントを作る際に、テキストエディタのような仕組みは色々悩みどころが出てくるので、
その辺の仕組みを見てみると面白いかもしれません。


ヘッドライン


Node v5.7.0 (Stable) | Node.js

nodejs.org/en/blog/release/v5.7.0/

node.js ReleaseNote

Node.js 5.7.0リリース。
Buffer#fillencoding引数をサポート、spawn()shellオプションをサポートするなど


jQuery 1.12.1 and 2.2.1 Released | Official jQuery Blog

blog.jquery.com/2016/02/22/jquery-1-12-1-and-2-2-1-released/

jQuery ReleaseNote

jQuery 1.12.1と2.2.1リリース
.position()のバグを修正


Announcing TypeScript 1.8 | TypeScript

blogs.msdn.microsoft.com/typescript/2016/02/22/announcing-typescript-1-8-2/

TypeScript ReleaseNote

TypeScript 1.8リリース。
String Literal Typesのサポート、コントロールフローを解析しUnreachableなコードを検出するなど


ESLint v2.2.0 released - ESLint - Pluggable JavaScript linter

eslint.org/blog/2016/02/eslint-v2.2.0-released

JavaScript Tools ReleaseNote

ESLint 2.2.0リリース
// eslint-disable-next-lineのサポート


Release ES2016 Draft 2016-02-15 · tc39/ecma262

github.com/tc39/ecma262/releases/tag/es2016-draft-20160215

ECMAScript ReleaseNote

ES2016 Draft 2016-02-15リリース。
exponentiation operatorの追加、Object.prototypeはimmutableに、Unicode 8.0へアップデート、[[Enumerate]]Reflect.enumerateの削除など


Release v2.10.0 · jscs-dev/node-jscs

github.com/jscs-dev/node-jscs/releases/tag/v2.10.0

JavaScript ReleaseNote

JSCS 2.10.0リリース。
disallowSpacesInsideTemplateStringPlaceholdersrequireImportsAlphabetizedの追加


New Versioning Scheme | React

facebook.github.io/react/blog/2016/02/19/new-versioning-scheme.html

React

Reactの次期バージョンは15.0.0としてリリース予定。
Semver的なバージョニングに合わせるため。また、React ComponentにおけるReactの依存バージョンの書き方についても解説されてる


アーティクル


Why using `_.chain` is a mistake. — Making Internets — Medium

medium.com/making-internets/why-using-chain-is-a-mistake-9bc1f80d51ba

JavaScript library

lodashの_.chaninは拡張が難しい、lodashに含めることでbundleサイズが大きいという問題がある。
4.1からlodash/fpにfunctionalな関数が用意されており、同等の表現はより小さなbundleサイズで実現できるという話


DevTools へのセキュリティ パネル導入について - Google Developers Japan

googledevjp.blogspot.com/2016/02/draft-devtools.html

Chrome debug

Chrome開発者ツールに"Security"パネルが追加された。
TLS証明書、Mixed Contentなどを確認出来る


JavaScript Safe Navigation

gist.github.com/dakaraphi/6a87168db66fd8f032d2

JavaScript proxy

ProxyとSymbolを使って ?. 的なプロパティチェインを繋げるように書く実装。
safe(o).isNull.next.next.$ のように書ける


Aerotwist - The Hack is Back!

aerotwist.com/blog/the-hack-is-back/

JavaScript canvas

createImageBitmapとWebWorkerを使うことで、画像のデコード処理を別スレッドで行う方法について


Delivering Octicons with SVG

github.com/blog/2112-delivering-octicons-with-svg

fonts SVG

GitHubはアイコンフォントをやめて、SVGを使ったアイコンを利用するように切り替えた。
SVGをアイコンとして埋め込む方法、パフォーマンス、欠点や落とし穴について


スライド、動画関係


talk/webtalk_2016-02-20.pdf at master · momdo/talk

github.com/momdo/talk/blob/master/webtalk_2016-02-20.pdf

W3C WHATWG spec スライド

ウェブの仕様は継続的に更新されているという話。
WHATWG HTMLから見るW3C HTML、CSS SnapshotはCSS WGが安定していると認識したものを記述しているという話について


Google と Udacity による JavaScript Promise オンライン コースのご紹介 - Google Developers Japan

googledevjp.blogspot.com/2016/02/google-udacity-javascript-promise.html

JavaScript Promises

Promiseに関するオンラインコース


サイト、サービス、ドキュメント


npm Discover · see what everyone else is using

www.npmdiscover.com/

npm library webservice 検索

特定のnpmパッケージとよく一緒に使われているものを一覧表示してくれるサイト。
reactと一緒に使われているツールやライブラリが何か」という事を検索できる。


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


trueadm/inferno: An extremely fast, isomorphic JavaScript library for building modern user interfaces

github.com/trueadm/inferno

JavaScript VirtualDOM React library

ReactライクなVirtual DOMライブラリ。
テンプレートからVirtual DOM Elementを作る段階で、静的/動的なのかを調べている。
これにより実行時にはdiff/patchを行わないフラグメントを作ることでパフォーマンスの向上を狙っている。


ziyasal/scientist.js: A JavaScript interpretation of the Ruby library Scientist, a library for carefully refactoring critical paths.

github.com/ziyasal/scientist.js

JavaScript testing

リファクタリングを補助するRubyライブラリであるscienceのJavaScript版


dthree/cash: Cross-platform Linux commands in pure ES6

github.com/dthree/cash

JavaScript node.js library Tools

JavaScriptで書かれたLinuxコマンド集。
クロスプラットフォームで動くmvcpといった単体のコマンドとしてもインストールできる


Draft.js | Rich Text Editor Framework for React

facebook.github.io/draft-js/

React editor facebook library

Facebook Notesやmessengerで使われてるReactのリッチエディタフレームワーク。
immutable-jsを利用している


ProjectSeptemberInc/gl-react: OpenGL / WebGL bindings for React to implement complex effects over images and content, in the descriptive VDOM paradigm

github.com/ProjectSeptemberInc/gl-react

WebGL React library

OpenGL / WebGLを使ったReact Componentライブラリ。


書籍関係


Happy Learn JavaScript Tutorial

www.happylearnjavascripttutorial.com/

JavaScript book

JavaScript楽しく学ぶ目的の書籍


JavaScript-mancy by Jaime González García [PDF/iPad/Kindle]

leanpub.com/javascriptmancy-mastering-arcane-art-of-writing-awesome-javascript-for-csharp-developers

JavaScript book

C#開発者向けJavaScript本


この記事へ修正リクエストをする
JSer.info Slackに参加する