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

Groovy 1.6 Release Candidate is available

大量のバグがFIXされてますねー。 http://jira.codehaus.org/browse/GROOVY?report=com.atlassian.jira.plugin.system.project:changelog-panel

Aspectj in Action: Enterprise Aop With Spring

もうすぐ2版出ますね。 Manning のサイトから Early Access Edition の購入ができるようです。http://www.manning.com/laddad2/ http://www.amazon.co.jp/dp/1933988053/

Kaizen and Kaizen Event Implementation

http://www.amazon.co.jp/dp/0131584561/

(祝)マウス生誕40年

マウスさんは1968年12月9日生まれ。 このたび40歳の誕生日を迎えたらしい。The mouse hits 40-year milestone http://news.bbc.co.uk/2/hi/technology/7768481.stm

First Spring Framework 3.0 milestone released

Spring Framework 3.0 M1 がリリースされたようです。 http://blog.springsource.com/2008/12/05/spring-framework-30-m1-released/おいら的には Java 5 or JEE 1.4 以上が必須になったのはうれしいかも*1。機能的には、EL や REST 等プレゼンテーション系に…

JBoss Cache 3.0.0 goes GA

http://jbosscache.blogspot.com/2008/11/jboss-cache-300-goes-ga.html

GroovyでPircBotを使ってIRCに接続してみた。

PircBot PircBot は、IRC用のBotをすばやく簡単に作成するための java のフレームワークです。 http://www.jibble.org/pircbot.php PircBot のダウンロード ここから PircBot の最新版をダウンロードします。 クラスパスの設定 クラスパスに pircbot.jar を…

Groovyでsmackを使ってGoogleTalkとjabberに接続してみた。

jabberもGoogle Talkもxmppプロトコルをサポートしているので、Google Talk から jabber にメッセージを投げてみました。 smack のダウンロード ignite realtime のここからsmackの最新版をダウンロードします。 クラスパスの設定 クラスパスに smack.jar を…

Groovyでアノテーションを扱う方法

アノテーション定義はGroovy1.6以降 Groovy1.6以上でないと Groovy でアノテーションの定義はできません。*1 でも、使うだけならOKです。 サンプル 漠然とアノテーションを使ってみても面白みが無いので、以下のようなありがちな状況を想定。 クラスのフィー…

SourceForge.JP が Git のサポートを開始

SourceForge.JP 上で Git のサポートを開始致しました。グループ毎に複数の公開レポジトリを持つことが可能で、CVS/Subversion と同じようにメール通知、グループ/個人の統計、gitweb によるブラウズもサポートしています。 http://sourceforge.jp/forum/for…

Thinkpadのキーバインド変えました

最近、VIMを使うことが多いので、これを機会にと ThinkPad のキーバインドを変更しました。 参考:http://june29.jp/2006/11/10/remapkey/ 「CTRL」を「CAPS」に割り当て。「CTRL」はそのまま。 「CTRL」を「CAPS」に入れ替えると、不特定多数とペアプロする…

暴利むさぼりすぎ

半年位前からネットへの接続が遅くなったなぁと思っていたのですが、何気なく回線速度のテストしたところ、規制かかってるらしいことが判明。 ブロードバンドスピードテスト 通信速度測定結果 http://www.bspeedtest.jp/ v3.0.0 測定時刻 2008/11/15 00:50:1…

ペンタブレットをポチッた。

id:ruzia に「パーマン書いてみ」といわれて、書いてみた。 -> 「ヘルメットをかぶったおっさん」になりました。 「ドラえもんは?」 -> 「ボウズ頭のひげの生えた少年」の誕生です。 オレの力はこんなものか orz 打ちひしがれたおいらは、アマゾンでこれを…

たまには文法をきちんと解釈してみる。

最近 Refactoring の読み合わせをしているのですが、雰囲気で読んでいる箇所が多々あるなぁと痛感。ということで、たまにはきちんと文法解釈してみようと思い立った今日この頃。 Refactor As You Do a Code Review*1 as は、「〜するとき」「〜しながら」を…

