Skip to content

Instantly share code, notes, and snippets.

@tnoda
Created March 30, 2015 01:41
Show Gist options
  • Save tnoda/931d11557445e8664b79 to your computer and use it in GitHub Desktop.
Save tnoda/931d11557445e8664b79 to your computer and use it in GitHub Desktop.
3/31 gen-class 勉強会@HaLake プログラム案

gen-class 勉強会 プログラム

No.タイトル担当レベル
1Java のクラスの作り方@tnoda\_未経験者
2Docstring 逐条講義@tnoda\_ビギナー
3gen-class の内部実装の話@athos0220上級者
4アノテーションの使い方@tnoda\_中級者
5gen-class クイズ@tnoda\_中級者

※参加者が全員中級者以上の場合は No.1, 2 は省略します。

1. Java のクラスの作り方

Clojure の Java interop について、gen-class, proxy, reify の使い分けも含めて解説します。

2. Docstring 逐条講義

Clojure でも屈指の長さを誇る gen-class の docstring を一行一行丁寧に読み解いていきます。 分かりにくいと評される gen-class ですが、大事なことは docstring に全部書いてあったりします。

3. gen-class の内部実装の話

TBA

4. アノテーションの使い方

完全に undocumented ですが、 Clojure でも Java アノテーションを使えます。 Java アノテーションの基本から、gen-class での使い方までを解説します。

5. gen-class クイズ

Clojure の Java interop はよくてきているので、そのほとんどの場合は問題なく Java と連携することができますが、ごくまれに、殺意の起こるパターンが存在します。 そのパターンと、gen-class での解決法について一緒に考えます。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment