サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
Wikipedia
blog.designrecipe.jp
Table of Contents Open Table of Contents しっかり抑えておきたいと思うメタプログラミング ActiveRecord の簡易実装 (ちょっとした検索だけ) ポイントメモ 1. 動的なクラスの生成(しかもサブクラス) 2. 動的なアクセサの生成とコンストラクタによる値のセット 3. クラスインスタンス変数の利用とそのアクセサの生成 4. Object#send を使った private メソッドへのアクセス しっかり抑えておきたいと思うメタプログラミング Ruby のメタプロミングは奥が深くて楽しいが、やり過ぎると暗黒面に堕ちてしまう。。 効果的な使い方を心掛けていきたい。 Rails でもよく利用されているように、CoC (Convention over Configuration) と組み合わせることで更に効果的となる。 なかなかとっつきにいところも
Table of Contents Open Table of Contents Rack とは Rack プロトコル Rack を試してみる Rack のミドルウェア Rack のその他の特徴 参考サイト Rack とは Rack とは、(Web) アプリケーションと Web サーバーを繋ぐインターフェイスになる。 この Rack だが、ほぅ、そんな考え方もあるね、というレベルでの認知だったが、Rails が v2.3 から Rack 対応となったことも受け、どんなものなのか見てみることにした。 本家である、Rack: a Ruby Webserver Interface のサイトの言葉を借りると、 Rack provides a minimal interface between webservers supporting Ruby and Ruby frameworks. Rack
Written by @dr_taka_n at 2009/07/19 01:47 [git, ruby, sinatra] 「Git のリポジトリブラウザって何かない?」ということで確認してみた。 ちなみに・・・ Git 本体にも gitweb というリポジトリをブラウズできる cgi スクリプトが付属している。リポジトリのルートディレクトリで、 $ git instaweb --httpd webrick [2009-07-19 00:06:10] INFO WEBrick 1.3.1 [2009-07-19 00:06:10] INFO ruby 1.8.6 (2008-08-11) [i686-darwin9.6.0] とやると起動してくれる。詳細はヘルプで。 $ git help instaweb デフォルトでは、HTTP サーバは、lighttpd が使用される。上記は、web
これまで Radiant に何度か触れながら、そもそも Radiant って何?というメモを残していなかったので、改めて。 Table of Contents Open Table of Contents Radiant とは? Radiant の特徴 Radiant のインストール Radiant プロジェクトの作成 (蛇足) CMS として、Radiant が日本でなぜブレイクしないのか Ruby On Rails がベースになっている 日本語による情報の不足 + 国際化対応の遅れ Ruby On Rails を十分なパフォーマンスで稼動させる手軽な環境(サービス)の不足 Radiant コアがシンプルすぎる? 開発者でない方には少々扱いが難しい? Radiant とは? Radiant CMS Radiant is a no-fluff, open source content ma
Ruby の場合、組み込みライブラリの net/http を使用すれば、如何ようにでもできるのだが、もう少し扱い易くシンプルなインターフェイスで操作したい。これまで、open-uri を拡張した rest-open-uri を使用していたのだが、heroku のクライアントで使われていた REST Client を使ってみることにした。 adamwiggins’s rest-client at master - GitHub A simple REST client for Ruby, inspired by the Sinatra‘s microframework style of specifying actions: get, put, post, delete. gem でインストールできる。 $ sudo gem install rest-client Password: Suc
Sinatra ベースのアプリを調べており、その一環として、あちこちで名前を聞く手頃なアプリを見てみることにする。 Table of Contents Open Table of Contents とってもシンプルなブログツール Scanty 特徴 原材料 インストールと設定、そして起動 投稿してみる オリジナルに変更を入れておく 入力項目の必須チェックぐらいは入れておく タイトルで日本語の表示を可能に ソースコードの表示部分の変更 感想 とってもシンプルなブログツール Scanty 「スキャンティ」と片仮名で書いてしまうと、若干いやらしくも響くが、とてもシンプルな Sinatra ベースのブログエンジンだ。 adamwiggins’s scanty at master - GitHub 作者本人もこのツールを利用してブログを書いているようだ。 a tornado of razorblad
誇張表現でもなく、サービスの利用開始の手続から公開まで、本当に 5 分以内でできてしまう。。 Heroku Heroku は、“instant ruby platform” と言われるもので、ホスティングサービスではあるが、“準備不要なデプロイ環境” である。 ローカルで作成した Ruby アプリケーション(Rails、Sinatra、Merb etc)をコマンド一発で公開できるプラットフォームを提供する。 そのインターフェイスも素晴らしいが、サービスの公開にあたり、サーバ側のシステム管理作業を行う必要はなく、また、自動的にスケールしてくれる仕組みも提供している点が素晴らしい。 存在自体は以前小耳に挟んでいたのだが、 Hosting Radiant and Spree - Radiant CMS: Dev Google グループ で触れられていたの読み、試してみることにした。 Heroku
spree のソースを見ていて遅らばせながら初めて知った Rails の Plugin Resource Controller。 RESTful な設計を行うと、コントローラに書くことの大半は同じような内容となる。 アクションに index, show, new, edit, create, update, destroy を持ち、 モデルを使用して必要な情報を集め、テンプレートを使ってレンダリングする。 Rails のポリシーである DRY に従って、本来書きたいビジネスロジックだけに集中することを可能にしてくれるのが ResourceController だ。 以下は Rails v.2.3.2 の scaffold にて生成した PostsController になる。 class PostsController < ApplicationController # GET /post
Table of Contents Open Table of Contents The RSpec Book モックとスタブ 関連するサイト The RSpec Book 海外では多くなってきているベータ版ブック。まだ完成していない本なのだが、ベータ版ということで購入できる。流石に紙ではやらない(紙のベータ本をやっているところがあるにはあるらしい)が、章が埋まる度に電子媒体がアップデートされ、販売元にあるフォーラムに読者からの声、著者からの返答が書き込まれる。本の正式出版までの間に読者にお金を払わせた上で、レビューまでさせるという、なんともうまい商法だ。。 RSpec、Cucumber を手探り状態で試していたのだが、まとまった情報が欲しく、先月 RSpec の開発/メンテナンスのリーダーである David Chelimsky を始めとした凄腕スタッフによって書かれている RSpec B
Table of Contents Open Table of Contents Sinatra とは Sinatra の特徴 リソース指向(RESTFul)/URI がダイレクトに Ruby コードに紐付く Rack ベースである 感想 参考サイト Sinatra とは Rack を調べていた際、Ruby で書かれた軽量フレームワーク Sinatra も Rack をベースに書かれていると知る。そこで、Sinatra をちょっと確認してみた。 Sinatra Sinatra は、Web アプリケーションを作る際の軽さのインパクトで大きく話題をさらった。ちなみに、“Hello World!!” Web アプリケーションは以下の記述だけで済む。 hello_world.rb: require 'rubygems' require 'sinatra' get '/' do "Hello Wor
あのリーナス・トーバルズ氏がそれまで使用していたバージョン管理システムを使用できなくなったことを受け、代替のものを探していたが、どれもお眼鏡に適わず、「2 週間くれ」ということでその基礎部分を作ったという Git。 特にオープンソースの世界おいては、これまで以上の加速度と広がりがおこるのではないかと Secure source code hosting and collaborative development - GitHub を見ていて思う。ただ、非常に有用なものだと思えるのだが、慣れるのに時間がかかる。。 CVS から Subversion への移行はスンナリといったが、集中型と分散型の違いはあれど、Subversion から Git への移行には、それなりに敷居があるように感じる。 頭を整理するために、メモを書いておく。 Table of Contents Open Table o
Git リポジトリを Ruby のアプリのデータストアとして使ってみたいと思い、少し調べてみた。 Table of Contents Open Table of Contents Grit とは インストール Grit を使ってみる Git リポジトリを開く - Grit::Repo.new#### コミットオブジェクトを取得する - Grit::Repo#commits コミットオブジェクトを操作する - Grit::Commit ツリーオブジェクトを操作する - Grit::Tree、Grit::Blob Grit::Tree を取得するためのショートカット - Grit::Repo#tree Grit::Blob を取得するためのショートカット - Grit::Repo#blob 実体のファイルを名称で取得する - Grit::Tree#/ インデックスに追加してコミットする - G
この作業記録は 2008/07/13 に行ったものであり、現在の状況と若干異っている可能性もある。ただ、最近参照されているサイトの内容を見ていても、手順的には問題無いようなのでそのままの記載を残すことにする。(2009/04/21) もし、最近のバージョンで試してみて問題のある記述があった場合には、コメント頂けるとありがたい。 Table of contents Open Table of contents 環境と実施しようとしていること 事前準備 Ruby 本体のインストール RubyGems のインストール Rails のインストール sqlite 3 のインストール sqlite3-ruby のインストール RMagick のインストール 後記 環境と実施しようとしていること Cent OS のバージョン。 $ cat /etc/redhat-release CentOS relea
このページを最初にブックマークしてみませんか?
『Design Recipe 別館 Blog - Home』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く