ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

JavaコミュのJava を Eclipseから始めると何が抜けるのかな。

  • mixiチェック
  • このエントリーをはてなブックマークに追加
別のトピックで
「新人の頃から Eclipse だと基礎になる部分が疎かになってしまうかも」って意見が沢山ありましたが、具体的にはどういった事柄のどんな感じなのでしょうか。

私自身 Eclipse は使っていないので(Meadow + JDEE + Ant です。)なんなのですが、確かにJDEE でも Speedbar や ECB(Enhanced Code Browser)って統合環境っぽい機能はあまり使わないですね。細かい設定は Ant で XML 書いて設定して、後は如何に今の作業をルーチンワーク化、自動化できるかを工夫して作業効率の改善を行っています。

と言うわけで、興味本位ですがご意見ください。

コメント(37)

オブジェクト指向とか処理言語とかって関係ないと思いますよ。
所詮、最終的には0と1の世界なんだもん。
効率と品質がよければ、秀丸使おうがeclipse使おうがどっちだっていいわけだし。
一生pgやるならば別だけど、そう思っていないのならば、言語習得なんて一つの通過点ということですから。

ということで、その後の精進による・・・と思いますね。
人によりけりでしょうか
欠落するひとは何でどうやっても欠落するし
欠落している人はなかなかそれをうめることはできません
がんばる気があればなんとか手をさしのべてくれる
eclipseは挫けそうなプログラマにとってはありがたいです
でも全然わかってないと使えないし
大丈夫っすよ
JDK+エディタの頃は、ソース書いて動かしてバグってて、そのソースを睨んでうんうん唸ってました。
頭の中でプログラムを動かして、あれがこうなってこれがあーなって、って考えまくってたのです。
このうんうん唸ってた時期が、今の自分の基礎になってるような気がしてます。

Eclipseは、ソースを書いて動かしたり、デバッグ実行で中の変数を見たりが極めて楽にできるから、「頭の中でプログラムを動かして」って部分が疎かになるかも?と思ったのです。

でもまぁ、「うんうん唸ってた」ってのは、傍目から見たら無駄な時間だし、Eclipseを使った方が実は早くその時期を過ぎてたのかもせません。
結局、て…んちょ さんの、
>羨ましいぜ、ちくしょう
ってのかもしれませんね(笑)
>>9
それはそれでゆゆしき問題だけど、統合環境の問題というわけではないと思いますけど。

でも、私も学生なのですがJavaをきちんと理解してない人が周りに多いかも。
学生の場合は、「単位をとるために意味も分からずプログラムを書く」って人が結構いるからそのせいですかねぇ。
個人的にはあまり影響ないと考えます。
Eclipseと出会ったときはほんと目から鱗でしたし、これからJavaに触ろうという人には積極的に利用を薦めています。

「WYSIWYGなHTMLエディタなんて駄目だ、メモ帳だ」みたいな意見がたまにありますが(個人的にはWYSIWYGなHTMLエディタは活用されるべきだと考えます。タコなソースが吐かれるのは困りますが)、似たような雰囲気を感じます。
まぁ、端的に言ってしまえば「楽が出来るのに楽をしないのはマゾと違うの?」ってなところでしょうか(少々乱暴ですが)。

コンピュータなんて基本的に抽象化を行うレイヤー構築の歴史な訳です(これも乱暴)。
OSが出来て楽になった、メモリ保護をOSがやってくれて楽になった、Widgetのツールキットが出来て楽になった云々…。
そのような成果物を否定していたら日が暮れてしまうのと同じで、お仕事を楽にしてくれるような開発環境はたとえ初心者であろうとも積極的に活用してよいと思います。
#たいていのプログラマはそもそも「便利になるようなもの」を作ってる訳ですし


話がそれまくっていますが、Eclipseに関して言えば、Javaの構造を隠蔽するようなものでもないですし、ソースに対してすべての責任は最終的には開発者が負う訳で、プログラミングに関してほかの環境と大きな差異があるとは思えません。