カンフーレディ

深夜にボーっと YouTube 眺めているうちに、昔ポンキッキで流れていたカンフーレディにたどり着いた。あ、これ、かなり耳に残る曲だったな〜懐かしいな〜最初の套路は陳氏太極拳だったんだね〜なるほどね〜つぎは何かな〜Σ(゚Д゚;) 忽雷架!?松田隆智さん!…

Groovy でもコネクションのクローズを忘れずに。

Groovy ラクチンだなー♪ と思いつつ、サーバー上でGroovyを動かしていたら、以下のエラー。 2008/11/01 18:21:38 org.apache.catalina.core.StandardWrapperValve invoke 致命的: サーブレット HogeServlet のServlet.service()が例外を投げました java.lang…

オレオレURLプロトコル

任意の情報を独自プロトコルの URL で指定したいなぁと思い立った今日この頃。たとえば、hogeプロトコル。 hoge://example.com/foo/barとか。 でも、URL って基本的に http プロトコルくらいしか使わんですよねー (´・ω・`)たとえば http://www.yahoo.co.jp …

コンストラクタのパラメータの組み合わせ爆発に対応する

java だと、きちんとクラスを作りこもうとすればするほど、コンストラクタ引数の組み合わせが爆発しそうになることってありますよね。*1そういうときに、groovy の名前つきパラメータって便利かも。 class Person { def name, age } // 名前つきパラメータ p…

リストから任意のクラスのインスタンスを作成する

プログラム中で得た値を元にインスタンスを生成する場合とか、結構便利かも。 class Person { def name, age Person (name, age) { this.name = name this.age = age } } p = ['foo', 20] as Person // ===> Person@199939 p.name // ===> foo p.age // ===>…

spread operator

配列やマップを展開してくれるオペレータ "*" です。 配列やマップを引数として受け取り、それを他のメソッドのパラメータにするときなど便利そうです。 list.addAll( )とかしなくて済むのも楽でいいですね〜。 配列の場合の例 range = (1..3) assert [0,1,2…

GPathって便利かも

今日は GPath ネタ。たとえば、java.lang.String クラスのメソッド名のリストを取得する場合、java だと以下のようになります。 List<String> methodNames = new ArrayList<String>(); for (Method m : String.class.getMethods()) { methodNames.add(m.getName()); } でも、</string></string>…

Groovy って private が使えないの?

private final なのに書き込めてしまいました o...rz class Person { private final name = 'foo', age = 30 } p = new Person() p.name = 'hoge' // private final なのに書き込める。 assert p.name == 'hoge' p.age = 20 assert p.age == 20 // private f…

Software Language Engineering

http://www.amazon.co.jp/dp/0321553454 2008/12/05 発売予定

Maven: The Definitive Guide

http://www.amazon.co.jp/dp/0596517335 2008/09/24 発売予定

バッテリーに修復不可能なエラーが検出されました。新しいバッテリーと交換してください。

死亡しました。合掌。

Longmanの例文(destined)

Miyazawa was destined to succeed Toshiki Kaifu as Prime Minister. 海部さんも宮沢さんも有名ですねw

大型ハドロン衝突型加速器

美しすぎる、、、。 すごい実験が行われる、大型ハドロン衝突型加速器 *1 *1:大型ハドロン衝突型加速器

実行可能WARファイルの作り方

実行可能WARファイルの作り方 面白そうですねー。 いろいろ使い道がありそう。

既存のソースコードに詰まったノウハウと関係者の持つ暗黙知のサルベージがしたいなぁ。

なんて話を、id:ruzia さん*1 としている今日この頃。 ソフトウェアを新規に作り直すという愚 ソフトウェア開発を行う組織の多くは、十分に保守されていないソースコードを抱えていることがあります。そして、ある時点で、同様のソフトウェアをフルスクラッ…

JBoss Cache 2.2.0 (Poblano) is in GA

http://www.jboss.org/jbosscache/