「Ambitionの拡張」の編集履歴(バックアップ)一覧はこちら

Ambitionの拡張」(2008/06/21 (土) 15:28:17) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

Ambition についていろいろ話している人は本当に面白いです。 「Oh, Ambition? いいね。」 「Ambition? インピーダンスミスマッチだよ」 「SQL-92 で十分だよ、ありがとう」 言語道断。 わかってます。いくつか気が狂ったことをいいました。 どうやったらAmbition がデータベースの Rack になるかとか、 far fetched as it sounds, どんなに Ambition が LINQ のようなものになるよう願っているか。しかし私たちは話し合っています。 Today we want to show you some plain jane Ruby and how Ambition empowers it to leverage its inherent synergy. Er, I mean, we want to show you something kickass. == New School == This is what we’re used to: >> SQL::User.select { |m| m.name == 'jon' && m.age == 21 }.to_s => "SELECT * FROM users WHERE users.name = 'jon' AND users.age = 21" This is what’s new: >> LDAP::User.select { |m| m.name == 'jon' && m.age == 21 }.to_s => "(&(name=jon)(age=21))" == Adapter School == 現在の0.5で、 Ambition はもはや SQL ラッパではありません。 むしろ、あなた独自のアダプタを書くための API です。 もし Ambition で ActiveRecord を使い続けるなら、 ambitious-activerecord gem をインストールしてください。: $ gem install ambitious-activerecord そして、もちろん、こう使います。: require 'rubygems' require 'ambition/adapters/active_record' 古い0.3系もインストールして使うことが出来ます。: $ gem install ambition -v 0.3.2 とにかく、Ambition は今や任意のデータストアを何でもサポートします。Ambition アダプタは ambition に依存した gem でよりよい 驚くべき API を使います。(?) 他にどんなアダプタが計画されていますか? Oh, I dunno. いくつかあげると ActiveLDAP, CouchDB, Facebook FQL, XPath, DataMapper といったところです。 ちょうど先日の夜、Bostom.rb の連中が Sphinx アダプタをはじめました。 git でチェックしてください: $ git clone git://technicalpickles.com/ambitious_sphinx.git また、2つ gem の例があります。:ambitious-activeldap と ambitious-activerecord です。 Ambition の API のための基本的な文書が ambition.rubyforge.org にあります。(また、あなたは自由に ambition.rubyforge.org を熟読できます)。 私たちはすぐ始めるつもりですが悪いスタートではありません。アイデアを得ましたか?ちょっと気が狂ってますか? We’re all about it. メーリングリストに飛び込むか irc.freenode.net #ambition に繋げて、投稿してください。 == Dream School == 例として youtube-g gem を試しましょう。完成されたアダプタはないのであるフリをします。 新しい Ambition を使うことで、このような問い合わせを(場面に隠れて?)得られます。: Videos.select { |video| video.user == 'liz' } 入るにはこう: YouTubeG::Client.new.videos_by(:user => 'liz') このような問い合わせを得られます: Videos.select { |video| video.tags.include? 'apple' } 入るにはこう: YouTubeG::Client.new.videos_by(:tags => 'apple') そして、こんな問い合わせでさえ可能です。: Videos.select do |video| video.tags.include?('football') && !video.tags.include?('soccer') end 入るにはこう: YouTubeG::Client.new.videos_by :tags => { :include => ['football'], :exclude => ['soccer'] } 悪くない。Nic 博士の提供したジェネレータで、アダプタ acaffold を吐き出すようになります。: $ ambition_adapter ambitious_youtube == Future School == Got an idea for an adapter, or some code to show? Throw it in the comments. You better believe we’ll keep the rest of you abreast of cool adapters, fancy tricks, and new features. Want to get involved? Like I said, there’s always the list and the GitHub repo. Bugs can go to Lighthouse and you can clone my repo thisaways: $ git clone git://github.com/defunkt/ambition.git Ah, how far we’ve come. And how far we’ll go! Here’s to it.
Ambition についていろいろ話している人は本当に面白いです。 「Oh, Ambition? いいね。」 「Ambition? インピーダンスミスマッチだよ」 「SQL-92 で十分だよ、ありがとう」 言語道断。 わかってます。いくつか気が狂ったことをいいました。 どうやったらAmbition がデータベースの Rack になるかとか、 far fetched as it sounds, どんなに Ambition が LINQ のようなものになるよう願っているか。しかし私たちは話し合っています。 Today we want to show you some plain jane Ruby and how Ambition empowers it to leverage its inherent synergy. Er, I mean, we want to show you something kickass. == New School == This is what we’re used to: >> SQL::User.select { |m| m.name == 'jon' && m.age == 21 }.to_s => "SELECT * FROM users WHERE users.name = 'jon' AND users.age = 21" This is what’s new: >> LDAP::User.select { |m| m.name == 'jon' && m.age == 21 }.to_s => "(&(name=jon)(age=21))" == Adapter School == 現在の0.5で、 Ambition はもはや SQL ラッパではありません。 むしろ、あなた独自のアダプタを書くための API です。 もし Ambition で ActiveRecord を使い続けるなら、 ambitious-activerecord gem をインストールしてください。: $ gem install ambitious-activerecord そして、もちろん、こう使います。: require 'rubygems' require 'ambition/adapters/active_record' 古い0.3系もインストールして使うことが出来ます。: $ gem install ambition -v 0.3.2 とにかく、Ambition は今や任意のデータストアを何でもサポートします。Ambition アダプタは ambition に依存した gem でよりよい 驚くべき API を使います。(?) 他にどんなアダプタが計画されていますか? Oh, I dunno. いくつかあげると ActiveLDAP, CouchDB, Facebook FQL, XPath, DataMapper といったところです。 ちょうど先日の夜、Bostom.rb の連中が Sphinx アダプタをはじめました。 git でチェックしてください: $ git clone git://technicalpickles.com/ambitious_sphinx.git また、2つ gem の例があります。:ambitious-activeldap と ambitious-activerecord です。 Ambition の API のための基本的な文書が ambition.rubyforge.org にあります。(また、あなたは自由に ambition.rubyforge.org を熟読できます)。 私たちはすぐ始めるつもりですが悪いスタートではありません。アイデアを得ましたか?ちょっと気が狂ってますか? We’re all about it. メーリングリストに飛び込むか irc.freenode.net #ambition に繋げて、投稿してください。 == Dream School == 例として youtube-g gem を試しましょう。完成されたアダプタはないのであるフリをします。 新しい Ambition を使うことで、このような問い合わせを(場面に隠れて?)得られます。: Videos.select { |video| video.user == 'liz' } 入るにはこう: YouTubeG::Client.new.videos_by(:user => 'liz') このような問い合わせを得られます: Videos.select { |video| video.tags.include? 'apple' } 入るにはこう: YouTubeG::Client.new.videos_by(:tags => 'apple') そして、こんな問い合わせでさえ可能です。: Videos.select do |video| video.tags.include?('football') && !video.tags.include?('soccer') end 入るにはこう: YouTubeG::Client.new.videos_by :tags => { :include => ['football'], :exclude => ['soccer'] } 悪くない。Nic 博士の提供したジェネレータで、アダプタ acaffold を吐き出すようになります。: $ ambition_adapter ambitious_youtube == Future School == いくつかのソースを示すことでアダプタのためのアイデアを得ましたか? コメントを投稿してください。 クールなアダプタ、高級なトリック、新しい機能の残りに遅れをとる積もり無いと信じてください。 関わりたいですか? 私が言ったように、いつもリストと GitHub レポジトリがあります。バグは Lighthouse にあり、thisaways レポジトリのクローンを作ることが出来る: $ git clone git://github.com/defunkt/ambition.git どんなに遠くに来たことでしょう。そしてどんなに遠くへ行こうとしているでしょう。 ここからです。

表示オプション

横に並べて表示:
変化行の前後のみ表示:
記事メニュー
人気記事ランキング
目安箱バナー