フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発

フロントエンドのパラダイムを参考にバックエンド開発を再考する / TypeScript による GraphQL バックエンド開発
From the developers who build Node.js, StrongLoop offers professional-grade support, consulting and training for Node.js.Over the years, Node developers have come to rely on Danny Coates’ node-inspector npm module to debug their applications. While popular, the community has nonetheless been clamoring for additional features. Node-inspector has also been in need of an infrastructure refresh with G
こちらの記事は英語版のブログに2013年2月12日に掲載された記事の翻訳版です。 約2年前にNode.jsの専任になるまで、私は自分のことを何でも屋のウェブ開発者だと思っていました。アプリケーションの大半はPHPかPython風に書いて、週末は、JavaとRubyを試してみる、ということをしていたのですから。それに、当時の多くのJavaScript開発者たちと同じように、私もjQueryのプラグインを書いていました。今から思うと、開発者として焦点が定まっておらず、何かがすべてを結び付けてくれるのを待っていたのです。 初めてNode.jsを試してみた時は、アプリケーション全部をひとつの言語で書くことができてとても新鮮でした。それに、開発者コミュニティの初期ツールのおかげで、小さくてテスト可能な別個のモジュールを容易に作ることができました。モジュールは他のさまざまな環境の土台ですが、Node.
intro ちょっと反応が遅れてしまいましたが。 404 Blog Not Found:JSON - をnodeで整形する こちらの記事は Stream 厨として見逃す訳にはいきませんでした。 motivation JSONは本来JavaScriptから生じたものだからどうせならJavaScriptでやりたいし まあ、 JSON ですしね。 そのJavaScriptに今や標準搭載のJSON.stringify()は実はpretty printできるし 確かに stringify でできますね。(昔こちらにも書きました。) どうせなら標準入力だけではなくURIやファイル名で直アクセスしたいし 同意です。 しかし、実装を見てみると、、 (以下、主要な部分の抜粋) // stdout stdin.on("data", voorhees); // http http.get(req, functi
Node.js・・・、のインストールではまる人も多いはずだ。 そこで(というわけでもないだろうが)登場したのがRunnableだ。 このサイトではブラウザ上でNode.jsの開発ができるようだ。 インストール不要で、ちゃちゃっとコードを書いて「Run」すればいいだけなのでお手軽だ。 Node.js以外の言語にもこれから対応していくとのことなので楽しみですな。
http://jxck.node-ninja.com/ WebSocket & SPDY for non beginner@Pyfes 2012.11 Jack about me Jxck id: Jxck twitter: Jxck_ github: http://github.com/Jxck blog: http://d.hatena.ne.jp/Jxck tumblr: http://jxck.tumblr.com/ love: music :) Publish Header http://tools.ietf.org/html/rfc6455#section-1.2 GET /chat HTTP/1.1 Host: server.example.com Upgrade: websocket Connection: Upgrade Sec-WebSocket-Key: dGhlIH
東京Node学園祭2012 アドベントカレンダーの9日目です。Node.jsとほとんど関係ないうえに内容がけっこう薄い感じなった気がするんですけど気にせずいこうと思います。 フロントエンドのJavaScriptをテストするとき最近はいつもmochaを使ってるんですが、やはりJenkinsとかtravis-ciを使って自動テストもしたいと思って試してみました。 hokaccha/mocha-phantom-travis-test ここではよくあるjQueryで画像のロールオーバーをするというプラグインを作ってそのライブラリに対してテストを書いています。ソースコードはこんな感じです。 $.fn.rollover = function() { return this.each(function() { var $img = $(this); var src = $img.attr('src');
[前回までの話へのリンク] ・node.js と thread hog の話(1) ・node.js と thread hog の話(2) では、なぜ今頃になって HTTP Server の c10k 問題(もしくは、thread hog 問題)が顕在化したのだろう。 当時(90年代の終わり頃)と比べて、もっとも大きく変わったのはCPUの性能である。クロック数は、数百MHzから数GHzへと一桁増えたし、マルチコア化もしている。CPU 性能だけ見れば、当時の数十倍の能力が出てしかるべきである。 しかし、実際の人生はそう簡単ではない。サーバーのパフォーマンスはCPU性能だけが決めるわけではないからだ。そこで、ボトルネックの一つとして注目されはじめたのが、thread の数なのである。 前回述べた様に、thread 一つあたり 2MB~8MB のスタック領域を仮想メモリ空間に確保しなければならな
While working on a javascript library, intended for use on both the server and the client, I ran across an interesting problem; how do you reliably detect what javascript environment your script is running in? I looked around and could not find a solution I was satisfied with, so I decided to look into the problem further. The problem is that any variable can be freely declared and modified, makin
サーバサイド(特にNode.js)とクライアントサイド両方で動かしたいものは最近はこんな感じで書いている。 CommonJSのwiki見ててそこに紹介されてるソースコードで(どれだったか忘れたけど。。)やってたのを見ていいなーと思って真似っこした。 (function(define) { define([], function() { 'use strict'; /** * @constructor */ var SomeClass = function() { // initialize }; /** * @type {string} * @private */ SomeClass.prototype.hoge_ = 'hoge'; /** * @return {string} */ SomeClass.prototype.getHoge = function() { return th
Yahoo!がJavaScriptのフレームワーク「Mojito」をオープンソースで公開。同一のJavaScriptコードが、サーバ、ブラウザどちらでも実行可能 Webアプリケーションのためのコードを1つだけ書けば、それがPC上でそのままローカルアプリケーションとなり、Node.jsのサーバへ持っていけばWebブラウザからWebアプリケーションとして利用でき、さらにモバイルデバイスからアクセスすれば、そのデバイスに最適な表示が行われる。米Yahoo!が4月1日にオープンソースとして公開した「Mojito」(モヒート)は、JavaScriptで書かれたアプリケーションフレームワークです。 Mojitoは昨年11月にYahoo!が開発中であることを明らかにし、今年の第1四半期にオープンソースとして公開予定としていました。 米Yahoo!がJavaScriptフレームワーク「Mojito」と、N
Node.js活用のノウハウとモバイル対応のポイント スピーカー2名体制で行われたセッションのテーマは「Node.js」「Mobile」「Global」。まず久富木隆一氏が登壇し、参加者に「Node.jsに触れたことがある人」と問いかけると、全体の約8割が挙手。関心の高いエンジニアが多数参加していることが実感できた。 JavaScript標準はECMAScriptだが、Webブラウザ上では方言が存在するため、互換性を維持するのが困難になっている。それに対し「Node.js」はGoogle ChromeのV8エンジン採用のサーバーサイドJavaScriptプラットフォームで、標準準拠度が非常に高く、方言を気にすることなくピュアなスクリプトを書いていける。さらにプログラミング言語のパフォーマンス比較を見てみると、V8上のJavaScriptはJITコンパイルされた上で実行され、Perl、Pyt
本書について 本書は、Node.jsでのアプリケーション開発を始めようとする皆さんに、 ”高度な”JavaScriptについて知るべきあらゆることを解説します。 よくある”Hello World”チュートリアルの、はるか上をいくものです。 ステータス 貴方が読んでいるのは、本書のいわゆる最終版となります。 つまり本書は、間違いが見つかった場合や、 Node.jsの新バージョンにおえる変更点を反映する時のみ、改訂されます。 最終更新日は2012年2月12日です。 本書内のコードのサンプルは、Node.jsのバージョン0.6.10でテストしています。 ターゲット読者 本書は、Ruby、Python、PHP、Javaのような、少なくともひとつのオブジェクト指向言語を理解しており、 JavaScriptについてはあまり経験がなく、Node.jsについては全く経験がないという、 著者と同じようなバッ
このエントリは、「東京Node学園 4時限目」の資料その5です。 Nodeには様々なサードパーティ製のパッケージが存在しています。基本的にそれらはnpmでインストールすることになるので、http://search.npmjs.org/ で一覧を確認することができます。 また、同様のものをGithubのwatch数やfork数で見える可したものが http://toolbox.no.de/ です。 同様の目的のパッケージでも複数あってどれを選んだらいいか困ることも多いと思いますので、代表的によく使われているものを挙げていきます。 Webアプリケーションフレームワーク https://github.com/visionmedia/express WebSocket https://github.com/LearnBoost/socket.io データベース MySQL https://gith
Dartのインストールが簡単になっていたので試してみたところ、Perlよりも高速だった。 なにこれ悔しい。 Dart: void main() { final t = new Stopwatch(); t.start(); final a = new List<int>(); for(var i = 0; i < 1000000; ++i) { a.add(i); } for(var i = 0; i < a.length; ++i) { ++a[i]; } var sum = 0; for(var i = 0; i < a.length; ++i) { sum += a[i]; } print(sum); print(t.elapsedMilliseconds / 1000); } Perl: use 5.12.0; use Time::HiRes qw(gettimeofday tv_
Node.jsの開発者であるライアン・ダール氏は先週1月31日、「I am ceding my position as gatekeeper to Isaac Schlueter. 」(私は自分のゲートキーバーとしてのポジションをIsaac Schlueterに委譲しているところだ)とNode.jsのメーリングリストにポストし、Node.jsの開発リーダーを退くことを明らかにました。 I am still an employee at Joyent and will advise from the sidelines but I won't be involved in the day-to-day bug fixes. Isaac has final say over what makes it into the releases. Appeals for new features, c
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く