月別: 2010年3月

8.7 記憶割当て, 演習8-7 K&R プログラミング言語C

8.7 記憶割当て malloc, free の簡単な実装を学ぶ。 malloc 時に要求サイズが空きブロックより小さい場合に、後側からブロックを使用していくことに気がつかず、理解するのに時間がかかった。 後側からブロックを使用していくのは、空きリストのポインタを変更しなくてもよいからだろうか。 演習8-7 malloc での妥当なサイズの条件がいまいちわからない。 負の値が渡された場合、unsi…続きを読む

Rails アジャイル本 第11章 タスクF:ユーザ管理(Initial Login)

ユーザが1人も登録されていない場合に、フリーアクセスできるようにする。 アクセス制限のフィルタリング(authorize)時にユーザ数を確認して処理する。 ユーザ数が 0 ならばメッセージを表示させ、サイドバーに管理機能へのリンクを表示させる。 app/controllers/application_controller.rb def authorize if User.count.zero? f…続きを読む

Rails アジャイル本 第11章 タスクF:ユーザ管理(checkout アクション)

リクエストの HTTP メソッドによって checkout メソッドの振舞いを分けさせる。 GET メソッドの場合はカートの中身の状態(空か否か)によってチェックアウト・フォームの表示を制御する。 POST メソッドの場合は @order を保存する。 app/controllers/store_controller.rb def checkout if request.post? # save …続きを読む

Rails アジャイル本 第11章 タスクF:ユーザ管理(ユーザ更新機能)

『Rails によるアジャイルWebアプリケーション開発 第11章 タスクF:ユーザ管理』の自由課題のユーザ更新機能の作り替え問題。 app/views/users/new.html.erb テンプレートを app/views/users/edit.html.erb にコピーして submit ボタンのラベル部分のみ修正する。 ただ、このままだと password_non_blank のバリデーシ…続きを読む

演習8-4 K&R プログラミング言語C

演習8-4 /* fp に対してファイルの位置を指定する * バイナリ・ファイルに対しては、origin から offset 文字だけ離れたところにセットする * origin には MY_SEEK_SET (始め), MY_SEEK_CUR (現在位置), MY_SEEK_END (ファイルの終り) が指定可能 * テキスト・ファイルに対しては、offset はゼロ、または ftell (この場…続きを読む