- 締切済み
Javaの習得に向けたグラフィックスについて
Javaの習得に向けて学習する場合、ひとえにオブジェクトがどういう風なものなのかを習得するということが主眼になると思います。クラス,メソッド,クラスの継承とか,クラス間での変数のスコープ(これは全言語で共通の学習)とかです。ファイル入出力、ループ、分岐なども全言語共通的なので翻訳可能であり、学習の対象ですらないもののように思えます。 しかし、グラフィカル(GUIを生成して、ブラウザで見せたりする)なところになると急激に視界不良のような印象になります。長い名前のコマンドでイベントリスナーとかフレームとかのオブジェクトとかラジオボタンをペタペタ貼り付けるとかです。それらのグラフィックスの機能というのは、Java独特のクラスとかオブジェクトの学習と関連しているのかどうかわかりにくくなる印象を持ちます。Javaの学習とあのグラフィックスは切り離して考えるのか、それともJavaの学習の結果その応用としてグラフィックス関係の処理が出てくるのか不明な感じになります。もし後者なら学習した内容に照らし合わせた機能と考えて納得させる必要がありますが、前者ならあんまり気にしないでブラックボックスとして処理するということになりそうです。Javaのグラフィックスはどのように理解して学習すればいいのでしょうか。 例えばVisual BasicなどはオブジェクトをGUI的に作ってウィンドウ上に貼り付けてその機能をコード化するということになるので、もう少しわかりやすいというか整理して(分業というか)して処理できそうですが、Javaは全部コード化するので理解しにくい印象があります。たとえばコードがあってその横にグラフィックスが示されているなら、もう少しマシなのですが。Javaの入門書では全くグラフィックスに触れないものあり、それだと通読しやすいです。グラフィックスが出てくると急激に歩みが遅くなるのですが。考え方について教えて頂きたいと思います。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- _kappe_
- ベストアンサー率68% (1581/2304)
>JAVAではGUI関係への貢献が無くなったということで、やらなくてもいいということであれば、整理がつきやすいように思います。 「貢献が無くなった」というのがどういう意味で書いているのか分かりませんでした。 Javaは現在も銀行システムの中とかウェブサーバの中とかで広く使われています。そういうプログラムを書く人にとってはGUIプログラミングは必修項目ではありません。 一方、今でもJavaでGUIアプリケーションを作ることはできます。GUIアプリケーションをJavaで作りたい(またはJavaで作らなければならない)という人はJavaでのGUIプログラミングを覚えてください。 >GUI関係はどの言語が主流になっているのでしょうか。 これは容易には答えられない質問です。プラットフォームや作るアプリケーションの種類によって違うので、「とりあえずこれを学んでおけば使える範囲が広いからオススメ」という決定打はありません。 プログラミング初心者で、とにかく何かGUIプログラミングをしてみたいという場合は、参考書やネットの情報が豊富なものであれば言語は何でもいいです。既にJavaプログラミングできる環境があるならJavaでOKです。同じJava言語であっても昔ながらのAWTを使って作るのとAndroid端末向けに作るのとではやり方が全然異なるわけで、どの言語というところだけにこだわっても仕方がないのです。
- _kappe_
- ベストアンサー率68% (1581/2304)
20年前ならともかく、今どきはGUIアプリを作る用途でJavaはあまり使われなくなってしまいました。 GUIアプリを作りたくて選択肢としてJavaしかない人を除けば、プログラミング学習目的でJavaのグラフィックスを身につける必要はないと思います。 例外はAndroidアプリです。AndroidアプリはJava言語を使って書くのが基本ですが、グラフィックス関係の書き方はAndroid固有のものになっています。この場合もやはり元々のJavaのグラフィックスを学ぶ必要はありません。
お礼
回答ありがとうございます。JAVAではGUI関係への貢献が無くなったということで、やらなくてもいいということであれば、整理がつきやすいように思います。ということはJAVAをやるインセンティブはどこになったということになるでしょうか。また、GUI関係はどの言語が主流になっているのでしょうか。C#がその方向でしょうか。C#とJAVAはかなり似ている言う風にも認識していますが。どうでしょうか。
お礼
回答ありがとうございます。「貢献がなくなった」というのは持って回った言い方ですが、簡単に言うと”GUIを作るうえで非常に便利なツール群を提供するものでもなくなった”というような意味です。GUIと言ってもソフトウェアをコントロールするウィンドウと言う意味やデータを見やすく表示する科学技術グラフィックスのようなものまで(その他も)いろいろでしょうけれども。Javaが悪いというより、他が良くなったということもあるのではないかと思います。というところで他の言語でのGUIの作りこみについて2番目に質問したところでした。