Code Archive Skip to content Google About Google Privacy Terms
Ruby1.9.1リリース 2009年1月、Ruby1.9.1がリリースされました。Ruby1.9系列初の安定版とされるリリースです。Ruby1.9系列は、従来のRuby1.8系列と比べて、次のような特徴を持っています。 高速化や省メモリ化といった最適化 多言語化をはじめとするさまざまな機能拡張 文法の改良・拡張 その他、気の利いた機能 なかでも、「YARVによる高速化」と「M17N対応(多言語化)」は有名で、聞いたことのある人も多いと思います。 しかしRuby1.9には、他にも様々な改善や新機能が数多くあります。今回執筆を担当する、第1回、第3回、第5回では、あまり知られていない新機能にもスポットをあてつつ、Rubyの新機能を駆け足で紹介したいと思います。 YARV(Yet Another Ruby VM)による高速化 Ruby1.9のインタプリタは、笹田耕一氏が開発している仮想機
まずはネストという言葉に関する定義の問題ですが、 諸橋さんが書いているように 、PostsコントローラはComments コントローラを集約(aggregates)しますが、 内包(compose)する訳ではありません。 たとえば、管理画面に対応するAdminコントローラから、 Commentの削除や修正を行う場合に、AdminコントローラからCommentsコントローラを集約する事を考えると、その必要性が分かりやすいと思います。 PostsコントローラにCommentsを制御するコードを書いてしまう(内包してしまう)と、 Adminコントローラで同じ事をする必要が出来た場合に、 同じようなコードを書く必要が出てきます。 Don't Repeat Yourself! 結果として、メンテナンス性の悪いコードが出来上がります。 この事が、Postsコントローラの中でCommentsリソースを制
うわっ この人も見ているわwww http://d.hatena.ne.jp/lov2much/20090120/1232443661 どうもです。先日はお疲れ様でした。 まとめ なんかわかりあえてきた気がする map.resorcesをネストさせて、それを使うのが好みです。 そうするとテンプレートの選択とかがむずい おまけ: 検索はindexアクションで map.resourcesの私なりの解釈は(レシピのはずなのに)Railsレシピブックにいろいろ書きましたので、ご覧いただければと思います。 本題 「ネストする」と「内包する」は私のほうも使い方が曖昧でしたね。すみません。 「内包する」はあくまでCommentはPostの一部であり、Commentそれ自体では存在しえないというかシステムとして直接は扱わないというのを指す感じです。 対して「ネストする」は「集約する」と同じような意味で使っ
つい先日、Rubyで書かれたDitzという分散型のITS(Issue Tracking System)がリリースされたようです。 http://ditz.rubyforge.org/ 上のサイトをご覧になれば分かるかと思いますが、基本的にコンソールベースです。最近はtracとかredmineとかwebベースのITSが流行っているので、この時点でやや意表をつかれた感がありますが、驚くべきはその管理方法。ditzがやっていることは単純に手元のbugs.yamlを編集し、後はbugs.yamlをdarcsとかgitとかの分散型のバージョン管理システムを使って皆で共有という丸投げ方式。こうなると、じゃあbugs.yamlの内容に衝突が起きたらどうするの?とすぐに思うわけですが、その場合は普通にbugs.yamlを手作業で編集してね、という清々しい割り切り方をとっています。 ditzの利点は以下のよ
何気なくTwitterのタイムラインを見ていたら、 wycatsとd2hがMerbがRails3にマージされるというお知らせをしてました。 http://twitter.com/wycats/statuses/1074903497 http://twitter.com/d2h/statuses/1074904219 Rails And Merb Merge Today is a fairly momentous day in the history of Ruby web frameworks. You will probably find the news I’m about to share with you fairly shocking, but I will attempt to explain the situation. Merb gets merged into Rails
常德市环保机械设备教育中心产品不仅畅销国内20多个省、市、自治区,并且远销东欧、中东、非洲、南亚、东南亚、西亚、澳洲、南美洲、北美洲等几十个国家和地区ink1">其产品和技术广泛成功应用于二片罐内全喷、三片罐内全喷、三片罐焊缝内外补涂、盖子切线喷涂、电池钢壳内喷涂、200L钢桶内外喷涂、轮胎胎面/胎侧/端面、内壁喷涂、机车车架/车厢喷涂、铝型材/建材喷涂、建筑喷涂、家具喷涂等行业和领域。相配套的产品有诺信(
REXMLが遅いらしいけど、どのくらい遅いのかなと思って実験。 (LibXMLのドキュメントにも書かれてたけど。) ■entry100件×10回パースを繰り返してみる。 require 'rubygems' require 'xml/libxml' require 'atomutil' require 'time' require 'net/http' proxy = 'プロキシURL' port = プロキシポート番号 uri_str ='atomfeedのURL'+'?max-results=100' #100件とってくる。 uri = URI.parse( uri_str ) rsp =nil req = Net::HTTP::Get.new uri.request_uri Net::HTTP::Proxy(proxy,port).start(uri.host, uri.port)
その中でも直近の大規模なオープンソースプロダクトである Plagger はまさに Perl Hacker の教科書とも言えるべき存在だ。 http://d.hatena.ne.jp/tokuhirom/20080719/1216423454 ということで、Perl では「Plagger」が お手本となるソースとしてお勧めされているようなのだけど、 Ruby には Plagger のようなお手本となるソースはないのだろうか? 先日行われた Yugui さんと角谷さんのトークセッションでは BitClustなどの青木さんが最近書かれたライブラリのソースがお勧めされていた模様。 青木さんの書かれたライブラリはLoveRubyNetに一覧がある。 でもこのトークセッションでは「Perl の Plagger にあたるものが Ruby にはない」とも言われていたそう。 そういえば前に id:rubik
この記事は、先日開催した 第3回 RHGの逆襲 のまとめみたいなものである。と、同時に『初めてのRuby(仮題)』の宣伝である。 クラス、その例外、そのトリック Rubyはクラスベースのオブジェクト指向だから、メソッドの情報はクラスに属している。インスタンスメソッドを呼び出すときには、そのオブジェクトの属するクラスを調べて、そのクラスの持っているインスタンスメソッドの中から探す。 でも、Rubyの場合は例外がある。1つはモジュール。モジュールはクラスではないのに、でもインスタンスメソッドを提供している。1つは特異メソッド。特異メソッドは特定のインスタンスに直接所属するメソッドだ。 でも、ここには実装上のトリックがある。Rubyにとってはモジュールのインスタンスメソッドも特異メソッドも、等しくクラスに属するインスタンスメソッドなんだな。 モジュール モジュールをクラスにincludeすると、
Rev Rev is an event library for Ruby, built on the libev event library which provides a cross-platform interface to high performance system calls . This includes the epoll system call for Linux, the kqueue system call for BSDs and OS X, and the completion ports interface for Solaris. Rev also binds asynchronous wrappers to Ruby‘s core socket classes so you can use them in conjunction with Rev to b
#とりあえずオープンソースではMP4/H.264は一番乗りかな? 先日の Re:RTMP(MP4/H.264)サーバをPure Rubyで書いた - @takuma104 log ですが,ソースコードを若干整形してオープンソース化しました。まだかなりテスト版な感じですが。名前ですが、あまり深く考えずにRubyIZUMIと名付けました。 Google Code Archive - Long-term storage for Google Code Project Hosting. subversionからチェックアウトするか、tarで持って来て展開かどちらかで。 使い方は,ほとんど先日のビデオと同じですが、若干コマンド名が違っていて、 $ ruby server.rb mp4file.mp4とかしてください。ブラウザでこのmp4を見るには、付属のplayer/Player.asをrascut
RTMP(MP4/H.264)サーバをPure Rubyで書いた - @takuma104 log ですが、若干はでブで反響があったみたいなので、Rubyで動いていることが(ちょっとは)分かるかもしれないビデオを作りました。 YouTubeの解像度だとかなり見にくいので、オリジナルのものも用意しました。 http://vixy.tv/images/izumi_h264_demo.mp4 途中でFlashのAS3ソースを見せているのは、プレイヤー側に細工無いですよー&rtmpスキーマですよーといいたいがためのものです。rascutでその場でコンパイルして、rascutのサーバ機能でそのままプレイヤーとして使っています。 そう、「ソース出してほしい」の件ですが、超絶に悩んでます。今の感じだと「前向きに検討します」位かなあ。比較するのもなんですが、あの今は無きネットスケープ社とかもたぶん同じ悩み
http://www.rubywaves.com/tutorial チュートリアルがあったので訳してみた。まだパート1だけ。 ここだけ見るとまだ Rails との差はあまり無いです。 - Waves アプリを作るのに,一番手っとり早くて簡単な方法は,こんな風に waves コマンドを使うことです。 ~ $ waves blogこれはデフォルトの Waves アプリを blog というディレクトリの中に作ります。次に,このディレクトリの中の configurations ディレクトリにある default.rb を修正して,データベースに接続できるようにする必要があります。 デフォルトはこんな感じ。 module Blog module Configurations module Default database :host => 'localhost', :name => 'blog',
Rubyに人気があるため、Ruby on RailsやMerb、CampingといったWebフレームワークが誕生した。Wavesという新しいWebフレームワークが最近リリースされたが、 Ruby開発者が興味を持って試してみようと思うような特徴が、Wavesにはある。 WavesはRuby on RailsのようにMVCフレームワークであり、Request Lambda(source)と呼ばれるものを使うが、各マッピングはルールとブロックで構成されている。ルールが要求と一致すると、そのブロックが実行される。 Wavesに独特な特徴の1つである。 Wavesのこの他の優れた特徴には以下が挙げられる。 真のコード再ローディング ホットパッチング クラスタのサポート スレッド・セーフティ InfoQは、Wavesの開発者Dan YoderとWavesについて話す機会を得た。 Robert Bazi
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く