uehaj's blog

Grな日々 - GroovyとかGrailsとかElmとかRustとかHaskellとかReactとかFregeとかJavaとか -

2010-05-01から1ヶ月間の記事一覧

EMCでメソッドを置き換える際にもとのメソッドを呼び出したい

ExpandoMetaClassを使って、メソッドを定義するときに、置き換える前のメソッドを呼びたいときがあります。あるんです。以下やりかたです。置き換える前のメソッドを保存しておきます。 def old = Integer.metaClass.getMetaMethod("asType", [Class] as Obj…

getAtとマルチ代入の不思議な関係

groovyには、 def (a,b) = [1,2] assert a == 1 assert b == 2 というようなマルチ代入*1の構文があります。 私は、マルチ代入分の右辺はリストである必要があるのかと思っていたのですが、こちらの記事を読むとそうではなくて、getAtが定義されていればよい…

DCIアーキテクチャについて語ってみるよ

Trygve Reenskaug氏とJames O. Coplien氏らが提唱する「DCIアーキテクチャ」について、id:digitalsoulさんが論文を翻訳してくださり、またその解説とサンプル実装(groovy, scala)を示してくださっており、読んでみたところ、大変興味深いので理解した限りを…

Thoghtworksの技術レーダー(2010年4月版)

ThoughtworksアンソロジーのあのThoughtworksが出している「Technical Radar」というレポートがあります。2010年1月のはこちら。InfoQに記事(和訳版)も出ています。これの現時点で最新版である、2010年4月のが出ています。 http://www.thoughtworks.com/s…

Groovyの「静的型付け」を引き続き考える

前の記事に書きましたが、id:kskyさんが記事「Groovyの「静的型付け」はホンモノか!?」でも考察されているように、Groovyの「静的型付け」は、Javaのようなコンパイル言語でのそれとは違った意味合いがあります。その違いを細かく考えると、静的型付けには、…

Groovy on android by discobot

Android上でgroovyを動かすには、discobotというものを使います。これはGroovyに対するパッチ群を中心としたもののようです。 準備 JDK,Android SDKをインストールしておきます。Eclipse plugin(ADT plugin for eclipse)は使わない方向で。 ダウンロード dis…

Grails console plugin

Grails 1.3.0のリリースおめでとうございます。それとは直接関係はないですが、「これは便利!!!」と思ったGrailsプラグインを紹介します。それはGrails console pluginです。何かというと、Grailsアプリを実際に動かしながら、裏でGroovyコードをインタラ…

オプショナルタイピングの実効性と陥穽

Groovyにはオプショナルタイピングという概念があって、これは要するに変数宣言、メソッドの返り値や引数の宣言において、型指定を省略する事も、しないこともでき、適切な方を選べるという事です。ささっと書きたいときは省略し、安全性を期待するときは指…