Javaでのコーディングを学ぶ方法:なぜ、どこから始めるべきか

キャリアの目標を定義し、言語を選択します。これは、プログラミングの経験がなく、開発者のコ​​ミュニティに参加することを目的としている人にとって最も重要なアドバイスです。しかし、どの言語があなたの目的に最も適しているかわからないまま、どうやって選択をすることができますか?

すべてのプログラミング言語の中に「マーケットリーダー」がいたら簡単ではないでしょうか。そうすれば、すべての新規参入者は常に安全な選択をすることができます—この言語を学ぶと、きっと高い需要があります。もちろん、それは不可能です。言語は、多くのタスクを解決するための「ツール」です。しかし、それでも、優れた選択肢と見なすことができるものが1つあります。それはJavaです。

Javaは、よく構造化されたオブジェクト指向言語であり、初心者にとっては簡単だと考えることができます。自動的に実行されるプロセスが多数あるため、非常に迅速に習得できます。「そこで物事がどのように機能するか」を深く掘り下げる必要はありません。Javaはクロスプラットフォーム言語です。これにより、プログラマーは、任意のデバイスにデプロイできるアプリケーションを作成できます。これは、モノのインターネットに最適な言語であり、エンタープライズレベルのアプリケーションを構築するための適切なツールです。

「新入生」にとって重要なことは、Javaには最大のグローバルコミュニティの1つと、高品質のドキュメントがあります。問題がある場合は、答えがそこに用意されていて、あなたを待っている可能性が高いです。Javaのもう2つの利点は、ジュニア開発者として対処しなければならない課題のほとんどをカバーする膨大なコレクションとフレームワークです。

最後に、それは立派な背景と卓越した未来を持つ言語です。新機能で強化された2つの最新バージョンは、互いに6か月以内にリリースされました。これにより、Javaは最前線に立ち、立派なプロのランキングで最高の位置を維持することができます。

しかし、学習曲線が短いプログラミング言語について話している場合でも、初心者には隠れた岩がたくさんあります。どのくらいの時間を学ぶ必要がありますか?どのソースを信頼しますか?避けるべき間違いはどれですか?あなたの学習経験をずっと見ていきましょう。

一般的な障害物を回避するようにしてください

だから、あなたはプログラミングに不慣れです。おめでとうございます。他のプログラマーの経験を生かして、独学でよくある間違いを避けることができます。ここにいくつかの頻繁な失効があります。

特定の目標を設定せずに学習する

特定のプログラミング言語での知識の規模と望ましいレベルを見積もるには、まず、簡単な質問に答える必要があります。なぜプログラミングが必要なのですか。

コーディングに真剣に取り組み、Java開発者になるつもりなら、少なくとも4〜5時間は毎日勉強する必要があります。ただし、単にスコープを拡大したい場合は、よりリラックスしたテンポを選択できます。とにかく、テクノロジーは進化しているので、今後何年にもわたって教育を延長しないようにしてください。あなたが仕事を得るために特定のフレームワークまたは開発ツールを学ぶ間、それは時代遅れになります。

ポップアップ表示される「役立つもの」を読むことは、学習の最善の戦略ではありません。一般的な計画を調整してもかまいません。ただし、まったく従わないと、必然的に意欲が失われます。

一度に多くのテクノロジーを学ぼうとする試み

これはその後の間違いであり、終わりのない学習につながります。燃え尽き症候群を避けるために、教育計画にあまりにも多くのテクノロジーやツールを詰め込もうとしないでください。情報を処理し、すべてが実際にどのように機能するかを確認するには時間が必要です。

実践せずに研究と理論が多すぎる

プログラミングは、たくさんの練習を積むことによってのみ習得できるスキルです。理論的には真剣なバックグラウンドが必要ですが、講義やコースを読む(または見る)だけである限り、実際にコーディングすることはできません。考えてみてください。誰もそれを試さずに泳ぐ方法を学ぶことはできません。説明が必要ですが、何よりも行動が必要です。

日常のプログラマーの問題に対処する方法を教えるのは、たっぷりの練習だけです。たとえば、コードを定期的にチェックし、関連する問題が山積みにならないようにする習慣が身に付きます。また、最も簡単なソリューションから始めます。次に、コードの改善に絶えず取り組んで、より精巧なものに移ります。そして最も重要なことは、日常的にコーディングに慣れることです。

単独でコーディングすることを学ぶ

初心者は、主にインポスター症候群のために、オンラインプログラミングコミュニティに参加するか、イベントに参加するかを躊躇することがよくあります。しかし、覚えておいてください。誰もあなたを倒したくないのです。プログラミングコミュニティは協力的です。これは、多数のオープンデータソースが表示される方法です。彼らはチームで働くことに慣れていて、確かに、彼らはすべて、人生のある瞬間の初心者でした。

