タグ

ブックマーク / yosuke-furukawa.hatenablog.com (6)

  • Node.js における Promise を使った例外処理 - from scratch

    さて、 Node.js のエラーハンドリングは難しいと言われてますが、 2016年現在、つまりNodeの v4 とか v6 が主流になり、 Promise が基的な処理として採用されている状況ではどうでしょうか。ちょっと考えてみます。 一応これの補足です。 qiita.com TL;DR 未だに難しい。ただし、 Promise で改善されている。async-await や zone まで来たらかなり楽になる。 あと、 unhandledRejection が uncaughtException よりも酷いことにならないので、大分マシになっている。 Node.js のエラーハンドリングの難しさ まず JavaScript には同期と非同期のエラーハンドリングのやり方があります。前者は所謂 try-catch による方法、後者は callback を使って第一引数で実現する方法や emit(

    Node.js における Promise を使った例外処理 - from scratch
  • Node.js v0.12 がリリースされました。 - from scratch

    Node.js v0.12 がリリースされました。 さてさて、さいきんずっとio.jsの話をしてましたが、この度Node.js v0.12がリリースされました。 これまでずっとNode.js v0.12でどう変わるのかを話してましたが、この際一度、何が変わったのかおさらいしておきましょう。 参考URL Node v0.12.0 (Stable) API changes between v0.10 and v0.12 · joyent/node Wiki · GitHub Stream3 Stream3については前に一度この記事で話しました。 Stream今昔物語 - from scratch Stream2にあったold modeの概念がなくなり、Stream1とStream2の両方のAPIに対応されAPIがシンプルになりました。 Stream中のバッファに出力するcorkとそのバッファか

    Node.js v0.12 がリリースされました。 - from scratch
  • git使ってて便利だった拡張3つ。 - from scratch

    gitを今の開発でガッツリ使うようになってすげー便利だと思った拡張を3つ紹介します。 もうね、これらなしではgit使えない。せっかくなので、導入方法と一緒に簡単な使い方も紹介します。 git-completion gitの補完ツール。 コマンドラインに現在のブランチ名が出る。だけじゃなくて、タブで補完までしてくれる。 導入方法 以下の方法でスクリプトをダウンロードしてきます。 $ mkdir -p /usr/local/git/contrib/completion/; cd /usr/local/git/contrib/completion/ $ curl https://raw.github.com/git/git/master/contrib/completion/git-completion.bash > git-completion.bash $ curl https://raw.

    masudaK
    masudaK 2014/06/22
  • 東京Node学園 12時限目を開催しました。 #tng12 - from scratch

    さてさて、先週水曜日に東京Node学園 12時限目を開催しました。 DeNA様からスシの供給(ハッシュタグを付けて再送) #tng12 pic.twitter.com/QC9bTX49a2— S治 えすじ(ティア108-F70b) (@esuji) April 24, 2014 こんな感じで寿司の話ばかり目立ってますが、かなり寿司で喜んでいただいたみたいで恐縮です。 Node-v0.12の新機能について by @jovi0608 Node-v0.12の新機能について from shigeki_ohtsu Node v0.12の新機能として、主にstream3の話とPromise/Object.observe/WeakSet, WeakMapの話でした。当はもっとたくさんの話をしてもらいたかったんですが、時間の都合で途中までになってしまいました。 実際、Node v0.12の機能がここまで

    東京Node学園 12時限目を開催しました。 #tng12 - from scratch
    masudaK
    masudaK 2014/05/10
  • LevelDB入門 (基本編) - from scratch

    さて、今回は比較的新しいデータストアであるLevelDBについてまとめてみました。 LevelDBは1年ほど前からNode.js界隈ではブームが来ていて、理由がよくわかっていなかったんですが、まとめている内に分かるかなと思ってまとめました。今回はNode.js無関係でLevelDBの基礎的なことだけ調査した結果をまとめてみました。 Node.jsで使ってみる話は後に回します。 LevelDBとは? key-value型のデータストアの一つです。 Googleの研究者である、Jeff DeanとSanjey Ghemawatが開発し、2011年に公表されました。C++で書かれており、多くのプログラミング言語でbindingsが書かれています。もちろん、JavaScript/Node.jsでも書かれています。 LevelDBGoogle のBigTableをベースにしたアーキテクチャを持

    LevelDB入門 (基本編) - from scratch
  • node.jsのnative addonを作るときはNANを使おう。 - from scratch

    さて、 Node.js v0.12 で変わることの一つとして、native addonを作る時に後方互換性を壊す変更が加えられています。 これにより、v0.10でnative addonを作っているモジュール達は、ほとんど動かなくなってしまうことが考えられます。 V8側がこの後方互換性を壊す変更をしているため、V8に追従しているNode.js側としてはこのbreaking changesを受けざるを得なかったんだと思います。*1 どれくらい変更されてるのかは node.js の native addon で Hello World モジュールを作る方法が載っているのでそれをまずは参考にします。 // これまでの v0.10ではこう書いてた。 #include <node.h> #include <v8.h> using namespace v8; Handle<Value> Method(

    node.jsのnative addonを作るときはNANを使おう。 - from scratch
  • 1