タグ

Node.jsに関するhrfmsdのブックマーク (41)

  • 今日から始めるNode.jsコードリーディング - libuv / V8 JavaScriptエンジン / Node.jsによるスクリプトの実行 | Tokyo Otaku Mode Blog

    ソフトウェアを正しく理解する唯一の方法はコードを読むことです。 ドキュメントを読めばそのソフトウェアが何を実装しているか分かりますが、どのように実装されているかまでは分かりません。 開発中に何らかのトラブルに悩まされたときや、効率的なコーディングをしたいと思ったとき、下位レイヤのソフトウェアを理解しておけば素早く対処できるシーンが多くあります。 ただ、コードを読むことは簡単なタスクではありません。 現代的なソフトウェアはそれなりの規模のコードを含んでいることがほとんどです。アーキテクチャ間の差異を吸収するためのコードなど、質的な機能を理解する上ではあまり重要ではないコードも含まれています。 何らかの問題が発生してからコードを読もうと思っても、準備なしでは関連する箇所を探すだけでかなりの労力が必要な作業となります。 従って、普段からコードを読んでおくことが重要です。 また、コードを読むにあ

    今日から始めるNode.jsコードリーディング - libuv / V8 JavaScriptエンジン / Node.jsによるスクリプトの実行 | Tokyo Otaku Mode Blog
  • node.jsのいろいろなモジュール38 – XMLとJSONの相互変換 | DevelopersIO

    XMLとJSONを変換 node.jsではデータをJSONでやり取りすることも多いです。 しかし、アプリやサービスによってはXMLデータが使われることもあります。 そんなとき、今回紹介するxmljsonモジュールを使用すると、簡単に相互変換を行うことができます。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.5 Node.js : v0.10.8 npm : 1.2.23 npmを使用してxmljsonモジュールをインストールしましょう。 % mkdir xmljson % cd xmljson % npm init //入力は全部デフォルトでいいです % npm install xmljson --save サンプルプログラム作成 まずはXMLからJSONへ変換する方法です。xmljsonモジュールのto_json関数を使用してXMLからJS

    node.jsのいろいろなモジュール38 – XMLとJSONの相互変換 | DevelopersIO
  • Sails 0.8.9:リアルタイムNode MVC フレームワーク

    4月9日、テキサス州オースティンのBalderdashがnode.js上で動作するリアルタイムMVCフレームワークであるSailsのバージョン0.8.9を発表した。これは、Railsライクな開発環境をモダンなウェブアプリの世界に持ち込もうとする試みだ。 Railsの誕生から8年たち、BalderdashのチームはMITライセンスのSailsをさらなる進化の一歩として構想している。Railsのリッチな開発体験とリアルタイムウェブの能力を組み合わせようとしているのだ。 InfoQはSailsの作者であるMike McNeil氏に詳しい話を聞いた。 INFOQ:Sails.jsはnode.jsの他のリアルタイムフレームワーク(Meteor, Derby, SocketStream)と比べてどうですか。 Mike:Sails.jsを開発したのは、私が顧客に効率良く安定したNode.jsアプリケーシ

    Sails 0.8.9:リアルタイムNode MVC フレームワーク
  • 翻訳: ”命令型のコールバック、関数型のプロミス: Node が逸した最大の機会” by James Coglan

    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

    翻訳: ”命令型のコールバック、関数型のプロミス: Node が逸した最大の機会” by James Coglan
  • はじめてのNode.js:Node.jsのイベントシステムを知る | OSDN Magazine

    記事は、3月13日にソフトバンク クリエイティブより発売された書籍「はじめてのNode.js -サーバーサイドJavaScriptでWebアプリを開発する-」から、「第7章 Node.jsアプリケーションのデバッグ方法」の一部を抜き出し再構成したものです。 出版社ページ / Amazon.co.jpの商品ページ 大型: 384ページ、価格:3,045円(税込)、ISBN: 978-4797370904 Node.jsでのWebアプリケーション実行モデル PHPPerlなどの言語でWebアプリケーションを実装する場合、クライアント(Webブラウザ)とのやり取りはApache HTTP ServerなどのWebサーバーが行い、プログラムはWebサーバー経由で実行される形が多い。いっぽうNode.jsの場合、Node.js自体(正確にはNode.jsに含まれるWebサーバーモジュール)が直

    はじめてのNode.js:Node.jsのイベントシステムを知る | OSDN Magazine
  • Node.js-v0.10リリースアナウンスの簡単な解説と感想など - ぼちぼち日記

    1. はじめに、 昨年6月末に node-v0.8がリリースされて8か月半ほど経って node-v0.10 がリリースされました。私もいくつかパッチがこのリリースに採用されていまして、ちょっと感慨深いです。 当初1月末のリリース予定でしたが、やっぱり今日まで延びました。安定版リリース直前のゴタゴタはもうNodeの風物詩なんですね。 今回、Node-v0.10のリリースにあたり、 isaacs から次のリリース文 http://blog.nodejs.org/2013/03/11/node-v0-10-0-stable/ がポストされています。英語かつ長文なので内容をちゃんと読み切れな方もいらっしゃるかと思いますので、リリース文の項目にあわせて私の視点で簡単な解説と感想などを書いてみます。(ちゃんとリリース文を理解された方はわざわざお読みにならなくても大丈夫です。) 尚、このリリースはこれ以

    Node.js-v0.10リリースアナウンスの簡単な解説と感想など - ぼちぼち日記
  • node.jsのいろいろなモジュール15 – bowerでクライアントのライブラリを管理 | DevelopersIO

    ライブラリ管理がめんどい クライアント側で使用するサードパーティ製ライブラリ管理を面倒に感じたことはありませんか? 毎回公式サイトから持ってきてしてディレクトリに置いたり、バージョンアップしたらまた公式サイトから持ってきて・・・ そんな管理が煩わしいとおもっている人に、今回はクライアント側パッケージ管理ツールを紹介します。 bowerとは? bowerとは、Twitterが公開しているクライアントサイド用パッケージマネージャです。 サーバサイドではnode.jsのnpmでパッケージ管理をしますが、それのクライアントサイド版ですね。 jqueryやbackbone.jsなどのライブラリを簡単にインストールでき、依存関係も管理できます。 bowerはnode.jsのモジュールとして提供されており、npmをつかってインストールします。 ではbowerをインストールし、比較的よく使うコマンドをいく

    node.jsのいろいろなモジュール15 – bowerでクライアントのライブラリを管理 | DevelopersIO
  • Androidアプリからnode.js+Socket.IOと双方向通信する | DevelopersIO

    AndroidアプリからWebViewなどを介さずにnode.js+Socket.IOと双方向通信するための簡単なサンプルを紹介します。 サーバ側の実装 Androidアプリからnode.js+Socket.IO間で双方向通信するには、socket.io-java-clientというライブラリを使用します。 今回はサーバ側には弊社うえじゅん氏が公開している記事で作ったチャットアプリを使用しますので、まずは以下の記事を参考にチャットアプリを作っちゃってください。 Node + Socket.IO で簡単なチャットアプリの作成 チャットアプリの準備が終わったら、早速Androidアプリ側の準備をしましょう。 Androidアプリの実装 サンプルプロジェクトのダウンロード 今回紹介するAndroidアプリのソースコードをGitHubにあげてあるのでダウンロードしてください。 hakamata/S

  • Redis の Pub/Sub を使って Node.js + WebSocket のスケールアウトを実現する方法

    Node におけるスケールアーキテクチャ考察(Scale 編)というエントリーを読んで、RedisはPub/Sub型通信をサポートしているという事を知りました。エントリーでも言及されているように、Pub/Subを使えば Node.js + WebSocket サーバをスケールする際に、中継サーバの役割を果たす事が出来るはずです。 そんな訳で実際に Node.js と Redis を使って Pub/Sub の実験を行なってみました。ユーザが別々のNode.jsサーバに接続していてもWebSocketを通してメッセージのやり取りを出来るようにします。 イメージとしてはこんな感じです。 下準備# Ubuntuの場合は apt-get で1発でインストールする事が出来ます。 $ sudo apt-get install redis npmでredisモジュールをインストールします。 $ npm i

    Redis の Pub/Sub を使って Node.js + WebSocket のスケールアウトを実現する方法
    hrfmsd
    hrfmsd 2013/02/06
    [Pub/Sub]
  • node.jsアプリのデプロイにやさしい grunt-rsync | DevelopersIO

    はじめに ちょっとデプロイしてスマホで確認したい、皆に見てもらって感想が欲しい、とにかく直ぐにデプロイしたい。そんな時に便利なgrunt.js用のタスクのgrunt-rsyncです。 rsyncコマンド知ってますか? 僕は知りませんでした(汗。ファイル群の同期を取る用途のコマンドです割と古くからあるみたいです。多くのUnix系環境にデフォルトで入っているようです。名前の通り、ファイルの同期を取るのがこのコマンドの仕事で、ローカル同士でもリモートともSCP経由などで同期を取れるようです。 詳しくはWikiで。 grunt-rsyncパッケージ rsyncwrapperというrsync用のパッケージを使用しているgrunt用タスクです。もっとシンプルにrsyncをラップしている grunt-rsync-2 というのも存在しますが、コピーに失敗してもがエラーが出なかったのでこちらの方がいいと思い

  • Gruntfileを整理してタスクの自動化を進めた

    (急遽宣伝) FrontrendでGruntします Frontrend(フロントレンド) Vol.3 powered by CyberAgent : ATND Frontrend(フロントレンド)とは サイバーエージェントが主催するフロントエンド技術セミナーです。 HTML5/CSS3やJavaScriptのトレンドやノウハウ等を惜しみなくお伝えします。 2012/10/21(日)の午後に、FrontrendでGruntのことを紹介させていただく運びになりました!以下の記事は色々と知ってる前提な内容になってしまっているので、ベーシックな所から知りたい方には特にオススメです。 今回のFrontrendはスピード特集ということで、ページパフォーマンスの最適化はもちろん、CSSプリプロセッサの導入や、ガイドラインの運用による業務効率のカイゼンにも踏み込んでスピードを上げていきます!ということで

    Gruntfileを整理してタスクの自動化を進めた
  • node.jsのいろいろなモジュール11 – js2coffee | DevelopersIO

    JavascriptからCoffee Scriptへ変換 最近Coffee Scriptがよく使用されるようになってきました。 Javascript用MVCフレームワークであるSpine.jsはCoffee Scriptで記述しますし、Webstorm(IDE)でもCoffee Scriptをサポートしています。 このため、今後はJavaScriptからCoffee Scriptへ置き換えを行うケースがあるかもしれません。 そういったケースで役立ちそうなツールが、今回ご紹介するjs2coffeeです。 js2coffeeはJavaScriptのソースファイルをCoffee Scriptのソースファイルへ変換してくれます。 npmでインストールして簡単に使えるのでやってみましょう。 環境構築 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.3 Node.js :

    node.jsのいろいろなモジュール11 – js2coffee | DevelopersIO
  • ド素人が完全自作SNSを二週間運営してみてわかったこと(後始末編、技術編、モチベーション編)

    ド素人が完全自作SNSを作ってみてわかったこと。 http://anond.hatelabo.jp/20130104184115 の元増田です。 ひっそりと公開したはずのtag-chat.net(http://tag-chat.net)ですが、 まさか、こんなに反響を頂けるとは思っていなかったので、びっくりしました。 素人のフリをしているとか、出版社のステマだとか色々言われましたが、嘘は一切書いてないです。 ステマというか、ウェブサービス公開後の状況を知っている方からするとマイナスのステマにしかなっていないような気がします…。 公開してから、色々と発見というか気づきがあったので、それを共有できれば幸いです。あと、tag-chat.netの中身についてなど。 ~増田記事を公開してから今までの経過~ ・意気揚々と自作SNSを公開したものの、アクセスが全くこなくて途方にくれる。 ⇓ ・以前、完全

    ド素人が完全自作SNSを二週間運営してみてわかったこと(後始末編、技術編、モチベーション編)
  • コーディングの必須ツールになりそう。ステキなCSSスタイルガイドを生成する「styleDocco」の導入とgrunt.jsでの自動化のメモ | Mnemoniqs Web Designer Blog

    プロジェクトでコーディングする時に、複数の作業者がいる場合にスタイルガイドはとても重要です。 特にスマートフォン向けのサービスでは、モジュールの共通化や画像のスプライト化がもろにページ表示速度に影響するため、より精度が高く細かいアップデートに耐えうるCSSスタイルガイドが必要になります。これをExcelPowerPointで管理していると、細かい変更の反映が大変だし、なにより見にくい。 そんな時、こちらの記事「CSSプリプロセッサでスタイルガイド」 inkdesignの中で、 スタイルガイドは”生きている”ドキュメントでなければいけない というシビレるキャッチで紹介されていた「styleDocco」というスタイルガイドジェネレータを発見。 これはなんだか良さそうだ!とプロジェクトに取り入れてみることにしたので、導入とか設定とかをメモ。 「styleDocco」ってなに? 「style

  • AWS SDK for Node.js を使い始める | DevelopersIO

    AWS SDK for Node.js(Developer Preview)出ました つい先日、AWSから公式node.js向けSDKが出ましたよー。早速使ってみよう!日で最初のコーディング記事かな? node.jsの基セットアップ Amazon Linux上にnode.jsの環境を作りましょう。まずは必要なライブラリのインストールから $ sudo su - $ yum install openssl-devel git make gcc gcc-c++ wget $ git clone git://github.com/ry/node.git $ cd node $ ./configure $ make $ make install パッケージマネージャとバージョンマネージャをインストール $ curl https://npmjs.org/install.sh | sudo sh

    AWS SDK for Node.js を使い始める | DevelopersIO
  • node.jsでtrayという画像アップローダを作った - はこべにっき ♨

    昨日のKyoto.js #2 で、trayというお手軽な画像アップローダについて発表してきました。ドラッグアンドドロップで画像がアップロードされます。画像は12枚のパネル上に表示され、誰かがアップロードするとリアルタイムで画面が切り替わったりします。 http://tray.douzemille.net:8080 http://imagetray.herokuapp.com/ でお試しできますので、お手元の適当な画像をドラッグアンドドロップして遊んでみてください! 何アップロードされているかはよくわからないので、ご注意ください。たまに勝手に適当な写真に切り替わるようにしてあります。*1 ドラッグアンドドロップでのアップロードが手軽で便利なだけではなく、12枚のパネルにきれいな画像をはめこむおもしろさもあります。 割と簡単に設置できておもしろいのでぜひおためしください。GIFアニメを投稿しま

    node.jsでtrayという画像アップローダを作った - はこべにっき ♨
  • JavaScriptのテストツール「testem」が素晴らしいぞ - Mach3.laBlog

    この記事は賞味期限切れです。(更新から1年が経過しています) JavaScriptユニットテスト一年生の私が、Nettuts+ のチュートリアルで知ったテストツール 「testem」のお陰で大変捗ったので是非お勧めしたく、ここで紹介してみます。 testem ってなに testem via GitHub : airportyh/testem Unit testing in Javascript can be tedious and painful, but Testem makes it so easy that you will actually want to write tests. 要するに、面倒なJSのユニットテストをより快適にしてみんなでハッピーにテスト書こうよ!というツールです。 testem自体はnode.jsベースで動作し、Jasmine/QUnit/Mochaに対応して

    JavaScriptのテストツール「testem」が素晴らしいぞ - Mach3.laBlog
  • Node API のクラス図を公開しました。 - ぼちぼち日記

    東京Node学園祭2012 アドベントカレンダー 13日目の記事です。 はじめに、 自分が Node.js を一番最初に使い始めた頃、Hello World のサンプルコードを動かしたのはいいけど、その後にNodeマニュアルを読んで勉強し始めたら内容が全然理解できず、挫折しちゃった思い出があります。 人のサンプルコードやモジュールの中身とかもいろいろ見てみたんですが、 .on() ってなんのオブジェクトにもつけていいの? req と res とかどっから出てきたの? どう使うの? イベントってどれだけ種類があって、どういう時に発生するの? なんて???がたくさんついて前に進みません。マニュアルを見てもなかなか探し出せないし、読んでもちゃんと書いてあることが理解できません。 一度マニュアルで調べたところもすぐ忘れる。何度も同じところを調べているのに全然ものになっていない。あぁこりゃダメだなと

    Node API のクラス図を公開しました。 - ぼちぼち日記
  • Node + Socket.IO で簡単なチャットアプリの作成 | DevelopersIO

    こんにちは、うえじゅんです。 今回はタイトル通りNodeとSocket.IOを使って簡単なチャットアプリを作ってみたいと思います。 「Node」のインストール インストールはとても簡単です。 公式サイトからダウンロードしてインストールするだけです。 (確認した環境はMacです) インストールが完了したらターミナルで「node -v」と入力して「v0.8.12」と表示されていれば無事成功です。 ついでに「Express」もインストールします 。 ターミナルで以下のコマンドを実行してください。 (エラーが出る場合は、「sudo」をつけてみてください。) 「Express」 npm install -g express インストールが終わったらこちらもバージョンを確認しておきましょう。 「express -V」で「3.0.0rc5」と表示されたら成功です。 プロジェクトの作成 ターミナルで「ex

    Node + Socket.IO で簡単なチャットアプリの作成 | DevelopersIO
  • 「Node.jsは静的コンテンツには向いていない」のか? - hakobera's blog

    この記事は東京Node学園祭2012 アドベントカレンダーの8日目の記事です。 この記事を書こうと思った理由 Node.jsに関するWeb上の記事を読んでいると、「Node.jsは静的コンテンツに弱い」とだけ書いてある記事をよく見かけます。有名なところだと、LinkedInのNode.jsのパフォーマンスに関する10個のTipsの3番目のTipsに"Don't use Node.js for static assets"とばっちり書いてあります。 確かにCDNやNginxに比べれば、Node.jsは静的コンテンツの扱いが遅いとは思います。しかし、それは LinkedIn くらいの超大規模なトラフィックがある場合には問題になるとは思いますが、小〜中規模なサイトでもNginxは必須なほど遅いのでしょうか?512MBしかメモリのないVPSNginxとNode.jsを入れてやりくりすることがホン

    「Node.jsは静的コンテンツには向いていない」のか? - hakobera's blog