見てみましょう。プログラミングに関するフォーラムやWebソースはたくさんあります。開発者は熱心に知識を共有し、コラボレーションを受け入れます。オンラインで学習を開始し、経験豊富な同僚から役立つヒントを入手して、後で最初のコーディングプロジェクトを見つけることができます。

いつの日か、プログラミングのすべての側面を完全に理解できるようにしてください

誰かが服用するピルを発見し、すぐにプログラミング言語に習熟した場合、彼は地球上で最も裕福な人になるでしょう(申し訳ありませんが、ジェフ・ベゾス)。しかし、それまでは、プログラマーになることを選択した場合、教育に確実な終わりはありません。仕事があっても、学ぶのをやめないでください。プログラミングの世界では物事は急速に変化します。

反対に、コーディングの方法をまだ学んでいるときは、いくつかの事実をそのまま受け入れるようにしてください。背景が「重すぎる」可能性があるため、すべての主題を掘り下げないでください。

完璧なトレーニングプログラムを作成する

ステップバイステップで目的を達成する方が簡単です。今、あなたがよくある間違いを知っているとき、あなたはそれらを避けることができます。Javaを学ぶために実行できる5つのステップは次のとおりです。

  1. 目標を設定し、言語を選択します。

Javaではほとんど何でもできます。アプリケーションサーバー、デスクトップ、モバイルアプリケーション、エンタープライズアプリケーションを構築し、単体テストを実行できます。しかしもちろん、プロになるために知っておく必要があるのはプログラミング言語だけではありません。特定の活動領域について考えてみてください。

今日のトレンドは、クラウドベースのアプリケーションの構築(クラウドコンピューティングの基本とクラウド開発のための特定のツールも学ぶ必要があります)、モノのインターネットの操作、ビッグデータ分析の実行、ゲームの作成などです。

2.教育計画を作成します。

Javaプログラミングをあなたの職業にする準備はできていますか?次に、少なくとも2〜3時間(平日)から5時間(週末)を毎日の勉強に費やします。この場合、ジュニア開発者のポジションの準備に3〜6か月かかる可能性があります。

一般に、学習プロセスはいくつかの段階に分けられます。

  • Oracle WebサイトからのJDK(Java Development Kit)のインストールおよびJavaランタイム環境(IntelliJ IDEA、Eclipse、またはNetBeans)のインストール。
  • Java構文の学習;
  • Javaコアの学習;
  • Javaコレクションの学習;
  • 人気のあるライブラリとフレームワークを学ぶ。
  • 頻繁に使用されるAPI(たとえば、サーブレット、JSP、JDBC、JUnit)の調査。
  • Gitをマスターする;
  • 等々。

あなたの計画に従い、理論と実践のバランスを保つようにしてください。プログラミングは、毎日トレーニングが必要なスキルです。特定の科目の勉強を終えたら、いくつかのコーディングタスクを続けます(難易度に応じて3から10)。

よく知られているパレートの法則(80/20ルール)をJava学習に簡単に調整できます。「20」は研究を表し、「80」は実践を表します。これは誇張ではありません。コーディングスキルを習得して開発したことを覚えるには、読むよりも4倍多くのコーディングが必要になります。残念ながら、一度にコードを書かないと、翌日に読んだものがすべて忘れられてしまいます。幸いなことに、適切な情報源があれば、独自のトレーニングプログラムを考案する必要はありません。

3.適切なツールを選択し、プログラミングコミュニティに参加します。

正直に言うと、完璧なJavaコースは存在しません。いくつかはあなたに深い基本的な知識を与えるでしょう、いくつかはかなりの練習を提供するでしょう。教育、コミュニケーション、および実践のためのいくつかのプラットフォームを選択してください。理論のわかりやすい説明と実際のコーディングを組み合わせたオンラインコースを1つ選択してください。

コミュニティに参加して、Javaでのコーディングの側面について質問したり、考えを共有したり、志を同じくする人々を見つけたりすることができます。Java開発者向けのトップコミュニティは以下のとおりです。

Javaの学習に複数のソースを使用する

あなたはあなたの目標を達成するためにたくさんのツールを必要とするでしょう。これがあなたが成功するための「ツール」のセットです。

  1. 厳密な練習:CodeAcademy

これはおそらく、多くの言語を学ぶための最も有名なオンラインプラットフォームの1つです。もちろん、Java学習者向けのセクションもあります。ここでは、最初のレッスンからコーディングを開始します。特定のタスクが難しいと思われる場合に取得できる非常に便利なヒントがあります(これは初心者の場合は正常です)。ロジックは単純です。タスクを読み取り、コードを記述して実行し、結果として何が起こるかを確認してから、次のステップに進みます。クリーンシートからコードを書き始めるまで、タスクは徐々に複雑になります。FAQセクションは非常に便利で、他の学生と各タスクについて話し合うオプションがあります。

