2010-01-01から1年間の記事一覧

RoR入門第5回

ちょっと間が空いてしまったが第5回。 ランダム数値発生メソッド。 rand インスタンス中からプロパティにアクセスするときに強制的にアクセサメソッドを使用させる方法。 self.プロパティ名 動的ファインダメソッド ActiveRecordで下記のようにすると列名で…

PDT + XAMPP + XdebugでPHP開発環境を構築する

php

突然だが、rubyからPHPに浮気しなければならなくなった。 というわけでPHPの環境を構築してみることにする。 前提 Windows7 Eclipse3.5 (Aptana Studio入り) PDTのインストール うちのEclipseにはAptanaが入っているので、以下の手順でインストールした。 […

RoR入門第4回

部分テンプレートが使用できる。 部分テンプレートはファイル名を「"_" + 部分テンプレート名」とする。 部分テンプレートに渡した引数は部分テンプレート名と同じ名前の変数でアクセスできる。 <%# 単項目用 %> <%= render(:partial => 部分テンプレート名,…

SVNのコメントに記述したRedmineのチケットNoにチケットのタイトルを追加する

RoR入門はお休みしてsubversionのフックスクリプトを試す。 SVNのコミットコメントに記述したチケットNoをキーにしてRedmineを検索し、「#チケットNo チケットタイトル」という形で表示してみる。 Unixでやりたいけれど、会社の環境がWindowsなのでWindows向…

RoR入門第3回

RoRではセッション情報をデータベースに保管することが簡単にできる。 すごいな。 セッションをデータベースに格納することのメリットはスケールしやすいこと。 ModelだからといってActiveRecordのサブクラスにする必要はない。 普通のオブジェクトのModelで…

RoR入門第2回

ValidationはModelで行う。 画面入力値に何らかの処理を加えてDBに保存したい場合はどうなるのか? class Product ActiveRecord::Base validates_presence_of :プロパティ名 end 独自のバリデータを定義する際はvalidateメソッドにバリデーションメソッドの…

RoR入門1

今日からはRuby on Rails入門。 redmineをカスタマイズしたり、プラグインを作ったりできるようになりたいのだ。 使用する教科書はこちら。RailsによるアジャイルWebアプリケーション開発作者: 前田修吾出版社/メーカー: オーム社発売日: 2006/02/25メディア…

EclipseLink1.1.3 + Oracleでのおはなし。

下のようなJPQLを動的に生成しました。 SELECT e FROM Employee e LEFT OUTER JOIN FETCH e.company するとあろうことか、下記のようなSQLが。 SELECT * FROM EMPLOYEE t0, COMPANY t1 WHERE t0.COMPANY_ID =* t1.ID ORA-00936: 式がありません。 なんじゃそ…

Ubuntuにredmine1.0をインストールする2

今日は初期設定の登録から。 RAILS_ENV=production rake redmine:load_default_data ん?なんかログが記録できないとか言われたぞ。 見ると権限がみんなrootのままだ。 とりあえずredmineユーザで動かせるようにしよう。 adduser redmine chown -R redmine:r…

Ubuntuにredmine1.0をインストールする

せっかくなので開発中の1.0系をインストールしてsubtaskingを試してみよう。 やり方は本家の公式に書いてある。 http://www.redmine.org/wiki/redmine/RedmineInstall http://www.redmine.org/wiki/redmine/Download リポジトリからredmineをチェックアウト…

Ubuntuにrubyをインストール

今日からはredmineでプラグインを作ってみる。 まずはVMWare上のUbuntu8.04にruby1.8.7をインストール。 (Ubuntuもそろそろアップデートしないといかんな…) やりかたはこちらのサイトの通りにした。 http://samneang-ngeth.blogspot.com/2009/08/update-ru…

ユニットテストは都市伝説か?

ここ数週間の日記は単体テストを自動化するために調べてきたことを書いた。 テストは自動化されている方がいい。 それはそうなのだ。 僕も過去に単体テストを自動化して、テストに守られながら開発を行ったことがある。 その開発はとても安心感があって安定…

非ノイマン型コンピューターが本当に必要な理由

僕は非ノイマン型コンピューターについて違和感を持っていた。 非ノイマン型コンピューターで検索をかけるとたくさんの検索結果が得られるが、その必要性については納得のいく回答を得ることができなかったからだ。 メモリのアクセス速度が律速になってしま…

JsUnitとJsMock

Javascriptのテストもどうにかしたいと思って調べてみた。 JavascriptのテスティングフレームワークはJsUnit、QUnit、YUITestが有名どころらしい。 その中でもJsUnitが今の僕には最も敷居が低そうだった。 QUnitはテスト対象側で使っているprototype.jsとバ…

DbUnitをつかう3

「DbUnitをつかう」というよりは「MySQLをつかう」になっているような気もしなくはないが…。 結局、ロールバックをしているのにもかかわらず変更が勝手にコミットされるのは、MySQLのEngineがMyISAMだったから、ということのようだ。 MyISAMはトランザクショ…

DbUnitをつかう2

トランザクションがロールバックされない理由がわかってきたような気がする。 データベースにMySQLを使用しているのだが、こいつの設定のデフォルトがAUTOCOMMIT=1であるせいのようだ。 っていうか、さらに、DataBaseEngineがMyISAMだ。 MyISAMはトランザク…

Java Cloud Meeting in Tokyo 2010に行ってきた

1日遅れだけど、レポートを書く。 Seasar3がやってくる(ひがさん) Force.comがVMWareと組んだ。 Google App Engine for Businessも発表になった。 2011年あたりからエンタープライズクラウド界隈も活性化するだろう。 だが…どちらもSpringベースである。 S…

DbUnitをつかう

データベースのテストをより簡単にするためにDbUnitを使ってみる。 が…DbUnitで挿入したテストデータのロールバックがうまくいかない。 TransactionAwareDataSourceProxyは使っているのだけれど…。

環境依存の設定がべた書きされたソースだってmavenで環境ごとにビルドしたい

今のプロジェクトではWEBサービスクライアントのソースにWEBサービスのnamespaceやらパスやらがべた書きされている。 それを環境ごとに使い分けるため、環境ごとにその環境専用のSVNのブランチを切り、WEBサービスクライアントに環境に応じたnamespaceやらパ…

src/main/webappの一部のリソースをWARから除外したい2

昨日の続き。 こうするとindex.jspがWARにコピーされるようになってしまった。 <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-war-plugin</artifactId> <configuration> <excludes>index.jsp</excludes> <webResources> <resource> <directory>src/override/webapp</directory> </resource> <resource> <directory>src/main/webapp</directory></resource></webresources></configuration>

いくらNULLがバグの素だからって、スペースで埋めるのはどうかと思うんだ

上司はCOBOLの人で、データベースのカラムを全部NOT NULLにして、文字列は初期値をスペースで埋めたがる。 何かおかしい。おかしいと思う。気持ち悪い。 ねえ、そう思うでしょう? でももっと論理的な理由を言わないと通じないので考えた。 使うときに必ずtr…

src/main/webappの一部のリソースをWARから除外したい

src/main/webapp/index.jspがテスト用の簡易メニューになっており、本番環境では別のメニューを使用するのでこれをWARから取り除きたい。 pom.xml <profiles> <profile> <id>development</id> <activation> <activeByDefault>true</activeByDefault> </activation> <properties> <war.excludes>""</war.excludes> </properties> </profile> <profile> <id>production</id> </profile></profiles>

Fizz Buzz

今日、現場に新しいPGが入った。 僕の会社の別のプロジェクトからよこされた人だ。 僕は、彼はそれなりにできる人だ、というような話を前評判として聞いていたので少し期待していた。 しかし実力を見るため試しにFizzBuzzを実装してもらって残念な気分になっ…

Spring + EclipselinkをJunitでテスト

昨日の続き。 ユニットテストのない現場にはもううんざりなので、JunitでSpring + Eclipselinkのテストのやり方を調べる。 たったそれだけのこと、と思うだろうか。 でも今のうちの現場にはたったそれだけのことができない。 あと僕もそれだけのことなのに、…

久々の日記

約1年続いたデスマーチから生還。 すっかり放置した日記だけど、また何か書いてみる。 ユニットテストのない現場はもうこりごりなのでなんとかユニットテストをできるようにがんばってみる。 まずはJUnitにSpringのBeanをセットできるようにしてみる。 @RunW…