C++のテンプレートを使いこなせるとすごく便利(C++は全然書けないけど)、というのはJavaのジェネリックが所詮ダウンキャストをソースコード上から排除するためのシンタックスシュガーである!ことを痛感するとより一層強く感じる。(何を今更!?って思う濃ゆいJavaプログラマーも多いと思うが)脳内でクラスを考えて書き始めると、テンプレートを期待したデザイニングをしていてJavaじゃインプリメントできないじゃん orz となる事が多い。 例えばJAXB2.0の汎用ラッパを作ろうとしたとき、 public class XmlSerializer<T> { ... public T deserialize(final InputStream in) //例外処理は省略 { final JAXBContext jbctx = JAXBContext.newInstance(T.class

