タグ

node.jsに関するkjirouuのブックマーク (17)

  • fs.exists()がdeprecatedになった理由 / 学ぶ、考える、書き出す。

    wearefractal/vinyl-fs の dest(folder, [opt]) が出力先のディレクトリが無い場合でも、そのディレクトリを作ってくれないということで、自分で「ディレクトリの有無を確認して、無い場合はディレクトリを作る」という処理を作る必要がでてきました。 そこで File System Node.js v4.1.0 Manual & Documentation を見て、ディレクトリの有無を確認するのに使えそうな fs.exists() という API を見つけたのですが、「Deprecated: Use fs.stat or fs.access instead.」ということで、他の API を使うように書かれていました。 「ファイルの有無を確認する API が deprecated になるのはなぜ?」と思い、これは何かあると思って少し調べてみたのでまとめておこうと思い

    fs.exists()がdeprecatedになった理由 / 学ぶ、考える、書き出す。
  • nodejs how to read keystrokes from stdin

    Is it possible to listen for incoming keystrokes in a running nodejs script? If I use process.openStdin() and listen to its 'data' event then the input is buffered until the next newline, like so: // stdin_test.js var stdin = process.openStdin(); stdin.on('data', function(chunk) { console.log("Got chunk: " + chunk); }); Running this, I get: $ node stdin_test.js <-- type '1' <-- type '2' <-- hit en

    nodejs how to read keystrokes from stdin
    kjirouu
    kjirouu 2015/09/07
    ライブラリを使わないキー入力処理のサンプルがある、また stdin.setRawMode や stdin.resume の解説も有り
  • [node]AWS LambdaをJavascriptから呼び出す | DevelopersIO

    node.jsのプログラムから呼んでみる 最近AWS Lambdaにさわりはじめました。各所で有用な解説や使ってみた記事もあり、弊社ブログでもどんどん紹介されてます。 どっかの記事とかぶってる可能性は大いにありますが、今回はローカルのjavascriptからAWS Lambda関数を呼び出してみます。 ※なお、AWS Lambdaについての環境構築や基的なことはここで確認してみてください。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.9.4 node : v0.10.29 aws-sdkをnpmでインストールしておきましょう。 % mkdir aws-lambda && cd aws-lambda % npm install aws-sdk サンプル実装 1.AWSコンソールで関数登録 まずは、AWSコンソールでAWS Lambda関数を登録し

    [node]AWS LambdaをJavascriptから呼び出す | DevelopersIO
  • おしゃれCLIを作るためのnpmモジュール達 - from scratch

    この記事は、 Node.js Advent Calendar 2013 の14日目です。 Yeoman とか tig とか触ってるとおしゃれなコマンドラインインターフェースだな〜、と思うことはありませんか。 ぼくもそんなおしゃれCLIを作ってモテたい!! そんなおしゃれCLIを作るためのnpmモジュールについて調べました。 terminal-menu substackさんが作った、stream-adventureの中で使われてるモジュール。 (趣旨は違うけど、stream-adventureはNode.jsのstreamの概念を学ぶのに非常に良い学習ツールです。ちなみに npm install -g stream-adventureでインストールできます。) terminal-menuは超シンプルなモジュールで、基的な機能としては、上下キー、vimバインドのjkキーでメニューを選択できる

    おしゃれCLIを作るためのnpmモジュール達 - from scratch
  • implement: default pattern by azu · Pull Request #9 · power-assert-js/intelli-espower-loader

    kjirouu
    kjirouu 2015/04/22
    0.12でfs.existsが非推奨なのでどう書けばいいか問題、“v0.10とかだとaccessSyncもないから今のところはexsitsSyncでいいような気がしてきました”
  • gulp と browserify と vinyl の話 - <body>

    browserify の API が変わったので、この記事のコードのままでは動きません! gulp で browserify しようとしたんだけど、 色々ハマったので、 ひとまずまとめておきたい。 登場人物 gulp ちゃん フロントエンドのビルドエンジン。 grunt を馬鹿にしてる。 browserify ちゃん CommonJS スタイルの require をフロントエンドでも使えるようにする npm モジュール。 調子に乗ってるけど webpack がきになる。 vinyl ちゃん npm 全般で使うオブジェクトの名前。モナドを感じる。 俺がさっき知った。 gulp の仕組み そもそも gulp って、確かに grunt より短く書けるけど、 具体的になにしてるのかよくわかんねーよ! って思ったので、 まず、この短いコードから考えていきたい。 var gulp = require(

    gulp と browserify と vinyl の話 - <body>
    kjirouu
    kjirouu 2015/03/02
    vinyl-transform の説明を探してた。 vinyl = https://github.com/wearefractal/vinyl
  • Stream今昔物語 - from scratch

    この記事は Node.js Advent Calendar 2014 の 1日目の記事です。 こんにちは、代表です。 Stream大好きなみんなのためにStreamの過去と現在、そして未来についてお話するよ!! Streamを何故使うのかっていう話と歴史的な話をします!! Streamとは データの流れを扱うための抽象化されたモジュールです。もうみんな耳にタコかもしれませんが、Streamを使うとデータの流れを綺麗に書くことができます。ちなみに今に始まった概念ではなくて、C++にもC#にもStreamがありますし、Java8の新機能にもStreamがあります。「データを扱うときの抽象化された流れ」を指す広義のStreamという意味では今日の言語ではだいたい実装されています。 Node.jsでは、以下のリンクが参考になるでしょう。 Node.js の Stream API で「データの流れ」

    Stream今昔物語 - from scratch
    kjirouu
    kjirouu 2014/12/01
    throough2とpipeの単純な使い方, Stream1から歴史的経緯を追ってのStream2の説明(コード付き)
  • はじめてのNode.js:Node.js内でバイナリデータを扱うための「Buffer」クラス | OSDN Magazine

    記事は、3月13日にソフトバンク クリエイティブより発売された書籍「はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-」から、「第7章 Node.jsアプリケーションのデバッグ方法」の一部を抜き出し再構成したものです。 出版社ページ / Amazon.co.jpの商品ページ 大型: 384ページ、価格:3,045円(税込)、ISBN: 978-4797370904 文字列(String)とBuffer Node.jsでは、文字列とバイナリデータ(バイト列)はまったく別のものとして扱われる。前者を扱うためのクラスがStringで、後者を扱うNode.js独自のクラスがBufferだ。C言語など、文字列とバイナリ列を同じ型(もしくはクラス)で扱える言語もあるが、Node.jsでは文字列とバイト列は厳密に区別されており、文字列の格納にはStringクラス

    はじめてのNode.js:Node.js内でバイナリデータを扱うための「Buffer」クラス | OSDN Magazine
    kjirouu
    kjirouu 2014/10/16
    Buffer クラスに関して総合的な解説
  • [Nodejs] Express+Log4jsで実践的なログ出力を行う - YoheiM .NET

    こんにちは、@yoheiMuneです。 日は、Log4jsを使ったログの出力やログローテーションをExpressで行う方法をブログに書きたいと思います。 Expressで一番簡単なログファイルの作成 Expressで出力しているコンソールログを一番簡単にログファイルに保存するには、以下のコマンドで実現で来ます。 $ node app.js >> app.log こうすればコンソール出力されてる内容が、app.logというファイルに書き込まれます。 ただ、開発中はこれくらいで良いのですが、リリースして運用する為にはログファイルを分けたり、フォーマットを指定したりしたいので、 ちょっと不十分です。 そこでlog4jsというログ出力モジュールを使って、ログ出力を行いたいと思います。 Log4jsの紹介 Log4jsは、JavaLog4jJavaScriptバージョンのモジュールで、柔軟なロ

    [Nodejs] Express+Log4jsで実践的なログ出力を行う - YoheiM .NET
    kjirouu
    kjirouu 2014/09/28
    log4js の基本的な使い方
  • Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.

    A new tool that blends your everyday work apps into one. It's the all-in-one workspace for you and your team

    Notion – The all-in-one workspace for your notes, tasks, wikis, and databases.
    kjirouu
    kjirouu 2014/09/19
    “.jsから.coffeeをrequireする時は、require('coffee-script')じゃなくて、require('coffee-script/register')を利用するようになった”
  • 「for やめろ」またはイベントループと nextTick() - Block Rockin’ Codes

    ものすごく遅レスですが、LLDiver で @esehara さんの LT であった話。 forやめろ、あるいは「繰り返し」という呪縛から逃れるために 簡単に言うと、 1~10 までを出力する方法を複数考えるというもの。 for, while, 再帰, goto etc.. と出て、途中で終わっちゃったので結論はよくわかりませんでしたが、 Node ではどれも使わずにできるな、と思ったのでちょっと例を出してみます。 ちなみに、タイトルでネタバレしている通りイベントループの話です。 そしてよくある「イベントループとは何か」「なぜ止めてはいけないのか」「process.nextTick() とは何か」「setImmediate() と何が違うのか」 などを解説する良い例だったので、書いてるうちに実はそっちがメインの解説となりました。 サンプルの実行結果は Node v0.11.13 です。(書

    「for やめろ」またはイベントループと nextTick() - Block Rockin’ Codes
    kjirouu
    kjirouu 2014/09/14
    イベントループとは/nextTickとsetImmediateの違い
  • Better local require() paths for Node.js

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    Better local require() paths for Node.js
    kjirouu
    kjirouu 2014/09/08
    require時のパス解決方法についての議論
  • Nodeでモジュール間(app内)で変数を持ちまわる方法 - コンドルが飛んでいる。

    Node.js jpのMLで話題になってました. ちょうど似たことを考えていた (Sequelizeのインスタンスを使いまわそうと思って) ので追ってたらブログでまとめられてた. expressでapp全体の設定値をroutesで使う(module間で変数を受け渡す)方法いろいろ 自分で考えてたのは, 上記ブログの3. クロージャを使う 方法だけでした. 色々あるんだなーと思いつつ, その後MLで言及された // app.js require './model' module.exports.instanceA = new instanceA(); //model.js require.main.exports.instanceA; // 使える のやり方がいいなーと思ったのでとりあえずこれでやりながら, 他にも良い方法ないか考えようと思います. Node.js v0.6.1 Manual

    Nodeでモジュール間(app内)で変数を持ちまわる方法 - コンドルが飛んでいる。
    kjirouu
    kjirouu 2014/09/08
    “node app.js とした場合 app.js がrequire.mainになるようです”
  • fs.createReadStreamのオプションでbufferSizeが無い - 笑いながらコードを書く。

    なんかやってたらどうにも指定できないようなので調べてみたら bufferSize → highWaterMarkになってた模樣。 なるほどなぁ。 でもこれbufferSizeの方がわかりやすい気がするんだけど。

    fs.createReadStreamのオプションでbufferSizeが無い - 笑いながらコードを書く。
    kjirouu
    kjirouu 2014/08/12
    0.10 から highWaterMark へ変更されていた。Ref) http://blog.nodejs.org/2012/12/20/streams2/
  • チームブログをGitHubとHexoではじめよう! | Tokyo Otaku Mode Blog

    Tokyo Otaku ModeでEngineerやってますpchwです。 通常、チームで技術ブログを書こうとすると、 他の人からフィードバックをもらいにくい フィードバックをもらっても、どの部分への指摘かわからない 下書きをキャプチャした画像に赤入れされたのが送られてきた そもそもリッチテキストで書くのがダルい など不幸な出来事が起こりがちです。 僕らは日々の開発と同じようなフローに則ってチームでブログを執筆する環境を整えたので、その方法を共有します。 Tokyo Otaku Modeでは、主にNode.jsを使って開発を進めています。 そのため、プラグインを書くのにもふだんの環境がそのまま使えるHexoというBlogging Frameworkを使って、ブログを執筆する環境を整えました。 HexoはNode.js製でOctopressの影響を受けて開発されています。 HexoもOcto

    チームブログをGitHubとHexoではじめよう! | Tokyo Otaku Mode Blog
    kjirouu
    kjirouu 2014/08/08
    Hexo & GitHub のブログ構築例
  • 3分でCentOS6にnvmとnode.jsをインストールする方法 · DQNEO日記

    node.jsをrpmで入れるかnvmで入れるかnaveで入れるかソースからコンパイルするかくよくよ迷ってたのですが、nvmでやってみたらあっさりできました。 案ずるより産むがやすしですね。 # インストール curl https://raw.github.com/creationix/nvm/master/install.sh | sh # 読み込み source ~/.nvm/nvm.sh たったこれだけ!! 感動ものです。 zsh使いの人は、上記に加えて~/.zshrcに下記1行を追記しておきましょう。 [[ -s ~/.nvm/nvm.sh ]] && . ~/.nvm/nvm.sh 1分でわかるnvmの使い方 nvm ヘルプが出ます。 nvm ls-remote インストール可能なバージョン一覧が表示されます。 nvm install v0.9.11 指定したバージョンのnode

  • node.jsでメソッドの中身をconsole.logで確認するにはutil.inspectを使う

    node.jsで任意のオブジェクトが持っているメソッドを確認するには、console.log(util.inspect(object, showHidden=false, depth=2));の形式でutil.inspectを使用します。showHiddenの値をtrueにした場合は、non-enumerableなプロパティも出力されるようになります。 実用的な使いどころとしては、組み込みのメソッドを確認したい場合に以下のように書くかんじでしょうか。var util = require('util'); console.log(util.inspect({}.__proto__, true, null));

    kjirouu
    kjirouu 2013/09/11
    console.logで深く出すぎる場合は console.log(util.inspect(obj, false, 0)) で1階層だけ出せる。"console.log(util.inspect(object, showHidden=false, depth=2));"
  • 1