2010-05-01から1ヶ月間の記事一覧
ExpandoMetaClassを使って、メソッドを定義するときに、置き換える前のメソッドを呼びたいときがあります。あるんです。以下やりかたです。置き換える前のメソッドを保存しておきます。 def old = Integer.metaClass.getMetaMethod("asType", [Class] as Obj…
groovyには、 def (a,b) = [1,2] assert a == 1 assert b == 2 というようなマルチ代入*1の構文があります。 私は、マルチ代入分の右辺はリストである必要があるのかと思っていたのですが、こちらの記事を読むとそうではなくて、getAtが定義されていればよい…
Trygve Reenskaug氏とJames O. Coplien氏らが提唱する「DCIアーキテクチャ」について、id:digitalsoulさんが論文を翻訳してくださり、またその解説とサンプル実装(groovy, scala)を示してくださっており、読んでみたところ、大変興味深いので理解した限りを…
ThoughtworksアンソロジーのあのThoughtworksが出している「Technical Radar」というレポートがあります。2010年1月のはこちら。InfoQに記事(和訳版)も出ています。これの現時点で最新版である、2010年4月のが出ています。 http://www.thoughtworks.com/s…
前の記事に書きましたが、id:kskyさんが記事「Groovyの「静的型付け」はホンモノか!?」でも考察されているように、Groovyの「静的型付け」は、Javaのようなコンパイル言語でのそれとは違った意味合いがあります。その違いを細かく考えると、静的型付けには、…
Android上でgroovyを動かすには、discobotというものを使います。これはGroovyに対するパッチ群を中心としたもののようです。 準備 JDK,Android SDKをインストールしておきます。Eclipse plugin(ADT plugin for eclipse)は使わない方向で。 ダウンロード dis…
Grails 1.3.0のリリースおめでとうございます。それとは直接関係はないですが、「これは便利!!!」と思ったGrailsプラグインを紹介します。それはGrails console pluginです。何かというと、Grailsアプリを実際に動かしながら、裏でGroovyコードをインタラ…
Groovyにはオプショナルタイピングという概念があって、これは要するに変数宣言、メソッドの返り値や引数の宣言において、型指定を省略する事も、しないこともでき、適切な方を選べるという事です。ささっと書きたいときは省略し、安全性を期待するときは指…