Javaを学ぶための出発点–あなたが知っておくべきことと私が知っていたらよかったこと

公開: 2020-04-14

それがあなたの大学のカリキュラムの一部であるならば、プログラミングを始めることはより簡単です。 そうすれば、どの言語を学習するか、どの引数をスキップするか、どの概念にもっと注意を払うかを選択する必要はありません。

私が大学に行ったとき、Cは最初に学んだプログラミング言語でした。その後、教授がC ++のコースを教えてくれました。その後、必要に応じて、Java、Python、その他の言語を学ぶことができました。

ただし、エントリーレベルのソフトウェア開発者と話すときは、Cでプログラミング教育を開始することはお勧めしません。代わりに、通常はJavaを学ぶことをお勧めします。理由については後で説明します。

私の意見では、Javaコミュニティには学習資料がぎっしり詰まっていますが、初心者の開発者はよく「では、どこから始めればよいのでしょうか」と尋ねます。 または「理論を読む必要がありますか、それともすぐにコードを書き始める必要がありますか?」

どうやら、自分でコーディングを学ぶのは簡単ではありません。 ベテランの開発者として、私は初心者の仲間を助け、Javaの学習曲線の落とし穴を彼らに説明することにしました。 この投稿では、Java学習のゲームチェンジャーであるプラクティス、多くのJava開発者が失敗するプラクティス、および職場で習得した概念を確実に適用する方法について説明します。

しかし、なぜJavaなのか?

あなたの最初の本能が私との議論を開始し、Pythonの方が簡単である、またはCがソフトウェア開発を学ぶためのより伝統的な方法であると説明することである場合、私はあなたがどこから来ているのかを理解していることを保証します。

私はJavaを客観的に見て、その欠点(たとえば、速度とメモリ効率)を認識しています。それでも、エントリーレベルの開発者として学ぶのにこれ以上の言語はないと思います。

プログラミングの出発点としてJavaが大好きな理由は次のとおりです。

  • Javaの概念は、複数のプログラミング言語で使用されています。 オブジェクト指向プログラミング、型変数、または制御フローはすべて、後でCまたはC ++で作業するときに使用できる概念です。 Python開発者がPythonでのコーディング方法しか知らない場合は、Javaと他のWebおよびモバイル(たとえば、KotlinはJavaに多くの機能を負っています)言語との間の架け橋になります。 汎用性の観点から、Javaを選択することは間違いなく他のどの言語よりも優れています。
  • Javaでのコーディングは用途が広いです。 最初の開発言語では、スキルと仕事を得ることができる儲かるテクノロジーだけが必要なわけではありません。 むしろ、あなたが楽しい乗り物に乗っていることを確認することがあなたの最大の利益です–そしてJavaはまさにあなたが探しているものです。 始めたばかりの場合は、入力する必要が少ないためにCが単純であるという感覚に悩まされる可能性があります(後で理解するように誤解を招く可能性があります)。 しかし、プログラミング言語の学習時代を思い出すと、Javaに干渉することに勝る学習経験は他にありません。 テキストベースのRPG、コンソール管理のゲームなど、創造性とサンプルアプリケーションを構築する余地はたくさんあります。 その上、あらゆるレベルの難易度のプロジェクトを見つけることができます。実践的な学習に進む前に、理論的な概念を何ヶ月も学ぶ必要はありません。
  • 広く使われている言語。 時には、それはそれと同じくらい簡単です–あなたはあなたが何でもできる言語を学びたいと思っています、そしてJavaより良いものはほとんどありません。 この言語は、Webアプリ、ソフトウェア、Androidプロジェクト、および内部ツールに最適です。 Javaの基本的なコツをつかんだ後は、多かれ少なかれ何でもできるように感じるでしょう。 確かに、JavaScriptのようなスクリプト言語をいじる必要はありますが、少なくともJavaの中間レベルに達した後は、プログラミング言語を最初から学ぶほど怖くはありません。

Javaプログラミングジョブマーケット–何か良いですか?

コード開発を学ぶ
画像:KnowTechieストア

Javaを学ぶのは楽しいかもしれませんが、これが私が知っている唯一の言語である場合、私は失業して飢えているのではないでしょうか。

Javaはエントリーレベルの開発者の間で非常に人気があるため、Javaの使用方法を誰もが知っているように感じ、プログラマーを雇うことはもうありません。 おそらく、あなたはプライミングの古典的な効果を経験しています–あなたはたくさんの何かを見ているので、それは痛々しいほど一般的かもしれないと考えています。

適度に熟練した開発者のためにたくさんの仕事があることを証明するために、Javaの求人市場に関するいくつかの統計を収集しました。

  • Stack Overflowの最新の調査によると、Javaは最高ランクのプログラミング言語です。
  • Glassdoorによると、米国のJava開発者の平均給与は79,137ドルです。
  • 現在Indeedで利用可能なJava開発の開始数– 27,049

テクノロジーの才能に対する需要の高まりやAndroidデバイスの急増(Javaは広く使用されているAndroid開発言語)など、テクノロジーの世界の全体的な傾向を考慮に入れると、仕事が不足していないことが明らかになります。近いうちに。

したがって、Javaを試してみるかどうかを躊躇するのではなく、Javaをまとめて、今日から言語を学び始めてください。

Javaの学習の過程で知りたいこと

私がJavaを学んでいた当時は、数十のチュートリアル、書籍、公式ドキュメントを除いて、ツールとリソースの数は半分ではありませんでした。 たくさんのリソースがあるので、開発者が簡単になったと思う理由は、多くのエントリーレベルのコーダーが混乱し、さまざまなツールに圧倒されていることです。

ソフトウェア開発の習熟度を獲得するための確固たる戦略はありませんが、誰かがもっと早く教えてくれたらいいのにと思うことがいくつかあります。

1.プログラミングではなく、問題解決を学ぶ

ウェブ開発者
画像:ペクセル

多くの初心者がチュートリアルの後にチュートリアルをざっと見て、パターンや概念を理解しているのを目にします。 ただし、これはJava構文の学習に役立ちますが、プログラマーの考え方からはほど遠いものになります。

Javaチュートリアルを完了し、スキルを有効に活用しなければならなかった直後、私は混乱し、挑戦しました。 アプリケーションを可動部分に分解して、自分でゼロから構築する方法を見る代わりに、私は登る方法がない高山のように各プロジェクトを見続けました。

幸いなことに、途中で、実際のJava開発に自信を持てるようにするのに役立つリソースがたくさん見つかりました。

  • プログラマーのように考える–学習している言語に関係なく、開発者の考え方を身に付けるのに役立つ本
  • Codegym –理論的概念の実用化に重点を置いたJava学習専用のプラットフォーム。 これのおかげで、プロジェクト開発を容易にするのに役立つ複数の便利なハックについて知りました。
  • Stack Overflow –ここに潜んでいることについて多くのことを聞いたことがあると思います– SOからコードを貼り付けることはお勧めしませんが、フォーラムをざっと見ると、開発者の考え方に一歩近づくことができます。

2.支援技術を過小評価しました

どういうわけか、私はJavaライブラリとフレームワークがどれほど役立つかを幸いにも知らなかった。 当然のことながら、初心者の開発者はすべて自分でやりたいと思っていますが、1日でできることはそれだけであり、ショートカットを探すことが重要な場合がよくあります。

Javaの学習の旅を再開する場合、言語とペアリングするツールセットを選択するときは、かなり徹底的になります。

開発者がチェックアウトすることをお勧めするツールは次のとおりです。

  • JUnit –Javaプログラマーにとって便利なテストツール
  • JRat –開発者が製品の実行を監視できるようにするJavaパフォーマンスプロファイラー。
  • Mockito –Javaモックを容易にするオープンソースフレームワーク。
  • Ehcache –Javaプログラミング用に特別に設計されたキャッシュツール。

以下に、Java学習に最も重要なライブラリ、フレームワーク、およびAPIをリストします。

3.学習計画がありませんでした

チュートリアルとオンラインリソースに多くの信頼を置いて、私は完全に頭がおかしいJavaを学び始めました。 私は自分の旅のタイムラインも、自分のスキルをどのように使うかについての考えも、肉付けされた毎日の勉強ルーチンもありませんでした。 私のモチベーションは単純で愚かでした。Javaはトレンディに見え、それが見逃しのように感じられることを知らなかったので、なぜ私はそれを学ばないのですか?

ソフトウェア開発を始めている場合は、一日の終わりにどこに行きたいかについてもっと徹底してください。 念頭に置いている目標に目がくらんではいけません。プログラミング言語の学習は、フルスタックの開発者になりたい場合でも、常に基本から始める必要があります。

今のところ、Javaを最初から学ぶ必要がある場合、これは大まかに私のロードマップになります。

JDK API:

  • Java IO
  • Javaコレクション
  • Javaの並行性
  • Java 8

Javaフレームワーク:

  • スプリングブーツ
  • Hibernate
  • マイクロノート
  • Eclipseマイクロプロファイル

ライブラリのテスト:

  • きゅうり–ビジネス主導のテストを容易にします
  • Robot Framework –統合テストの最適化に役立ちます
  • ユニットテスト用のJUnity
  • モックアップテスト用のMockito。

より詳細なJava開発学習モックアップについては、以下のグラフを参照してください。

これらの各ブロックに期限を割り当てて、怠けて進歩しないようにします。

結論

Javaを学ぶことは楽しい乗り物であると私が言うとき、私は主にあなたが熟練した後に感じるであろう懐かしさと幸せな思い出を指します。 プロセスに関しては、問題に対する正しい答えを得るという高いことと、学習リソースがあなたに何を求めているのかを理解していないという低いことの両方を経験します。

他の学習と同様に、プログラミング言語を習得することは血の汗と涙です。 ただし、Javaの最初の煩わしさを辛抱強く乗り越えれば、学習プロセスは徐々に楽しくなり、疲れも少なくなります。

これについて何か考えがありますか? コメントで下に知らせてください、または私たちのツイッターまたはフェイスブックに議論を持ち越してください。

編集者の推奨事項:

  • この13ドルの初心者向けコースでJavaScriptスキルを飛躍的に向上させましょう
  • 9は、Javaを最新の状態に保つためにデッキを学習する必要があります
  • Javaホスティングについて知っておくべき3つのこと
  • なぜJavaプログラミングは企業に人気があるのですか?