ジェネリックな未加工型って何?
詳細なコーディング規約として愛用している、Javaセキュアコーディングスタンダードの訳がおかしいのでメモ。
OBJ03-J. ジェネリックな未加工型とジェネリックでない未加工型を新規コードに混在させない
http://www.jpcert.or.jp/java-rules/obj03-j.html
ジェネリック(generic)な未加工型(raw type)って何?
誤訳だと思います。genericは、rawにかかるのではなくtypesにかかるのだと思う。
翻訳元
これは以下のページを翻訳したものです。
OBJ03-J. Do not mix generic with non-generic raw types in new code (revision 86)
原文のgeneric typeという表現がそもそもよくないと思う。言語仕様上はgenericはgeneric class, generic interface, generic methodというふうに仮型引数を宣言する言語要素を形容する述語。raw型は型であって宣言ではないので、対比するのであれば実型引数を与えられた型はparameterized typeを使うべきだと思う。
参考: http://docs.oracle.com/javase/specs/jls/se7/html/index.html の目次
generic typeという用語は(言語仕様に出てこないので疑わしいが)、Oracleのこのチュートリアルによれば、型ではなく型宣言のことを指すと考えられる。
A generic type is a generic class or interface that is parameterized over types. The following Box class will be modified to demonstrate the concept.
http://docs.oracle.com/javase/tutorial/java/generics/types.html