- ベストアンサー
言語の勉強
現在、ネットワークエンジニアの職についていますが、 開発の仕事をしてみたいと考えています。 しかし、開発経験はまったくなく完全に素人です。 これから独学で勉強して開発のお仕事に転職を考えています。 友達からはJAVAを覚えたほうがいいと言われました。 独学でJAVAを学習するのは困難なことでしょうか? また、良い勉強方法があったら教えてください。 その他、お勧めの言語があれば教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 私は、Javaで携帯アプリを作っています。 他には、C,C++,Perlが使えます。 ネットワークエンジニアの仕事もよく知りませんし、 ネットに特化した開発の経験も大してありません。 --------------------------------------------------------- ここからが本題です。 初心者にとって、JAVAは、難しく無いと思います。 ですが、いきなり全てを理解するのは無理ですし、その必要もありません。 また、実際に利用してみないと価値がわからない機能が多いです。 (ちゃんと扱えば非常に便利ですが・・・。) ですが、よく出来た言語なので、問題は無いでしょう。 わたしは、別に講習会に行ったり、 社内で勉強会をしているわけではありません。 ほぼ、OJTと独学です。 それよりも、転職が目的とのことですが、 問題なのは、転職先がどの程度のスキルを求めているかです。 結局のところ、プログラムのスキルを身に付けるには、 日々の学習の継続と、実践経験じゃないかと思います。 という事は、できる事ならば早いうちに転職した方が スキルが付くと思いますよ。 とはいえ、会社は良く見極めるべきだと思います。 世の中には、 無理をして仕事を受ける会社もあるでしょう。 スキルの低い社員がいっぱいの職場もあるでしょう。 こういうところには、行かないほうが良いかと・・・。 良い会社かどうかを、 自分の目で見て判断するのは、難しいかも知れませんね。 >開発経験はまったくなく完全に素人です。 というのは、プログラム初心者という意味でしょうか。 そうなってくると、社員のレベルなんて判断できないでしょう。 あまり良い案が思いつきませんが、 例えば、 その会社に仕事を頼んだ人から感想が聞けると良いですね。 ・納期は、守っているのか? ・残業ばかりしていないか? ・向こうから仕様変更の話しを、よく持ち出されていないか? などなどです。 とにかくあらゆる手段を利用して、 その会社の情報を集めるべきでしょう。 とにかく現場で何が起こっているのかが、わかると良いですね。 プログラムがわかっていない人が、 管理職についていたりするでしょうから、注意が必要です。 --------------------------------------------------------- さてここからは、プログラムの学習において、 私なりのポイントを書きたいと思います。 ・全てを理解しなくても良い。(暗記しなくて良い。) これは、今必要の無い技術や知識を 無理して覚えなくても良いという事です。 例えば、プログラム言語には、 関数とか、メソッドとか呼ばれるもがあります。 両者とも同じものです。 Javaにもサンマイクロシステムズから、 開発に便利な関数セットが提供されています。 (こういうものをライブリと呼びます。) ですが、こういうものは、これから使おうとしているもの だけを調べておけば良いです。 使いもしないものを覚えてもしょうがないです。 また、実際の開発では、覚える事よりも 必要な情報を探すスキルの方が大事です。 ・いかにプログラムを簡単に作るかを追求する。 (楽をする。) これ、本当に重要です。 わざわざ苦労してはいけません。 楽をするという事は、効率の良い方法を模索するという事です。 これは、納期が大事なビジネスでは、重要な事でしょう。 また、非効率のせいで、残業したら元も子もありません。 残業すれば、疲れを溜め込んでしまいます。 独学の時間も減ってしまうし、ストレスも溜まるし、 仕事の効率も下がるし、百害あって一利なしです。 負のスパイラルに入り込まないようにして下さい。 楽をする為に、便利な開発ツールや、 Java言語の機能を使いこなして下さい。 ・煮詰まったら、すぐ休む プログラムには、バグがつき物です。 実際の仕事でも必ずありますが、疲れた状態では、 バグを直すのは無理でしょう。 私自身、前日に数時間かけても、まるで進展しなかったバグ対応が、 次の日、ほんの15分位で、解けてしまったことが、よくありました。 ・身に付けたい技術のソースコードを入手する。 他人のソースコードを分析するのは、とても良い学習になります。 実際の仕事では、他人のソースを書き換える事が良くあるので、 必ず役に立つ事でしょう。 ・物事は、簡単に考える。 これは、楽をするに近い考えですが、 プログラムは、いかに単純に作るかが重要です。 複雑に作れば、バグも多くなるし、直すのも大変です。 とにかく、他人が見てもすぐに理解できるような プログラムを作りましょう。 また、同じ事をするにも、様々なやり方があるはずです。 あるやり方に限界を感じたら、別のやり方を試して見ましょう。 -------------------------------------------------------------- とりあえず今回は、この位にしておきます。 また何か思いつけば、書き込みに来ます。 とりあえず、学習に関しては、 手始めに 簡単なJavaの本か、ネットで調べて下さい。 本当に簡単な説明が良いです。 この分野では、無駄に難しく書いてある本がいっぱいあります。 まずは、理解できなければ意味が無いので、 簡単なのにして下さい。 それで、ある程度プログラムの作り方になれたならば、 「Javaでなぜつくるのか」と「プログラムはなぜ動くのか」が、 個人的にオススメなので、立ち読みでもして下さい。 特に、「Javaでなぜつくるのか」を読んでおくと良いです。 Javaの文法の本ではありませんので、あしからず。
その他の回答 (2)
- veracity
- ベストアンサー率28% (2/7)
私はJavaを使ったWebアプリケーションの開発がほとんどなので、 他の言語についてはあまりコメントできませんが、 独学でもJavaを学習する事は十分に可能だと思います。 一つの目標として”Java認定資格”の取得を 目標にするのもいいかもしれません。 またWebアプリケーションの開発といっても言語は、 PHP、Perl、Ruby、Java、C#だったりと 会社の方向性や仕事の規模などによって大きく違うと思います。 私のところでは、 大規模なアプリケーションの場合はJavaやC#が よく使われています。 あと勉強用に単純なアプリケーションを作りたい場合は ローカルな環境で出来ますが、 それをインターネット上に公開したい場合は、 PHPなどのスクリプト言語の方が公開しやすいかもしれません。 個人的にはJava + PHPなどのスクリプト言語の 組み合わせが出来るとWeb系ではつぶしが利くと思います。
- gigamaiden
- ベストアンサー率33% (11/33)
ご質問の件ですが 独学で学ぶことは、決して難しいことではないと思われます。 当方も、仕事でプログラミングしておりますが 学生時代に、ほぼ独学で習得しました。 (ただ、独学なので、抜けてる部分とかありますけどねw) 言語に関してですが、ネットワーク(Webアプリ)なら Javaが良いでしょう。マルチプラットフォームで ユーザは基本的に、ブラウザがあれば、実行できますからね。 また、JavaでPGできるようになれば C言語やBasicなんかも、色々と違いはあるものの 似ている部分も多いので(特に.Netになってからは) 大体、読めると思います。 プログラミングが全くの初心者であれば 「Javaの絵本」という本が、とても分かりやすいので 良いかもしれません。 ただ、ある程度、自分で書けるようになるまでには それなりの時間がかかると思いますので・・・ コツコツやってくださいませ。