[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends-ml 1434] Re: import 宣言はど っちのスタイルがよいか



高橋(徹)です。

<200011221223.AA00576@xxxxxxxxxxxxxxxxxxxxxxxxx> の、
   "[jfriends-ml 1433] Re: import 宣言はどっちのスタイルがよいか" において、
   "Daisuke Sawada <swd@xxxxxxxxxxxxxxxx>"さんは書きました:
> 後からソースコードを読むときに、import宣言って「あぁこのパッケージを
> 利用しているんだ」という把握をするのが楽だと考えています。
> したがって私は(2)を好んで使っています。
スタイルは各人各様なんですね(^^)
swing、awtのようにクラスが多いパッケージや、java.utilのように毛色の異なる
クラスがごった煮のようになっている場合は、利用しているクラスまで知りたいな
と思うのですが、いかがでしょう?
#ただ、import宣言で何十行にもなると行き過ぎかなとは思います。

いろいろな文化があっておもしろいところです。いろいろな話を聞いていると、
工夫とかも垣間見えて参考になることもあったりするので楽しいです。

> > また(b)で大量のクラスをimportしているクラスは結合度が強くなりすぎている
> > かもしれないので、少しimportが減るようにリファクタリングした方がよい場合が
> > 多いし、仮に大量にimportがあっても問題にならないと思います。
> 
> 確かにそういう分析のためにimport宣言を利用するのであれば
> (1)にすべきですが、厳密にやろうとすればimportは書かずにFQCN(こんな
> 呼び方があるんですね。知らなかった・・)を直接書いている部分も調査する
> 必要があるし・・とか安易に反論してみます。墓穴掘ったかも。
厳密にすると、Class.forNameで文字列渡しを用いるコードもあるんです。
RDBMSはほとんど触らないのですが、たまたまJDBC使うコードみたら、
JDBCドライバをロードするところでClass.forNameを使うのが常套手段
みたいですね。
#「リファクタリング」なんて持ち出して墓穴ほったのは自分かも・・・

> # でも java.net.InetAddress あたりは単独で使っていたりします。
> # 私自身はあまり厳密にはこだわっていないのかもしれません(^^;
ちょっと実験で作るSwingのプログラムの場合、いちいちimport指定するのが
面倒なので、import javax.swing.*;とやってしまいます。


--
Toru TAKAHASHI <torutk@xxxxxxxxxxx>
http://www.alles.or.jp/~torutk/