2012-01-01から1年間の記事一覧
今回のテーマはジェネリクスとリフレクション。Javaのジェネリクスはイレイジャ方式なのでリフレクションでは何も得られないと思ってはいまいか。 public void hoge(List<String> list) {} といったメソッドがあったとして、リフレクションでこのメソッドの情報を得</string>…
再帰ジェネリクスを用いて以下のようなコードを書いたとする。 Hogeを継承した型を作った場合に具象型を得るgetThis()メソッドを使えるようにしたいわけだ。 public class Hoge<T extends Hoge<T>> { @SuppressWarnings("unchecked") public T getThis() { return (T) this; } </t>…
11/10に開催されたJJUG CCC 2012 Fallでジェネリクスについてセッションを行いました。このエントリはセッション内容を補足するものです。基礎的な内容はJavaジェネリクス再入門 - プログラマーの脳みそ ジェネリックな設計 基礎編 - プログラマーの脳みそな…
11/10に開催されたJJUG CCC 2012 Fallでジェネリクスについてセッションを行いました。このエントリはセッション内容を補足するものです。本セッションはジェネリックなクラスの設計を行えるようになって欲しいという狙いで話をしました。ジェネリックなクラ…
JJUG Night Seminarへ行ってきました - 虎塚にあったjava.util.Vectorの話。java.util.Vectorは随分前にオワコン化していて、今、新たにVectorを使ってコードを書く人がいたら優しく諌めてあげるべきシロモノ。「VectorとArrayListだとArrayListの方が同期化…
私が代表を務める株式会社凪瀬アーキテクツは7月より株式会社Abbyと事業統合しAbby富山事業所となります。代表は id:yone098 です。Abbyは東京にある会社なのですがよねさんがもともと富山の人で、富山に事業所を作りたいと言っていたところに乗っかった形で…
先日twitterで "Expression Problem" という問題を知った。 静的な型付けの下で、場合分けのデータ構造に対して、新しい場合分けとその場合に対する新しい処理を、元のソースコードに手を加えることなく拡張定義すること 2009-05-16 この問題が意図するとこ…
JavaOne Tokyo 2012でLTをしてきました。内容は寺田さんの要請でSemicolonless Java(セミコロンレス・ジャバ)です。当日は風邪で喉をやられたので音声が聞き取りにくかったと思います。申し訳ないです。公式のフォトライブラリーがあるので当日の会場の雰…
3/16にアジャイルジャパン2012が開催されました。本講演は今年は大阪会場で、大阪以外にも各地でサテライトが開催されました。僕は富山サテライトで参加です。 セッションのテーマ 僕のセッションのテーマは今の開発現場にどうやったらアジャイルを組み込め…
Androidでの開発ではAndroid OSをある種のフレームワークと捉えてその作法に則ってうまく「使われる」プログラムを書かなくてはならない。なのでそのフレームワークがどういう仕組で、どういう流れで僕らの書いたコードを呼び出すのかということを理解するこ…
Javaのクラス宣言には5種類ある。 トップレベルクラス・ネストしたクラス・内部クラス・ローカル内部クラス・匿名クラス(無名クラスとも言われる)の5種類だ。 今回はこの5種類のクラス宣言のおさらい。 トップレベルクラス これは普段使っているクラス。拡張…
2015年8月 追記 本エントリは2012年の古いものではあるがしばしば参照されているようなので後に改良されたローコスト版を公開しておく。といってもこちらも2012年の10月末のものなので、今となっては随分古い。現在の1.8系で動かす場合にリピーターの遅延設…