Javaをゼロから独学する際の間違い
-
実践量が不十分:プログラマがまず理解すべきは理論ではありません。まず第一に、プログラマーはプログラムを作成します。そのようなスペシャリストのトレーニングは実践に基づいている必要があり、少なくとも彼の頭には賭け金がかかっています。「何が何であるかを理解してからタスクを実行します」 - これはプログラミングの話ではありません。
-
初心者は経験不足のため、重要な情報とそうでない情報を区別することができず、詳細に迷ったり、インターネットの賢い人が「ソート アルゴリズムのプログラム方法を知らなければ、あなたはプログラマーにはなれませんよ。」それから彼はそれらの中に迷い込んでしまいます...それだけです。
-
体系的なアプローチの欠如- あらゆる種類の情報源から情報を取得しようとする試み、終わりのない堂々巡り。
-
プログラミングを開始する前に、すぐにすべてを完全に理解しようとします。
-
形式的なアプローチ:問題を深く掘り下げず、何度も自分で問題を解決しようとせず、インターネットで他の人の解決策を探します。実際、「チート」は役立つ場合があり、プログラミングの基礎を学ぶには、他の人のコードを解析することがよく含まれます。しかし、それは分析であり、まさに人が自分で問題に対していくつかのアプローチを行った後のものです。
-
モチベーションの喪失。これだけが原因ではなく、上記すべての結果です。Java を自分でゼロから学習するには、高度な組織化と一貫性が必要です。そしてもちろん、たくさんの練習も必要です。これが失敗すると、その人はすべてが失われた、時間を無駄にした、何も起こらないと判断します。だから努力しても無駄だ。
プログラミングの学習を進めるにはどうすればよいですか?
-
よく調査され、よく構成され、最も必要な情報だけが詰まっていて、退屈しない主要な情報源を見つけてください (これは重要です!)。このソースに従ってください。
-
追加の情報源を見つけて、必要に応じて使用できるようになります。スプレーしないでください。
-
常にプログラミングを行う: 多くの実践的なタスクを解決し、解決策が正しいかどうかを確認できるようにする。
-
定期的に勉強し、長期間勉強を放棄しないでください。
-
一度にすべてをカバーしようとせず、徐々に複雑さを増していくサイクルで進めてください。
-
他の人のコードを読む方法を学びましょう。
-
インターネット上で質問に対する答えを見つける方法を学びますが、インターネットを悪用しないでください。
-
将来の幸福を仲間とコミュニケーションする: 近くに少なくとも 1 人の学生プログラマーがいることが望ましい; コミュニケーションのないオンライン学習は効果が大幅に低下します。
-
より経験豊富なプログラマーとコミュニケーションをとる。
-
諦めないために!
JavaRush - 非標準的な学習アプローチ
-
JavaRush は、Java 言語に関するよく構成されたコースです。これは、数多くの実践的なタスクが散りばめられた、楽しい対話形式で提示される短い講義で構成されています。RPG ゲームと同じように、レベル 0 からレベル 40 まで「レベルアップ」する必要があるキャラクターに代わってコースを完了します。問題を解くとポイントを獲得し、次の講義を開くために使用できます。
しかし実際には、アップグレードされるのはキャラクターではなく、プログラミング能力です。このコースには、Java Core (将来の Java ジュニア開発者が徹底的に知っておくべき Java 言語の中核) に関する必要な情報がすべて含まれており、その他の情報も含まれています。この時点で、上のリストの最初の項目の横にあるボックスをチェックできます。
-
JavaRush には、コースの講師が特定の書籍、ビデオ、その他の情報源を推奨する特別講義があります。さらに、上級学生だけでなくコース管理者も、複雑なトピックを理解しやすくすることを目的としたハウツー記事を作成することがよくあります。これでポイント 2 がカバーされます。
-
プログラマーになるには、プログラミングをする必要があります。このルールは最も単純であり、非常に論理的に聞こえます。しかし、プログラマーになることを学ぶには、コードを書く練習がすべてであり、その後に他のすべてが必要であるということは、驚くほど忘れられがちです。
JavaRush の作成者はずっと前にこのことに気づいていたため、実践がコースの中心となっています。1200 個のタスクが含まれています。これは、ソフトウェア開発者になろうとしているすべての人にとって非常に欠けている非常に貴重なプログラミング経験です。
しかし、課題自体は十分ではなく、依然として解決する必要があり、その解決策が正しいことを理解する必要があります。
この目的のために、JavaRush はソリューションを即座に自動検証するシステムを実装しました。問題を解決し、ボタンを 1 つ押すと、すぐに結果が得られます (問題が正しく解決されたか間違っているかに関係なく)。さらに、スマート レコメンデーション システムは、どこで間違いを犯したかを正確に教えてくれます (もちろん、間違いを犯した場合)。
また、タスクの条件に加えて、そのための要件も受け取ります。要件は、将来のプログラムが正確に何を行うべきかを段階的に概説する、より詳細な条件です。
-
JavaRush の実践的なタスク
- 一部のタスクは、その前の講義の理論的内容をカバーします。
- 別の部分は、以前に取り上げた理論 (以前のレベル) を復習するように設計されています。
- 3 つ目の課題は「未来からの課題」で、次の 1 つ、2 つ、または 3 つのレベルの資料に基づいて与えられます。はい、はい、あなたはそうは思いませんでした。これは意図的なものです。今すぐ問題を解決したいのですが、知識が不足していませんか? ググってみてください!これはプログラマーにとって非常に役立つスキルです。一貫して進めたい場合は、タスクを脇に置いて、数レベル経って必要な理論に到達したら、タスクに戻ってください。この時点で、ポイント 5 と 7 の反対側のボックスをチェックできます。
- ボーナスタスク。これらのタスクは、独立した学習やアルゴリズム的思考の発展のために複雑さが増します。あと 1 回でポイント 7 です。
- ミニプロジェクト。これらのタスクはいくつかのサブタスクに分割されており、段階的に解決すると比較的複雑で大規模なプログラムが作成されます。例えば「倉庫番」というゲームやオンラインチャット。このようなタスクはコースのほぼ中央に表示されます。
- コードの入力 - 初心者向けのタスク。将来のプログラマーは、コードを実際に触って感触を掴むだけで十分な場合があります。これを行うには、サンプルから「コピー」するだけです。
- 他の人のコードを解析してエラーを見つける。まあ、それはわかりますね。こういった課題もありますが、ここでは6番の横にプラスを付けさせていただきます。
- 動画。場合によっては、別のアクティビティに切り替えると便利です。JavaRush では、IT スペシャリストに関するビデオを視聴することがそのようなアクティビティです。
-
問題解決のお手伝い
上で述べたように、オンラインでコーディングを学ぶことは、海の真ん中で一人でいかだに乗って航海するような気分になる必要はありません。コミュニケーションが必要です。この目的のために、JavaRush にはまず「ヘルプ」セクションがあります。コースのタスクで非常に長い間行き詰まっている場合、または複雑なトピックを理解できない場合は、特別なセクションで質問してください。学生、開発者、リソース管理者のいずれかが間違いなくあなたを助けてくれます。さらに、コース上で他の学生とコミュニケーションできる「グループ」セクションもあります。また、気持ちが強くなったときは、誰かの勉強を手伝うために「ヘルプ」セクションに行くと非常に役立ちます。ここでは、他の人のコードを理解する必要があります。点 8 と点 9 の反対側にチェックを入れ、点 6 の反対側にもう 1 つのチェックを入れます。
-
JavaRush コースにはモチベーションを高める講義が多数含まれており、すでにプログラマーとして働いている卒業生から成功談が寄せられることもあります。これらの記事のコメントから判断すると、彼らは人々に勉強を諦めないようにという動機を与えています。ここで、項目 10 の隣のボックスにチェックを入れることができます。
GO TO FULL VERSION