このコースは、Javaを学習するための優れた補完ツールになります。前に述べたように、Javaプログラミングをマスターするためにコーディングする必要があります。

2.最初から再生してコーディングする:CodeGym.cc

これらは、ゲーミフィケーションという特別な機能を備えたJava学習者向けのオンラインコースです。今日、オンラインコースでは、ゲーム化された要素を採用するのが一般的です。ゲーム化された要素は、即座のモチベーション、絶え間ない達成感をもたらし、目標を達成しやすくするためです。

CodeGym'sでは、宇宙旅行、ロボット、その他のクールなものを備えた未来の宇宙のレベル0から始めます。あなたの目的は、キャラクター、つまりロボットをレベルアップするための4つの教育クエストに合格することです。各クエストには10​​のレベルが含まれ、各レベルには銀河船の乗組員が教える最大10〜12のレッスンがあります。レッスンは、最小限の理論と一連のタスクで構成され、コードを改善するための即時検証とヒントが含まれます。コーディングを最初から開始し、非常に単純なタスクを解決してから、はるかに複雑で大規模なコーディングプロジェクトの準備が整います。

ストーリー全体では、特定の主題やタスクにとらわれず、前に進み、後で「ツイスター」に戻ることができます。全体として、コースには印象的な1200以上のタスクがあります。少なくとも300〜500時間のコーディングで変換される量。

3.チャレンジプログラマー:Codewars

これは、たくさんの練習ができるもう1つのオンラインプラットフォームです。プログラミングのバックグラウンドが少なくとも少ない学習者には適していますが。Codewarsは、カタをトレーニングすることにより、特定の言語でスキルを磨くことができます。

ブラウザでコードを記述し、テストケースを使用して段階的に確認できます。また、ソリューションを他のソリューションと比較して、知識を広げ、ベストプラクティスについて話し合うこともできます。各カタにはランクがあり、各カタは他のプログラマーにとっての挑戦です。より困難なタスクを解決すると、コーディングスキルを向上させるためのより複雑な課題が発生する可能性があります。このプラットフォームが他のプラットフォームと異なるのは、グループで勉強して練習できることです。

4.「プロ」レベルの講義を聞く:EdX

EdXは、ハーバード大学とMITによって設立された教育プラットフォームです。これは、Javaプログラミングや関連する多くの主題を含む、多くの研究分野をカバーしています。大学が提供する検証済みの入門コースと証明書プログラムがたくさんあります。

各コースには定義された時間枠があり、テキストのトランスクリプトを含むビデオ講義が含まれています。前のレッスンに戻って資料を修正するのは簡単です。数十の異なるコースがあり、そのうちのいくつかは無料です。しかし、それでも、これは厳密にJava理論を学ぶための情報源です。何時間ものコーディングでこれらのコースを強化してください。

Javaの世界で最新のニュース、レビュー、最新情報に注目し続けたいですか?それは正しいことです。Javaは絶えず進化し、アップグレードし、新しい機能をもたらしています。毎日読むことができるメディアをいくつか用意してください。最大の1つは次のとおりです。

  • Javaworld(ニュース、便利なチュートリアル、「ハウツー」、およびJavaプログラミングの最新情報を入手するためのその他すべて)。
  • Java Code Geeks(Javaプログラマーとしての仕事を得る方法に関する教育的なチュートリアル、記事、およびヒントでJavaを学ぶ人々のためのリソースセンター);
  • DZone(初心者および経験豊富な開発者向けの記事とガイドが豊富)。
  • Javarevisited(多数のJava学習トピックをカバーする毎日更新されるブログ)。

教育をより効果的にするためにコミュニティに参加するためのアドバイスを覚えていますか?StackOverflowのJavaセクションまたはCoderanchで質問できます。また、Redditには、learnprogramming、java、learnjavaなどの少なくとも3つの大きなコミュニティがあり、Javaの学習とプログラミング全般に関する役立つヒントを見つけることができます。特定のタスクでコードを改善するためのヒントなど、より具体的な情報が必要な場合は、CodeGymの特別なヘルプセクションを試してください。他の学生や「コーディングコーチ」が問題の解決に役立ちます。そして最後に、オラクルには広大なJavaコミュニティがあり、初心者と経験豊富な開発者の両方に開かれています。

プログラマーであるということは、絶え間ない改善と新しい知識の獲得を意味します。最初から独学のコツを身につければ、必ず成功するでしょう。試す準備はできていますか?