Agile Japan 2009
2009年4月22日、東京千代田区にある放送会館で「アジャイルジャパン2009」が開催されました。本イベントは「ソフトウェア開発の次世代リーダーをつくる」ことを合い言葉に、200人以上の参加者を集めてスタートしました。
作者 Werner Schuster , 翻訳者 笹井 崇司 投稿日 2009年11月10日 午後3時0分
エンコーディングデータとしてはXMLが有名だが、その効率の悪さが問題となる場合も多い。効率の悪さには、エンコーディング/デコーディングが非効率であることと、使用する空間サイズが大きいことの両面がある。これに対して、人気のあるバイナリシリアライゼーションフォーマットには、広く使われているASN.1や、GoogleのProtocolBuffers、FacebookのThriftといったものがある。
そして今、BERTという新しいフォーマットがGitHubのバックエンドを動かしている。BERTはTom Preston-Werner氏によって作られたフォーマットであり、ノード間通信のためにErlang termのエンコードに使われるErlangのExternal Term Format (ETF)に基づいている。
BERTはETFを拡張して、dictionaryやtime、regexなどの複雑なデータ型が使えるようになっている。
また、BERTはASN.1やProtocol Buffersとは違って、フォーマットのスキーマやIDL仕様を必要としない。つまり、BERTはJSONの背景にある考え方のバイナリ版のようなものだ、とTom Preston-Werner氏は説明する。
私はJSONが好きなんです。言語のサブセットを抜き出して、それを使ってプロセス間通信をしやすくするという考え方が大好きなんです。それで、Erlectricityを使ってやった仕事を思い出しました。2年ほど前、私はErlectricityのためのC拡張を書いていました。ErlangのExternal Term Formatのデシリアライゼーションを高速化するためです。
[..] 私は考えたんです。もし、ErlangのExternal Term Formatの汎用的な部分を抜き出して、それをプロセス間通信の標準にしたらどうなるだろうか? もし、ErlangにJavaScriptのJSONに相当するものがあればどうなるだろうか? そして、もし、そのフォーマット上にRPCプロトコルを構築するとどうなるだろうか? そうすると、何が起こるのだろうか、どれだけシンプルになるだろうか?
BERT-RPCは、BERTを使って呼び出しの引数と戻り値をエンコードすることにより、BERT-RPCサーバにホストされているコードをリモートから呼び出すことができる。Tom氏はBERT-RPCの機能について言及している。
- 同期呼び出しと非同期呼び出し [..]
- ストリーミング(要求と応答)
- ディレクティブのキャッシュ
ErnieといったBERT-RPCサーバを使うと、Rubyコードから利用することも可能だ。
BERTとBERT-RPCには仕様書が存在する。そして、RubyとErlangの実装以外にも、JavascriptやPythonといった言語でも、BERTを利用することができる。
あなたはBERTのようなスキーマなしのアプローチの方が好きですか?それとも、ASN.1やProtocol BuffersのようなIDLに基づくアプローチの方が好きですか?
2009年4月22日、東京千代田区にある放送会館で「アジャイルジャパン2009」が開催されました。本イベントは「ソフトウェア開発の次世代リーダーをつくる」ことを合い言葉に、200人以上の参加者を集めてスタートしました。
今週(2009年6月1日)AdobeはFlex 4の正式な初ベータ版をリリースしました。Flex 4はGumboというコードネームで開発されています。今回のリリースには大きな変更が多数含まれています。このRIAフレームワークの最新バージョンにおいて変更された事柄についての概要を以下のリストで見ていきましょう。
ビジネス領域の深い理解を反映したドメインモデルを設計するための、ヴィジョンとアプローチです。この本は、Eric Evans氏の「Domain Driven Design」の主要点を短く読みやすく要約しました。
この記事ではJavaプログラマがなぜFlexとBlazeDSを学ぶべきなのかについて13の理由を述べています。なぜ高度にインタラクティブなWeb サイトからJavaで開発されたバックエンドをもつエンタープライズ・アプリケーションまでを含む、リッチ・インターネット・アプリケーション(RIA)の開発にFlexとBlazeDSの組み合わせが最適な選択肢となるのかについて述べています。
Mary Poppendieck氏、Ron Jeffries氏、Jeff Patton氏、David West氏、Steve Freeman氏、Jason Yip氏が、バックログに関する彼らの意見とアジャイルチームを成功させるために必要な事を語った。
この記事ではAlex Devine氏が、Java開発者がPerf4Jをどのように利用できるかと、タイミングステートメントにコードを追加し、ロギング、結果の解析とモニタリングを行うオープンソースツールセットの説明をします。
この記事では低レベルのサービス・レイヤやリポジトリ・レイヤを肥大化させることなく、フェッチング・ストラテジによってモジュール化された方法でバックエンドにあるシステムからデータを取得する処理を最適化する方法について説明します。
No comments
スレッド表示 返信