初学からJAVAを100時間で使いこなせますか?

このQ&Aのポイント
  • 初学からJAVAを100時間で使いこなせるかどうか迷っています。また、JAVAを習得するべきか手を出さないべきかも悩んでいます。
  • 現在、なでしこという日本語言語を使用しており、基本的な処理は書けるが、JAVAを使いこなすためには時間がかかると感じています。
  • なでしこの弱点は文字コードの問題や処理速度の遅さなどであり、JAVAを使えばこれらの問題を解決できると期待しています。ただし、学習には時間の制約があり、100時間でJAVAを使いこなせるかどうか心配です。さらに、効率よく学習するためのステップも知りたいです。
回答を見る
  • ベストアンサー

初学からJAVAを100時間で使いこなせますか?

JAVAを習得するべきか手を出さないべきか迷っています。 現在、なでしこと言う日本語言語を使っています。 なでしこでは、基本文法と基本概念と基本命令と Windowsアプリケーションプログラミングに関しての基礎知識(基本用語マスター程度) を習得するだけで個人的に使える程度の殆どの処理が書けてしまいます。 エディタの命令検索機能で行いたい処理に関する単語の一部を入力すれば候補が出るので 命令自体の存在を知らなくても、殆ど時間を取られること無く入力できてしまいます。 他の言語をマスターされている方ならば1週間も触っていれば使いこなせるような言語です。 多言語マスターの必要性が高まってきて 試しに、JAVAを1日程度触ってみました。 (過去にPHPも少しやっていたのでオブジェクト指向の基礎概念等は解ります。) 基本文法やクラスの概念や、基本的な設計に関する部分程度まで解りました。 ですが、ここからが問題です。 どんなクラスが在るのか? 『これこれ』の処理をするには、どのクラスやメソッドを使うべきか? これらを把握して、いちいちネットで調べなくても、的確なクラスを即座に選択して スラスラ入力できるようになるのか?など、心配になりました。 (テキスト処理、ファイル処理、DB処理、GUIゲームやグラフィックを除く程度全般をスラスラ書ける程度) 現時点の印象で、さすがに、高級言語と勝手が違うので、 JAVAをマスターするために最低半年から1年位浸かっていないと使いこなせないのではと感じております。 現実問題として学習に取れる期間と時間は、3ヶ月 トータルで120時間程度しか取れません。やはり、JAVAに手を出すには無理がありますでしょうか? 個人差等もあると思いますが回答者さまの裁量で現実的な標準と思われる回答を希望しております。 また、習得可能ならば、どのようなステップで学習するのが効率よいでしょうか? ちなみに、 JAVAを習得したい理由は、 現在のなでしこででは、やはり実用的なプログラムを組むのに不都合が生じる場合があります。 以下のような問題です。 なでしこの問題点 ・内部ではUTF-8非対応なため、文字コードの問題が常に付きまとう。 ・処理がJAVAに比べて遅いため、何十万件などを処理する際にリソースの管理や処理時間で問題あり。 ・GUIのバリエーションが少ない。リッチなアプリ(商用的)は不可能。見た目や使い勝手で問題あり。 ・正しく書いても動かないバグがほんの少しある(回避方法はかなり遠まわしな書き方や代替方法を強いられる) 本来は自己投資として、惜しまず挑戦するべきなのでしょうが 慢性的に睡眠時間にも余裕が無い生活を強いられている 状況で手を出して自身の首をしめた技術は数知れずの状態なので察して回答いただけると助かります。

  • Java
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.2

どれくらい時間がかかるか、は人によるのでなんとも言えません。 他の言語でプログラミングをある程度理解しているのなら、そんなにはかからないとは思いますが。 ・Javaも「高級言語」に分類されます。 ・OpenOfficeのように、Javaを使ったアプリケーションはいくつもあります。 サーバーサイドが多いというだけです。 それに、今でも「なでしこ」なんていうマイナーな言語を使ってるのですから、世間の動向なんて気にしなくてよいのでは。 (PHPのように、明かに単独アプリケーションに向いてない(できないことはないけど)ものでなければ) ・現在のVisual Basicは.NET frameworksが必要です。 ・Javaも動作させるにはJavaVMのインストールが必要です。 .NETが入っていないPCに.NETをインストールするのと大して違いはありません。 .NETが不要だから、という理由でJavaを選ぶのはちょっと違うのではないでしょうか。 どこでも動作させたいのなら、WindowsXP以降ならインストールされているはずのwscriptとか、VB6以前やC/C++でビルドしたネイティブアプリケーションとか、インストール不要のPortable版の各種実行環境(Perl,Python等)とか、を考えた方がよいでしょう。

akaginoyama
質問者

お礼

・現在のVisual Basicは.NET frameworksが必要です。 知りませんでした。 >WindowsXP以降ならインストールされているはずのwscriptとか、VB6以前やC/C++でビルドし >たネイティブアプリケーションとか、インストール不要のPortable版の各種実行環境 >(Perl,Python等)とか、を考えた方がよいでしょう。 JAVAは万能と言うイメージでしたが認識が間違っていたようです。 文字コードに問題が無く比較的処理の早い言語で選ぶべきですね。 今のところPythonが良いのかもと思っています。

その他の回答 (2)

回答No.3

>OppenOfficeがJAVAで書かれていると言うことだけで判断していました。 OpenOffice.orgはJavaで作られていません。 C++で作られている。 極々一部機能がJavaで書かれているに過ぎない。 >VBは以前使っていました。若干できることがなでしこよりも増えるのですが、 >処理スピードと開発効率はなでしこ以下かそれ程変わりませんでした。 えっ?それなんの冗談? C#とVBでではできることは同じだとし速度も同じ。理由は両方とも.netだから。 それこそまともにVB触ってない証拠。 >C#に関しては動作環境においても.netが確実に入っているマシンが使える保障がありません。 じゃあなんで選択しにJavaが含まれる? Javaの実行にもJavaVMが別途必要で確実に入っているマシンが使える保障はないぞ。

akaginoyama
質問者

お礼

端折りすぎて誤解をあたえる回答で申し訳ありません。 JVMの環境は入っておりますが、.netは入っていないと言う条件です。 それゆえ、VBは.net環境を使わずと言う前提でした。 ですが、VBは簡単なアプリを数本(10本に満たない)程度書いた程度でなでしこに移行したのでまだ選択枝としては考えています。

回答No.1

>いちいちネットで調べなくても、的確なクラスを即座に選択して >スラスラ入力できるようになるのか?など、 そんなの無駄。基本的なクラスだけ覚えておいて後は必要に応じて調べればいいだけ。 >多言語マスターの必要性が高まってきて 質問者は本職の人ではなくて趣味の人ですよね?本職の人がまず仕事で「なでしこ」を選択すること自体あり得ないですから でそんな趣味の人の必要性って何? >内部ではUTF-8非対応なため、文字コードの問題が常に付きまとう。 そもそもWindows上でWindowsアプリを作っているならそれほど文字コード問題は発生しない。 >処理がJAVAに比べて遅いため それ本当に比べたの? 「なでしこ」って確かコンパイルされてネイティブコードはいているはずだよね? Javaは基本的にコンパイラ言語ではあるけど中間言語としてまでで後はJavaVM上で動いているの理解できている? >GUIのバリエーションが少ない。 Javaの活躍の場はクライアント側のGUIアプリではなくてサーバサイドの方。 そういうこともあってGUIライブラリはいくつかあるがそれほど使い勝手のいい物がない。 下手したらなでしこ以下だぞ。それを理解しているのか? >正しく書いても動かないバグがほんの少しある それどの言語にもあり得る事なんですけど。 Javaを選ぶのはすでに選択肢を間違っている。 なんでVC++とかVC#,VBなんかの言語を選ばないのだろうか?

akaginoyama
質問者

お礼

色々と知らなかったことが解りました。 回答ありがとうございます。 >基本的なクラスだけ覚えておいて後は必要に応じて調べればいいだけ。 基本的なクラスが大体どれだけ存在するのか?そのマスターに最低どれだけ時間を取られるのかも、マスターされている方から見ての意見をおうかがいできればとの思いです。 >処理がJAVAに比べて遅いため なでしこは実行直後に中間コードを一旦吐いてから実行しています。 この仕組みで高級言語の中ではかなり高速なのですが、 それでも多量のデータを処理する場合にPCを長時間占有できない問題があるのです。 DB登録処理で100万回のループ時間で試してJAVAと比べても軽く100倍以上の差が出て 処理によっては1000倍近く変わりました。 >趣味の人の必要性って何? アプリを販売したりすることはないのですが 社内の事務処理等を行う際のツールとして使っています。 >それほど文字コード問題は発生しない。 ごく一部なのですが、サーバーとの連携やデータベース処理で問題がありまして その都度外部のアプリとの連携で処理しております。 >GUIライブラリはいくつかあるがそれほど使い勝手のいい物がない。 知りませんでした。 OppenOfficeがJAVAで書かれていると言うことだけで判断していました。 Javaはデスクトップアプリ向きではないんですね。 >なんでVC++とかVC#,VBなんかの言語を選ばないのだろうか? 諸処の問題からです。 VBは以前使っていました。若干できることがなでしこよりも増えるのですが、 処理スピードと開発効率はなでしこ以下かそれ程変わりませんでした。 C#に関しては動作環境においても.netが確実に入っているマシンが使える保障がありません。 VC++は習得が難しく開発効率がJAVAよりも悪いイメージで敬遠しております。 >Javaを選ぶのはすでに選択肢を間違っている。 Javaが無理ならば現状なでしこと外部アプリの連携で行っている力業を続けるか?と言うことも考えています。

関連するQ&A

  • Javaの習得に向けたグラフィックスについて

    Javaの習得に向けて学習する場合、ひとえにオブジェクトがどういう風なものなのかを習得するということが主眼になると思います。クラス,メソッド,クラスの継承とか,クラス間での変数のスコープ(これは全言語で共通の学習)とかです。ファイル入出力、ループ、分岐なども全言語共通的なので翻訳可能であり、学習の対象ですらないもののように思えます。 しかし、グラフィカル(GUIを生成して、ブラウザで見せたりする)なところになると急激に視界不良のような印象になります。長い名前のコマンドでイベントリスナーとかフレームとかのオブジェクトとかラジオボタンをペタペタ貼り付けるとかです。それらのグラフィックスの機能というのは、Java独特のクラスとかオブジェクトの学習と関連しているのかどうかわかりにくくなる印象を持ちます。Javaの学習とあのグラフィックスは切り離して考えるのか、それともJavaの学習の結果その応用としてグラフィックス関係の処理が出てくるのか不明な感じになります。もし後者なら学習した内容に照らし合わせた機能と考えて納得させる必要がありますが、前者ならあんまり気にしないでブラックボックスとして処理するということになりそうです。Javaのグラフィックスはどのように理解して学習すればいいのでしょうか。 例えばVisual BasicなどはオブジェクトをGUI的に作ってウィンドウ上に貼り付けてその機能をコード化するということになるので、もう少しわかりやすいというか整理して(分業というか)して処理できそうですが、Javaは全部コード化するので理解しにくい印象があります。たとえばコードがあってその横にグラフィックスが示されているなら、もう少しマシなのですが。Javaの入門書では全くグラフィックスに触れないものあり、それだと通読しやすいです。グラフィックスが出てくると急激に歩みが遅くなるのですが。考え方について教えて頂きたいと思います。 よろしくお願いします。

  • JAVA GUIをデザイン性のあるものにしたい

    JAVAでGUIを使用し、アプリを作成したのですがGUIだとデザイン性も限られ、見栄え的にもかぎられてきてしまいます(JAVAのコップマークが入ったり)。それで普段のいろんなソフト(例えばMSNメッセンジャー)みたいなデザイン性のあるものにしたいのですが何言語をしようすればよいのでしょうか? あとシステムは基本的にJAVAで組んでしまったので、あとはボタンとか押せるようにする画面をつくるだけなのですが、JAVA GUI以外にするとJAVAを使っているということで問題があるのでしょうか?とりあえずJAVAで作ったシステムを何かしらの言語でデザイン性のあるものにしたいです。本当に困っているのでご指導よろしくお願いします。

    • ベストアンサー
    • Java
  • Javaの勉強の仕方について

    これからJavaをもっと勉強していくにあたり、質問させていただきます。 今自分のレベルとしては、C言語などの経験もあり、 ・Javaの基本的な文法やルール、概念の理解、記法は身につけた。 ・SwingなどのGUIについてはノータッチ の状況です。 今、これからもっとJavaでいろいろなプログラムをかけるようになるためには、どのような勉強方法をすればよいのかわからないのです。 『どのような本を使って、どういう風に勉強すればいいのか』が知りたいです。特に、どういう本を使えばよいのか、がわかりません。 何か、Javaのプログラミング問題集のようなものを手にいれ、それで打ち込む練習を重ねるのでしょうか。それならば、おすすめの問題集などはありますか? 個人的な意見でも構いません。 Javaを学んでいく、貴殿なりのスキルアップするための勉強術・勉強理論を教えてください。 お願いします。

  • COBOLの考え方からJavaへ

    今までIBMホスト畑で働いていたので、使用できる言語は COBOLやPL/Iだけでしたが、今後の仕事の展開も考え Javaを習得したいと思っています。 とりあえずJava言語の入門書を終えたので、 次は、以前新人のCOBOL研修用に作成した仕様書を Javaで書きかえてみようと思いたったのですが・・・ できませんでした。。。 COBOLは、MAINルーチンをプログラムの主とし 個々の機能(FILEのREAD処理など)をそれぞれの SUBルーチンで記述するといった構造的な作りになっています。 これをJavaにすると「FileのREAD処理」を1つのクラスとして考え、 「MAINルーチン的」な実行クラスから 「FileのREAD処理」クラスを呼ぶ(継承する)のか? オブジェクト指向とは、もっと別のことではないか? といったように、全然ちんぷんかんぷんな状況です。 みなさん、Javaでプログラムを記述するときは どういったアルゴリズムを考えながら記述しているのでしょうか? 是非ともご教授ください。 また、COBOLには、誰がソースをみてもわかりやすいように 記述するなどの暗黙的な決まり(ネストは3回程度など)があるのですが、 Javaにもあるのでしょうか?

    • ベストアンサー
    • Java
  • javaの入門書

    java言語を学ぼうとしています。 javaの入門書でいいものがありましたら、教えていただけますと幸いです。 amazon等のサイトは一応確認済みです。 ちなみに、C言語は独学中で、基本的なこと(ポインタの概念等)は把握しています。 宜しくお願いします。

    • ベストアンサー
    • Java
  • JAVAのGUIのデザイン性について

    JAVAのGUIのデザイン性について教えてください。 また最初に述べておきますが、自分自身まだまだプログラミング初心者でして、 主にインターネットで調べたことが基本となっております。 私は数あるプログラミング言語の中から現在JAVAを選択し、勉強中です。 JAVAを選択した理由は下記のとおりです。 ・人気がある ・求人数が多い ・ユーザーが多い ただ、気付いたことがありまして、それはGUIのデザイン性が乏しいのでは?ということです。 他の言語、例えばC#(visual studio)や、html5のようなスタイリッシュなGUIを作成できるのか どうか疑問です。 これらをふまえたうえで、下記2点のご質問に回答願います。 1.C#やhtml5にくらべてJAVAのGUIのデザイン性は乏しいという認識で合っていますでしょうか?   もし私の勘違いでしたら、理由と具体的な参考サイトを教えていただけますでしょうか。 2.JAVAの求人数、人気、ユーザーが多い理由を教えていただけますでしょうか? 以上、宜しくお願い致します。

  • 異なるプログラミング言語を連携する手段はある?

    異なるプログラミング言語を連携する手段はあるでしょうか? 例えば、JavaでGUIの処理を書いておいて、計算をC言語で書いておく。まず、C言語で処理させてその結果をJavaが受け取りJavaのGUIで表示する。のような。 よろしくお願いします。

  • GUIアプリケーションを作成

    GUIアプリケーションを作成 初めてのGUI作成です。 メモ帳とCygwin(コンパイル,実行の際に使用するソフト)だけでは,GUIプログラミングは出来ないのでしょうか? 幾つかC言語のwindowsプログラムを見ましたが、見慣れない記述ばかりでした。 (使ったことはないですが、)一般的には、VC++やBCC++のGUI開発の支援ソフトを利用するものなのでしょうか? JAVAの方が,Swingを使用すればGUIが簡単に習得出来るそうで、C言語より早く習得できそうです。JAVAでGUI作成をするときのデメリットがあれば教えて下さい。

  • WEBアプリの概念を、中級者に説明する参考資料を探しています。

    今、WEBアプリの製造チームにいます。 現在、メンバーの作業効率があまり良くありません。 簡単なマスタメンテが一週間程度かかってしまっています。 メンバーが言うには、 「VBは得意なんだけど、WEBアプリっていまいちわかんないんですよ。」 ということです。サンプルを見ながらWEBアプリを作ることはできているので、 基本概念がよくわかってないのかもしれません。 そこで、メンバーにWEBアプリの概念を説明しようと思っています。 何か良い参考資料はありますでしょうか。ホームページでも本でもかまいません。 今のところ、下記のようなことを説明しようと思っています。 この部分はこう説明した方が良い、というものがあれば教えてください。 ・VBはクライアントで動くアプリケーションである。 ・WEBアプリは、下記の繰り返しである。   ・サーバーから送付されるHTMLをクライアントで表示する。     (データはHTMLで送付される)   ・ユーザの入力+ボタンクリックを、サーバーに返答する。     (データは、POSTとか、GETとかセッション変数で受け渡しされる)   ・サーバーは、何らかの処理をして、またHTMLを返答し、クライアントで表示する。 参考:言語は、JAVAでうごく簡易言語で、誰も聞いたことが無いようなものです。この部分の習得に時間がかかっているということもあります。

  • Javaを習得するお奨めの本・HPは?

    私はjava初心者です。 C言語やVBも経験がありません。 経験があるのは20年前に流行ったBASICのみです。 こんな私がJavaでプログラミングしたいと思うのですが、お奨めの書籍や雑誌、ホームページがありましたら紹介してください。 どういうプログラムを作りたいかというと、最終的には受注データから簡単にガントチャートを引けるような工程計画プログラムと、子供のためにトーマスを主役にした線路ゲーム(よくレールを時間内に組合さなければ脱線するというようなゲーム)です。 具体的な目標がなければ、お奨めの本やHPもわからないと思い書いたのですが、基本的にはJAVA言語を習得できるものならなんでもいいです。 BASICなら理解できていたのですが、関数型のC言語や、クラス型のC++やJAVAになると理解できなくなってしまいました。 ましてやオブジェクト指向なるものは? よろしくお願いします。

    • ベストアンサー
    • Java

専門家に質問してみよう