![http://blog.inouetakuya.info/entry/20130923/1379930345](https://cdn-ak-scissors.b.st-hatena.com/image/square/7643480ee75e562cbf9115b5adbbda60f1519178/height=288;version=1;width=512/http%3A%2F%2Fecx.images-amazon.com%2Fimages%2FI%2F51rcnZJm8PL.jpg)
広島Ruby勉強会 #034で使用したネタの文に書きなおしました。 「Rails の自動読み込み規約を支える技術」と若干煽っておりますが 以下の内容はソースコードを読んで判断したことですべて正しいとは保証できないので参考にする程度にお願いします。 というわけで、Rails の自動読み込みの話をしたいと思います。 ### Rails のファイル読み込みの規約 Rails には[設定より規約](http://ja.wikipedia.org/wiki/%E8%A8%AD%E5%AE%9A%E3%82%88%E3%82%8A%E8%A6%8F%E7%B4%84) という設計パラダイムが採用されています。 ファイルの自動読み込みの規約は > 読み込みされていないクラス/モジュールがあった場合、名前から読み込みするファイルを判断できる というような規約があります。 例えば ``` Hoge -> '
12/09/05 監視対象のWebサービスのURLを間違えていたため修正しました RailsのAdvent Calendarを待ちわびていました. 今回は,WEB+DBの最新号のRails高速化記事で紹介されていたパフォーマンス監視サービスのNew Relicを使ってみた話です. New Relicは.newrelic_rpmというgemをインストールすることにより,レスポンスタイムやスロークエリなど,パフォーマンスに関するさまざまな統計情報をNew Relicのサイトでみることができます. Railsに限らずPythonやJavaなどいろいろな言語に対応しているようです. さらに,HerokuやDotCloudなどのPaaSにも対応していてやばい. HerokuのNew Relicプラグイン Herokuにホストしたアプリケーションを監視するためにはNew Relicプラグインを導入する
Deploy web apps for testing, fast. One-click preview environments for each branch of code. For software developers, product managers, testers and clients. Save time, reduce bugs and iterate faster.
Railsエンジニアになってから1年半くらいが経ち、社内のRailsのプロジェクトを全部で5つくらい触って、今やってるAbilie*1でようやく人並みにテストを書いてる気がしてきたので、現時点でやってるテストの方法をまとめておく。 テストのルール的なの rspecでは必ずモデルのテストは書くようにしてる。ヘルパーも大体書いてるけど、コントローラやルーティングのテストはあまり書いてない。 というのも、コントローラーのコードを極力短くしてモデルを太らせているのでコントローラのテストはあんまり意味が無い気がしていて、その代わりにCapybaraでテストを書いておけば十分なんじゃないかなと思ってきたから。Capybaraは書いてるので、そういう意味では書いてるとも言える。 社内の管理者だけが使える管理画面も作ってるけど、そっちはテストあんまり書いてない。ここは動かなくなっても一般ユーザーには影響が
皆さんはキャッチボールは好きですか? 私はバスケットボールの方が好きです。 キャッチボールは、自分と相手双方がボールをうまくキャッチできるように投げる必要があります。これは、サーバーとクライアントの間でも同じで、クライアントから投げられたボール(リクエスト)をサーバーは正しく投げ返す(レスポンス)必要があります。 ここで、サーバーがボールをあさっての方向に投げたり、異常なスピードで投げ返すとどうなるでしょうか。おそらくクライアントはそのボールを取ろうとしますが、追いつけずにボールを落としたり、どこかにぶつけたりしてしまうでしょう。 今回は、HTTPについて、どうして正しくレスポンスを返さないといけないのかということについて、Rackを使用して解説していきます。 対象読者 Webアプリケーション開発に興味のある方、これから開発を行おうとしている方 Rackについて まず、今回使用するツール
IPA(独立行政法人情報処理推進機構、理事長:藤江 一正)に設置したRuby標準化検討ワーキンググループ(委員長:中田 育男 筑波大学名誉教授)にて原案作成を進めてきたプログラム言語Rubyの技術規格書が、JIS規格、JIS X 3017として、2011年3月22日に制定されました。 JIS規格化されたことにより、Rubyの相互運用性(*1)が向上し、Rubyを用いてより生産性の高いプログラム開発・システム開発が可能になります。 概要 Rubyは1993年に日本で発案され、開発が開始された、日本発のプログラム言語です。豊富な機能と簡便さとを併せ持ち、高機能なアプリケーションを簡潔に記述できる等の特長から、セールスフォース・ドットコムや楽天など、国内外に有名な数多くの会社のアプリケーション開発やシステムの開発に用いられています。また、島根県や福岡県などは、Rubyを核とした地域ソフトウェア産
RepubはRuby製のオープンソース・ソフトウェア。iPad、Kindleの登場によって電子書籍市場がにわかに慌ただしくなっている。既存の書籍、雑誌、単行本などを電子書籍化するのが一般的になっているが、ネット上にも既に膨大な文書データが存在する。 データを取得しているところ 例えばニュースサイトやメディアサイトを電子書籍化すれば、オフラインでも閲覧できるようになる。Webサイトを印刷したりPDFにするように、電子書籍にできたとすればコンテンツは無限とも言えるだろう。それを可能にするのがRepubだ。 RepubはRubygemsを使ってインストールするソフトウェアで、repubコマンドにURLを引数として渡せばデータを取得し、ePubファイルとして出力する。XPathを使って取得部分を操作したり、執筆者情報などを付与することも可能だ。スタイルシートの設定もできる。 できあがった電子書籍
The last few weeks have been a wild ride. Starting in January, I’ve been releasing a chapter at a time here on the RBP blog, and many of those chapters were pretty well commented on. Just for the sake of completeness, here’s a link back to each of those posts: Chapter 1: Driving Code Through Tests Chapter 2: Designing Beautiful APIS / Chapter 3: Mastering the Dynamic Toolkit Chapter 4: Text Proces
IPA(情報処理推進機構)は9月7日、「自治体・企業等の情報システムへのRuby適用可能性に関する調査」の報告書を公開した。同調査ではRubyについて、自治体や企業などの業務システムの開発といった分野を想定し、機能面・非機能面からその適用性の評価を行った。 調査を実施したのは、「Enterprise Ruby コンソーシアム(テクノプロジェクト、みずほ情報総研)」。検証環境は、富士通の「Platform Solution Center」に設けられた検証ルームと検証用機器が用いられた。 富士通「Platform Solution Center」のサーバルームと検証ルーム 同検証の目的は、Rubyを用いた「入出力処理」、入出力処理によって構成される「アプリケーションとしての処理プロセス」を想定したベンチマークを取得し、幅広いアプリケーション開発にRubyを用いる際に参考となる計測データやチュー
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Tech sovereignty has become a looming priority for a number of nations these days, and now, with the demand for compute power at its highest level yet, a startup working… It’s not the sexiest of subject matters, but someone needs to talk about it: The CFO tech stack — software used by the chief financial officers of the world — is ripe for disruption. That’s according to Jonathan Sanders, CEO and
http://github.com/spiritloose/Schenker 前に Ruby の Sinatra を触ってみていいなとおもったので最近作り始めた。 ひととおり機能はそろってきたので公開してみる。 HTTP::Engine + HTTP::Engine::Middleware + HTTPx::Dispatcher + Sinatra風インターフェース みたいな感じのフレームワーク、っていうかDSL。 # myapp.pl #!/usr/bin/env perl package MyApp; use Schenker; get '/' => sub { 'Hello, world!'; }; get '/hello/:name' => sub { my $args = shift; "Hello, $args->{name}!"; }; で `./myapp.pl` すると動
RSSフィードやWeb API、Mashupなどの単語が注目を集める中、Webクローラーを通じて外部のWebサイトにあるデータをかき集め、それを解析して別な形にするというのはよく見られるものになってきた。 あるURLを指定し、そこからリンクされているURLを一覧表示できる そうした数々のシステムの中で、クローラーとなる基盤は大きな違いはない。Webサイトのデータを取得し、次のリンクを洗い出して取得していくようなものだ。そうした共通動作部分を切り出したフレームワークがAnemoneだ。 今回紹介するオープンソース・ソフトウェアはAnemone、Webクローラを開発するためのフレームワークだ。 Anemoneは任意のWebサイトにアクセスし、その内容を解析するWebクローラーだ。例えばあるURLに付けられているリンクを一覧で取得するようなことも簡単にできる。外部サイトなのかどうかも区別できるの
以下の文章は、Martin FowlerによるRuby at ThoughtWorksの日本語訳である。 ThoughtWorksは、2006年から本格的なプロジェクトにRubyを使い始めた。2008年の終わりまでには、Rubyプロジェクトの数は41個になった。この経験から我々は何を学んだのか。QConの講演に備えて、私は調べてみることにした。ここでは、Rubyの生産性、スピード、保守性など、よくある質問に対する現時点での我々の考えについて述べていく。現時点での我々の結論としては、Rubyは十分に使えるプラットフォームであり、様々な形態のアプリケーションに利用することを真剣に考慮すべきである、というものだ。特に、Ruby on Rails を利用したWebアプリケーションにおいてはそうである。最後に、Active Record のテスティングに対する考えなど、技術的な教訓についても触れる。
http://martinfowler.com/bliki/DynamicTypeCheck.html 2009年6月2日 最近、私の会社の開発者の何人かが、Rubyのような動的言語では、たくさんの動的型チェックを使っているという非難に遭いました。それは、事実上、自分で型システムを書くはめになっているようなものだと。そこで彼らは考えたのです。私たちは実際のRubyコードをたくさん書いてきたので、どれくらいの頻度で、動的型チェックを書いているのだろうかと。マイケル=シューバートがそのデータを集めました。 下の表にそのデータが含まれています。動的型チェックとは、「is_a?」「kind_of?」「instance_of?」のメソッドの利用だとして定義しました。コード行数(LOC)は、Railsのrake statsコマンドから作りました。
「JVM上で不可能なことなど何もない」(Nothing is impossible on the JVM)――、こう話すのはJRubyでコア開発メンバーを務めるチャールズ・ナッター氏だ。2009年6月1日、米国サンフランシスコで開催されたCommunityOne(JavaOne)で講演したナッター氏は、JavaVM上にRuby処理系を実装した経験について話した。当初まったく実現不可能に思えたプロジェクトで、どう障害を乗り越え、その取り組みがいかにJavaプラットフォームに影響を与えているかについて解説した。講演のタイトルは「不可能を超えて:JRubyはいかにJavaプラットフォームを進化させたか」(Beyond Impossible:How JRuby Has Evolved the Java Platform)だ。 Ruby on JVM!? そんなの実現不可能! もともとJava言語向
Ruby on Railsでの開発もラクラク! - RubyMineとは RubyMineはJetBrains社が提供する、Rubyアプリケーションの開発に特化したIDEだ。2008年11月27日(ロシア時間)にRubyMine build 500のパブリックプレビュー版が公開された。以後バージョンアップを重ね、去る4月9日(米国時間)に満を持してRubyMine1.0となった。 主な機能は次のとおり(RubyMine Overviewより抜粋)。 Intelligent Editor: コード補完、コードスニペット・自動リファクタリング Project Navigation: 幅広くプロジェクトを見渡せ、1クリックでジャンプ Error-Free Coding: オンザフライでのコード解析・型推論 Web Development: Ruby on Railsに特化した編集機能 そのほか、
$Id: index.html,v 1.6 2004/07/20 23:08:12 aamine Exp $ この文書は書籍『Rubyソースコード完全解説』のHTML版です。 ただし初校段階の原稿をベースにしているため、 書籍では修正されている間違いが残っている場合があります。 予め御了承ください。 2004-02-16 に全章を公開しました。 目次 まえがき 序章 第 1 部「オブジェクト」 第 1 章「Ruby言語ミニマム」 第 2 章「オブジェクト」 第 3 章「名前と名前表」 第 4 章「クラス」 第 5 章「ガーベージコレクション」 第 6 章「変数と定数」 第 7 章「セキュリティ」 第 2 部「構文解析」 第 8 章「Ruby言語の詳細」 第 9 章「速習yacc」 第 10 章「パーサ」 第 11 章「状態付きスキャナ」 第 12 章「構文木の構築」 第 3 部「評価」 第
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く