「変数に型がない」はメリットなのか、それともデメリットなのか。宗教戦争勃発
2013年3月1日 13:10
insiderman 曰く、
プログラミング言語どうしの優劣を比較する「宗教戦争」は定期的に勃発するが、今回話題になっているのは「変数に型がない」ことはメリットなのか、それともデメリットなのか、という点だ。
発端となったのは、「サンプルコードによる Perl 入門とは」というブログの「変数に型がないということの利点について考える」という記事。ここでは Perl や Java、C++ などの例を使い、変数に型がないことの利点として「どのような型の値でも代入できる」「記述量がとても短くなる」「変数に型がないと変更に強い」「関数のオーバーロードが不要になる」「複数の型を受け取りたいときに、インターフェースを実装する必要がない」「C++ のテンプレートのような機能も必要がない」などが挙げられている。
これに対し、「型がないというのはデメリットだ」という意見もコメントやはてなブックマークで多数寄せられている。型がないデメリットとしてあげられているのは、「コンパイル時に型の不整合を検出できない」「型がある言語でも型推論を使えば記述量を減らせる」「保守性が高くなる」などのようだ。
個人的には C++ でキャスト地獄を味わったことがある体験から、近年は変数に型のない言語のほうが好みにはなっているのだが、十分かつできの良い仕様書があってそれを元にコードを書くのなら型ありの言語も良いとは思う。/.J 読者のご意見はいかがだろうか?
スラッシュドットのコメントを読む | デベロッパーセクション | プログラミング | デベロッパー