メモ帳とかで頑張るよりも、Eclipse使ってデバッガの使い方を覚えた方が逆にいいこと多いんじゃないでしょうかね? スレッドの動きとかも見れますし。
EclipseなどのIDEを使用して、ボタンクリックでいろんな操作が自動化されるけど、「で、これは結局何をやってるの?」ってことを常に考えていれば、そんなに問題はないのかもしれません。いや、私も「苦労した思い出」を経験したのですが・・・・。結局は、個人のやる気・探求心・実践力が重要なのかもしれません。ただ、これらの要素に対するアプローチの仕方が違うだけなのかと。
Eclipse などが生産性の向上に大きく貢献することは間違いないでしょうが、最初から便利なツールに頼ってしまったがために、特定の IDE やツールに依存してしまうのはアレかと思います。ソースコードはどんなエディタでも編集できる、テキストファイルのはずですからね。

別に「最初から使うな」とまでは言うつもりはないですが、(エンジニアとしてメシ食ってるのであれば当然) Eclipse などが無くても、きちんと生産できるだけのスキルは必要なんじゃないでしょうか。そこさえ押さえれば、別に何を使おうと気にしないですね。

# とかいいつつ、最近コンパイラ言語さわってないなぁ...
javaの開発をeclipseで始めました。
どっぷりeclipseに浸かってしまい、
ソラリスでjavaでバッチとかやったときちょっとつまづきました
が、それなりに仕組みさえわかっていればなんとかなるなぁ〜
というのが実感ですねぇ。
c、c++のほうが遙かにだるかったので
それにくらべればjavaの開発環境がなんであろうとも
なんとも思いません。
コンパイル通ったぁぁぁぁぁっ!!って喜びを知らない事は悲しい事なのかいいことなのか(笑

eclipseじゃないとコーディングできないって人にだけはなっちゃだめだと思う(たまにいる

最初からeclipse使ってる人はAPIドキュメントを見る癖がついてない人が結構多いような。とりあえずコードアシスト使ってそれっぽいメソッド呼んでみるみたいな使い方しててオイオイって思ったことが何度か。

eclipseでエラーが出たからeclipseでエラーが出ないように色々いじるっていう考え方もやめよう。

べったり依存しちゃわないようにって事ですかねぇ。趣味でやるならたまにはprintfデバッグ(JAVAだとprintlnデバッグとか言うの?)やってみると色々カンが養えると思います(Log4Jとかつかってるなら仕事で使ってもいいかも)




と、偉そうに言いつつもおいちゃんはEmacs系エディタ無いとストレスたまって何もできません
具体的には何にも問題ないと思います。
「新人の頃からアセンブラ使うと基礎の部分、紙テープを読むのを疎かになってしまうかも」
というのと同義語ではないでしょうか。
Windowsの基礎というか、DOS窓のコマンドとか知っているなら
問題ないと思います。

Eclipseでそれなりにソースかけるのに、cdコマンドがわからんといわれてショック受けたことがあります。
11でもコメントしたeclipse推進派でございます。

>>17
コードアシスト機能、便利ですよね。
それっぽいメソッドを一覧から選んで使っちゃうってのは、まぁ確かにびっくりはしますがそれだけ命名規則が機能しているとも言えるのでは。
個人的には、メソッド名だけ見て判別出来れば最高、Javadocの説明見て分かるのはまぁまぁ、実装を見ないと分からないのは最悪と言うランク付けをしてます。

別にeclipseじゃなくても、「こんなんでいけるかしらー」って思って勝手にメソッド名を推測して打ち込むことってあると思うのですが、そういうのも駄目ってことでしょうか。


デバッグに関してはみなさん作法がありますし、それでうまくいっていれば何も文句はないのですが、printfデバッグとデバッガでVMの中身を眺めるので本質的に差はないと思うのですがどうでしょう?
(あくまで僕のポリシーですが、)デバッグポイントを挿入すりゃその時点での中身が見られる訳ですし、Cとかと違ってプリプロセッサがない分、printfデバッグはソースのメンテナンス性もあまりよろしくない気がします。デバッガなら天性の「カン」が外れたときもまわりの変数を一緒に眺められますし。
「いやいや、仕事ではprintfデバッグなんて使えないよ。log4jとか使う」とおっしゃるのであれば、なんというか、初心者を虐げていると言うか…。同じ土俵にたたせてあげてもいいと思います。

まぁ、こんなお話もスタンドアロンで動いてるときだけしか通用できない訳ですけど^^;
ネットワーク上にオブジェクトが分散しているような場合ではデバッガが使えない場合がほとんどなので、そんな場合はlog4jなりアスペクトを挿入したりしてログを吐かせるわけですが…。
ま、初心者なわけですよね? ここでのターゲットは。
「eclipse無しじゃ何にもできない」って言う時の何も出来ないって何をさすんでしょうね?

Eclipseを使えばここまでの事が出来るのに、(教えてもいない)こんな事ができないの?って言っていることってありませんか?

これまでは、環境整備 → (試行錯誤の末)OSやJavaVMの動作の理解 → 開発 → (苦労しながら)デバッグとやって到達したレベルに必要でなくなった途中をすっとばして到達しているだけなんだから、その部分が必要になった時点で教えるなり覚えさせるなりすればいいだけな気がするのですが。
それでも習得までのトータルの時間は全然短くなっていると思いますし。

昔はプロジェクトのお荷物になりながら1年以上かけてなんとか覚えていたことを、今は新入社員にいきなりやらせて3ヶ月後にはそれなりに使えていたりはしませんか?
プログラミングそのものが初めてなのか、他言語はベテランだけどJavaは初めてなのかでもまた違ってくるような。

仕事上の話に限れば、便利なものはとりあえず使っちゃっていいんじゃないかなぁ。時間勿体無いし。
ただ、ある程度慣れてきたときにEclipse無しでも開発できるように多少は勉強しておいたほうが良いと思う。
特定のツールでしか作業ができなくて、それを取り上げられると何も出来なくなる人って結構多い。

「何も出来ない」ってのは色々あるかと思うけど、SDKのコマンド群の使い方がわからない、classpathがわからない、とか。
#そこで調べて頑張るかお手上げになるかはもはやJavaだけの話ではないが。
私はエディター派(Eclipse使わない派)ですが、初心者にしろそれ以外にしろ、エディターや統合開発環境なんかで言語知識や技術力に差がでるとは思えないというのが私の意見です。つーか、やる気があれば覚えるでしょ。私は昔C言語の統合開発環境を3〜4つ程使っていて、もう嫌になってJavaではエディターオンリーにしました。最近のエディター(私はvim)はコード補完機能なんて当たり前に使えますから、私がEclipse使うとすればデバッグぐらいかな。それ以外はゴチャゴチャして使う気になれない。開発自体が複雑化してきているのですから環境ぐらいはシンプルにいきたいものです。
超基本的な事を理解できてれば

Eclipseから始めちゃっても問題ないっすね。
(勤務時間内にカスタマイズに走らなければ・・)
転んだ事がない人に転ばぬ先の杖を見せても
嬉しがりませんし、苦渋を飲ませても無意味ですしね。

まぁ、作業速度のギャップを感じさせるには
いいかもしれません。エディタ→Eclipse とか。

javadocコメントを書かない人はいつまで経っても書きませんし、業務で引継ぎは絶対無いと言えないにも関わらず
ノーコメントソースを増産する人も居ます。

Eclipseを使わせない といっても、3日くらいですから。
つまり、3日で超基本的なことは抑えておけよって話ですが :-D
>Eclipseが無いと何も出来ない
そのまんま、『何も出来ない』状態な奴を見たことがあります…(汗

要するに、EclipseなしでJavaのソースをどうこうする(できる)
と言う概念が無いのです。
更に酷かったのはEclipseのインストールや設定周りも
自分で出来なかったこと………(遠い目

極端な例を出してアレですが、環境に甘えない事を叩き込むのが優先かと思いました。
>Eclipseが無いと何も出来ない
コンパイル/テスト/動作確認
職業でやってるのに出来ない人も居るとです・・・・

何がびっくりってantすら使えなかったorz
人それぞれ意見や、取り巻く環境の違いがあるので、一概には言えないかもしれませんね。
私個人の経験では、初心者に便利な環境を与えることは反対派です。
ここでの初心者というのは、仕事そのものをはじめたばかりの人が対象ですね。
それまでに多くの言語になじんでた上でのJava初心者であれば、なんとも思いませんが・・・。
こちらの環境では、配属されるプログラマーは、OSの基本知識とかが全然ない状態の人が多いです。
その為、マシンのリソースを無駄に使うようなコードを書いたり、エラーメッセージが理解できないといったことが非常に多いですね。
最近はエラーの内容を理解せずに、すぐにサーチエンジンを利用する傾向が多いので、配属初期は参考文献は書籍のみで、WWWは禁止といったこともしました。
そもそも、英語アレルギーのある人も多く、「Error」の文字しか目に入らないといった人もいますね。

なので、便利すぎる環境下では苦労せずに進んでしまうので、問題解決能力が不足しがちだったため、このような手法を取らざるを得ませんでした。
できる人はできるという話もありますが、そういう人はそのレベルをすぐに脱却するので、時間的な問題はあまり気になりません。
仕事上では、そういう状況を判断できるかがどうか?が鍵になるような気がします。

逆に、趣味的にJavaやるんだったらいいんじゃないでしょうか?
変な所で躓くより、実際にがんがん書いたほうがいいですし、いつでもなんでも質問できる人が近くにいるとも限りませんから。(笑)
いつごろEcripseを与えるかですが、継承とかポリモーフィズムとかが解ってきて、
「うわー、便利だけど、メモ帳じゃ難しいっス。無理っス」と泣きつきはじめてから、
要はIDEを必要とするほどの事が出来るようになってからでよろしいかと………

今日、他人のソース眺めながら思ったのですけどね(遠い目

#実際、偉い人は「Ecripiseが使える=Javaが出来る」と錯覚しがちです(涙
Javaに関してはExpertとは言えないものの、既存コードに対するテストを新たに書いて、リファクタリングしながら開発できる程度には習熟しているつもりです。しかし、Eclipseがないと文字通り何もできません。Antのbuild.xmlなんてどう書いていいものやら…見ればなんとなく流れはわからないでもないのですが。
何か間違っているような気はするのですが、全然困ることがないのでそのままになっています。この調子だと一生EclipseなしではJavaは書けないままかもしれません。最近は他の言語での開発までEclipseのプラグイン以外ではやらなくなる始末です…
確かに車に乗るより歩いたほうが景色が良く見えますが、
文法、OOT、デザパタと先も長いので
楽できるとこは楽してもらっても良いかなと思います。
すいません、前言撤回です。前提条件を間違えてました。

きちんとJavaがわかっている人が
新人の作ったコードをプリントアウトしてしっかりレビューを
行ってやれる状況ならば、最初からEcripseを使っても大丈夫かと。
Ecripseを使うほうが、大事なことが簡単に出来るからです。
大事なことがメンドクサイと、覚えるより早く使いたくなくなるので(それは自分)。

私が懸念してたのは
「ああ、Java? その本読んで。あとEcripseって奴使うと簡単だから」
なんて状態。IT産業に深刻な禍根を残します(笑

余談ですが、Ecripseの自動生成したコメントやらcatchの中とか、
既存のソースに在るとちょっと、もう。

あと、メモリ関係はJavaだけだと頭に入らない(私はそうだった)ので、
Cをちょこっと教えとくのも手かもしれません。
try〜catchを“こんぱいるをとおすためのおまじない”かなにかだと思ってるヤツはEclipseがメジャーになる前からいたしなぁ…。

個人的には悩んだりprintln書いてデバッグするよりもデバッガ動かせ、オブジェクト指向言語使うならクラスブラウザは必須、XMLは手書きせずにすむならそれに越したことは無い(あんなもん人間が書くモンじゃねぇ)、道具なしで何かする努力よりも道具をそろえる努力を…とか思ってますが。

ログインすると、残り12件のコメントが見れるよ

mixiユーザー
ログインしてコメントしよう!

Java 更新情報

Javaのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング