Fork me on GitHub

2014-09-23のJS: npm 2.0.0、iOS8 WKWebView、Node.jsとPromise

Edit on GitHub 編集履歴を見る

JSer.info #193 - Node.jsのパッケージ管理ツールであるnpm 2.0.0がリリースされました。

npm run-scriptに引数を渡せるようになったことや、npmのリリースプロセスがドキュメント化されたこと、Scoped packagesという機能が追加された点等結構色々変更があります。

Scoped packagesは企業利用などで使うときにPublicではなく社内でモジュールを管理するためのスコープ機能を提供する仕組みです。

npm 2.0.0はnpmからインストールできます。

npm install -g npm 

詳細は以下の記事に書かれています。


iOS8がリリースされ内蔵されているSafariのアップデートと新しいWebViewが入りました。

以下の記事ではどのような機能が入ったかや、今までのWebView(UIWebView)と新しいWebView(WKWebView)のパフォーマンスや制限の違い等について書かれています。

まだバグ等も多いですが、新しいWKWebViewでは今までのWebViewのような制限がないので、アプリ内でもSafariと同じように動くものができるかもしれません。


Node.jsエンジニアなら2014年内に知っておきたいPromise入門 | Tokyo Otaku Mode Tech Blogという記事では、Promiseの基本的な使い方やNode.jsでよく使われているasync.jsモジュールからの切り替えについて詳しく書かれています。

まだNode.jsのstableであるv0.10にはネイティブでPromiseが入っていないため、Bluebirdを使った例で書かれています。
次期安定版 v0.12ではネイティブでPromiseが入ることや、Node.js以外でもPromiseを使ったAPIは増えていくため、Promiseについて分かりやすくまとまっているため読んでみるといいかと思います。


ヘッドライン


The npm Blog — npm@2.0.0

blog.npmjs.org/post/98131109725/npm-2-0-0

npm ReleaseNote

npm 2.0.0リリース。

リリースプロセスのドキュメント化、semverの挙動の変更、企業など社内モジュールの管理等に使えるscopeという機能を追加、npm runが引数を取れるようになるなど


WinJS Everywhere

blogs.windows.com/buildingapps/2014/09/17/winjs-everywhere/

JavaScript library ReleaseNote

WinJS 3.0リリース。

クロスプラットフォームのデザイン互換性周りの修正が中心


Node v0.10.32 (Stable)

blog.nodejs.org/2014/09/16/node-v0-10-32-stable/

node.js ReleaseNote

Node v0.10.32 リリース。


React v0.11.2 | React

facebook.github.io/react/blog/2014/09/16/react-v0.11.2.html

facebook JavaScript DOM library ReleaseNote

React v0.11.2リリース。

dialogとpicture要素のサポート、flowの型チェックツール用のアノテーションを取り除くフラグをjsxコマンドに追加


Polymer 0.4.1 Released!

blog.polymer-project.org/releases/2014/09/18/release-0.4.1/

JavaScript WebComponents library ReleaseNote

Polymer 0.4.1リリース。

WAI-ARIAについてのcore-a11y-keys要素を追加、iOS8のバグに対するworkaroundを追加


アーティクル


Updates to our platform roadmap - IEBlog - Site Home - MSDN Blogs

blogs.msdn.com/b/ie/archive/2014/09/18/updates-to-our-platform-roadmap.aspx

IE ECMAScript JavaScript

IEの開発中、検討中の機能について


iOS 8 and iPhone 6 for web developers and designers: next evolution for Safari and native webapps | Breaking the Mobile Web

www.mobilexweb.com/blog/safari-ios8-iphone6-web-developers-designers

ios safari まとめ JavaScript CSS

iPhone6とiPhone6 plusの仕様やviewportまわりの違いについて。
また、iOS8 SafariでサポートされたAPIやCSSサポート、minimal-uiの廃止、Safariの追加機能、UIWebViewとWKWebVIewの違い、バグについて詳しくまとめられている


Apple Shows Love for HTML5 with iOS 8 | Blog | Sencha

www.sencha.com/blog/apple-shows-love-for-html5-with-ios-8

ios safari まとめ performance

iOS8のSafariでサポートされた新しい機能について。

また今までのWebViewと新しく追加されたWebKitの機能がちゃんと使えるWKWebViewのパフォーマンスの比較。

既知のバグについても書かれてる


Node.jsエンジニアなら2014年内に知っておきたいPromise入門 | Tokyo Otaku Mode Tech Blog

blog.otakumode.com/2014/09/17/nodejs-promise/

JavaScript node.js Promises tutorial

JavaScript Promiseの基本的な使い方、async.jsを使っていた場合にそれをPromiseに書き換える実装方法について。

Promiseについてよくまとまってるチュートリアル


JavaScript Promiseを使うウェブの仕様を調べてみた | Web Scratch

efcl.info/2014/09/16/promises-spec-ref-list/

JavaScript Promises spec 検索

Promiseの仕様を前提にしてる仕様の一覧。また、仕様をどうやって調べるかについて。W3CやWHATWGの仕様をまとめてダウンロードして検索する方法について書かれてる


Node.js Best Practices

