Java5以降では総称型(generics)がJava言語に導入されています。総称型自体は、最近の静的な型付けのプログラミング言語で珍しいことではなく、現在の最新版では.NETのC#やVisual Basicにも導入されています。一般的には総称型をサポートするクラスライブラリを自分で正しく定義することは非常にスキルがいるが、事前に定義されたクラスを使うだけであれば、それほど難しくないとされています。しかし、Java言語の総称型は本エントリで説明するように特殊なところがあり、単に利用するだけでも他の言語に比べて遥かに難しいところがあるというのも事実です。特に総称型をパラメータ化する際に指定するワイルドカード型(List<? extends Serializable>など)の意味を正しく理解して使いこなすことは簡単なことではありません。その結果、昔のJDK1.4までのように型パラメーターのない
JavaとScalaとC#のジェネリクスは、いずれも継承を持ったオブジェクト指向言語においてParametric Polymorphismを実現するための手段であり、それぞれ異なった特性を持っている。というわけで、それぞれの言語においてジェネリクスがどのようにサポートされているかを比較した表を用意してみた。後で気が向いたら、各項目の説明を追加するかも。 Java(5.0以降) Scala C#(4.0) ジェネリックなクラス ○ ○ ○ ジェネリックなメソッド ○ ○ ○ 型パラメータの上限 ○ ○ ○ 型パラメータの下限 × ○ × 型パラメータの推論 ○ ○ ○ 全ての型のサブタイプ(ScalaにおけるNothing) × ○ × definition-site variance × ○ ○ use-site variance ○(Wildcard) ○(Existential Typ
Getting started with Google App Engine development is easy and free. For the purposes of this tutorial, I tend to focus on developing GAE apps from within the Linux platform. However, since both Netbeans and the Google App Engine SDK are multiplatform, these instructions will be pretty much the same on any of the major operating systems (Linux, Mac, or Windows). Let’s get started. Sign up for Goog
1 概要 2 仕様 3 ダウンロード 4 ライセンス 5 連絡先 6 最後に Appendix 1 概要 ScalaでWebアプリケーションを簡単に作れないか調べていましたが、なかなかいいものがありません。一方JSPのScriptletを使えば数々の問題こそあれ、かなりハードルを下げることができます。 そこでJSPのコンセプトを取り入れ、 Scalaコードをスクリプトとして記述してすぐ実行できる 更新されれば自動的にコンパイルされる という機能を備えたWebフレームワークを作ってみました。 以前のWeb Flavor version 0.1は、Rhino(JavaScript)やJRuby(Ruby)などでも動きましたが、今回はScalaだけに特化し、Scalaの特徴を生かせるよう作られています。 2 仕様 2.1 概要 Java Servletコンテナ上で動作する Java Servle
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く