ラベル LL の投稿を表示しています。 すべての投稿を表示
ラベル LL の投稿を表示しています。 すべての投稿を表示

2012年10月14日日曜日

Groovy!! (MOP: Meta Object Protocolの巻)

Groovyのすべてのクラスは暗黙的にgroovy.lang.GroovyObjectインタフェースを実装していて、GroovyObjectインタフェースにはMOP用のメソッドが定義されている。

こんな感じ。シンプル。
invokeMothod
set/getProperty
set/getMetaClass
→groovy.lang.MetaClass imprements MetaObject

コード例


まとめ
grooby++

かねこ\(^o^)/

2012年9月30日日曜日

Groovy!! ミックスイン(Minxin)の巻

GroovyはMixinがつかえる。
Mixin名前かっこいい!


多重継承の使いどころ全然思いつかない(ニューハーフとか?)
けど、コード書いてみよう。


言語仕様は使いやすくて読みやすい。
ただし、読みやすさは同一スコープでクラス初期化してる場合だけで、DIとかの場合は定義だけ見ても継承関係わかんなくなっちゃうからダメかも。でもGroovyでDIなんか書かないからいいか。
要は適材適所?でも適所がわからん(><)

ついでに参考
Mixin は Symbolics 社のオブジェクト指向システム Flavors で初めて登場し、LISPマシン で用いられたオブジェクト指向への試みであった。この名称は、マサチューセッツ州 Somerville にあった Steve's Ice Cream Parlor からヒントを得て考え出されたものであった[1]。このアイスクリーム店の店長は(バニラやチョコレートなどの)基本となる味を混ぜ、追加の具材(ナッツ、クッキー、キャンディなど)と組み合わせたものを提供し、それを"Mix-in"と呼んで店の登録商標としていた[2]。
Mixin - Wikipedia

けつろん
 名前かっこいい!

かねこ((´∀`))

2012年9月29日土曜日

Groovy!! クロージャ(Closure)の巻

Groovyはクロージャ(Closure)が使える。
クロージャが使えると、RubyとかjQueryでよくやるあの感じ(笑)のコーディングが出来る!

説明ができないので、コード書きます。

スコープ
クロージャはブロックの外側の変数にアクセスすることができる。


レキシカルスコープ
クロージャが呼び出された場所ではなく、クロージャが宣言されている場所からみたスコープが有効


変数の束縛
クロージャ内で宣言した変数のスコープはクロージャ内のみとなる


本領発揮
必殺!この記法で書くことができると、イテレーションの条件と実際の処理を分離することができる。


どんどんつかおうクロージャ!

かねこ( ゚ ρ ゚ )

2012年9月22日土曜日

Groovy!!(EclipseとGroovyプラグイン)

EclipseのGroovyプラグインいれるの巻。ほぼ全自動で楽々♪


ヘルプ→新規ソフトウェアのインストール



何にも考えずにどんどん進んで、


インストール完了。

新規プロジェクトウィザードにGroovyできた。ナイス!
さっそくプロジェクト作ってみる。



check it!!



かねこ(´∀`∩)↑age↑