blog.risingstack.com/node-js-best-practices/

node.js 開発環境

Node.jsにおけるコーディングルール的なのとエラーについて。

callbackのerrorはチェックする事と早期return、Operational errorとProgrammer errorsの違いと対処、npmを使ったWorkflowについて書かれてる


Traceur, Gulp, Browserify and ES6 - Matt Greer

www.mattgreer.org/articles/traceur-gulp-browserify-es6/

JavaScript gulp browserify

Gulp+TraceurでES6のコードを使う方法と、Browserify + es6ifyでTraceurを使う方法について。


透過PNGをSVGを利用して軽くするテクニック - Weblog - Hail2u.net

hail2u.net/blog/webdesign/with-svg.html

SVG 画像

JPG画像とマスクとなるPNG画像をSVGのmask要素によって合わせる事で擬似アルファチャンネルをやる事について。

単体の透過PNGよりファイルサイズが軽量に出来る話。

http://blog.jackadam.net/2010/alpha-jpegs/


CSSセレクターマッチングのコスト - Unreviewed

takenspc.hatenablog.com/entry/2014/09/16/152157

CSS webkit

CSSセレクタは要素とセレクタの数だけ判定を行う回数が増えるため、そのコストを減らすアプローチについて。

また、CSSセレクタのマッチ判定の手順について結合子別に詳しく解説してる。


WebStorm 9 EAP, 138.2406: spy-js code completion, CSS3 enhancements, Scratch files and… JSX | JetBrains WebStorm Blog

blog.jetbrains.com/webstorm/2014/09/webstorm-9-eap-138-2406/

WebStorm ReleaseNote node.js

spy.jsを実行した結果を使ったコード補完が行えるように。また、今までは引数や返り値のみだったが、式にも対応した。

emacsみたいなScratchファイルの機能を追加、indexingの範囲をデフォルトではnode_modulesまでに限定、JSX(React)のサポート改善等


WebIDE、ストレージインスペクタ、jQuery イベント、iframe 切り替えなど – Firefox 開発ツール エピソード 34 | Mozilla Developer Street (modest)

dev.mozilla.jp/2014/09/webide-storage-inspector-jquery-events-iframe-switcher-more-firefox-developer-tools-episode-34/

firefox debug Tools

Firefox 34 で追加されてる開発ツールの機能について


スライド、動画関係


Slide decks of JSConf 2014

gist.github.com/nikcorg/1fe60d2da6e22653806c

JavaScript event スライド

JSConf.eu 2014のスライドまとめ

http://2014.jsconf.eu/

https://www.youtube.com/user/jsconfeu/


A Quick Introduction to BrowserSync - Tuts+ Web Design Tutorial

webdesign.tutsplus.com/tutorials/a-quick-introduction-to-browsersync--cms-22135

browser 動画 Tools

BrowserSyncについて紹介するスクリーンキャスト


Syncing Async

www.slideshare.net/fitc_slideshare/syncingasync

JavaScript Promises スライド

非同期処理とPromiseについてのスライド。

コールバックのネストの問題、PromiseやGeneratorで考える非同期で逐次的な処理について。


CORS для тестирования и для жизни. Константин Якушев. MoscowJS 14

www.slideshare.net/moscowjs/cors-moscowjs-14

XHR スライド

CORSのHTTPヘッダの設定と動作について分かりやすくまとめられてる。

指定する値の書き方についてが分かりやすい

CORS in Actionの人。


Componentization for Reality

ja.slideshare.net/ygoto3q/componentization-for-reality

JavaScript スライド

コンポーネントベースで考えるウェブ開発についてのスライド。

ディレクトリ単位だとバラけてしまうのでコンポーネント単位でまとめる。

ジェネレータ、webpack、insertCSS、Angular


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


wingify/dom-comparator

github.com/wingify/dom-comparator

JavaScript DOM testing library

2つのDOM文字列を比較した結果を取得するライブラリ。

CSSやNodeにどういう操作が行われたかの情報が取れる


ConradIrwin/async-profile

github.com/ConradIrwin/async-profile

JavaScript performance library node.js

Node.jsで非同期処理のプロファイルを取るためのライブラリ。

callback待ちにどれくらいの時間を使ってるかの表示、非同期処理の結果をネスト表示も出来る


matthew-andrews/denodeify

github.com/matthew-andrews/denodeify/

JavaScript Promises library

Node.jsスタイルで書かれた関数(error, response)をPromiseラッパにするライブラリ


deloreanjs/delorean

github.com/deloreanjs/delorean

JavaScript library

Flux patternの実装ライブラリ

dispatcherとstore、ComponentとしてReactやFlight、Ractiveなどと組み合わせて使うことができる


fat/bean

github.com/fat/bean

JavaScript library event

JavaScriptのDOMイベントを簡単に扱える小さなライブラリ。

on/off/fire/one/cloneが用意されている。cloneではNodeと共にeventをコピーすることができる


inikulin/dmn

github.com/inikulin/dmn

npm node.js console Tools

プロジェクトで使ってるファイルから.npmignoreを生成するコマンドラインツール。

また、インストール済みのnode_modulesから不要なファイルを削除する事も出来る。


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