CodeGym /Java Blog /ランダム /CodeGym のコーディング タスクはどのようにしてまったくの初心者を Java プロに変えますか?
John Squirrels
レベル 41
San Francisco

CodeGym のコーディング タスクはどのようにしてまったくの初心者を Java プロに変えますか?

ランダム グループに公開済み
おそらくもうお分かりかと思いますが、Java の学習に関する CodeGym の哲学は、「実践が何よりも優先」に要約できます。私たちのコースの主な焦点は、実際の仕事に適用できるコーディング スキルを教えることです。そのため、CodeGym には非常に多くのタスクがあります。CodeGym のコースには 1,200 を超えるさまざまなタスクがあり、Java 開発者として (たとえまだジュニアであっても) 自信を持てる十分以上の実践的な経験が得られることは間違いありません。 CodeGym のコーディング タスクはどのようにしてまったくの初心者を Java プロに変えますか?  - 1

CodeGym ではどのようなタスクが提供されますか?

そこで、CodeGym のタスクについて、どのような種類のタスクがあるのか​​、相違点は何なのか、そして最も重要なことに、これらのタスクがプロの Java プログラマーになるためにどのように役立つのかについて少し説明したいと思います。思い出を新たにしておくと、CodeGym の全コースは 4 つのクエストに分かれており、各クエストには 10 のレベルがあり、1 つずつ完了する必要があります。各レベルには、次のレベルのロックを解除するために解決する必要のあるレッスンとタスクが含まれています (タスクを解決することで獲得できる「ダークマター」を使用します)。このコース構造は、各生徒がすべての重要なスキルを実際に学び習得するのに十分な練習を確実に行えるように設計されており、同時に途中で諦めないように高いモチベーションを維持し、脳が一度休憩できるようにするために設計されています。疲れ果てないようにしながら。

学んだこと(または学んでいないこと)に基づくタスクの種類

1200を超えるタスクは膨大です。CodeGym コースのすべてのタスクが同じだと、非常に単調になり、それほど楽しくなくなります。ここでは、コースの進行中に解決する必要があるタスクの種類を、解決するために必要な知識に基づいて分類します。

  • 前のレッスンの理論を強化するタスク。

これは非常にシンプルです。新しい理論的知識を学んだ後は、学んだことをタスクで強化する必要があり、これらのタスクはまさに​​それを行います。コースのこの部分は非常に伝統的なものです。最初にいくつかのレッスンを学び、次にこの特定の知識部分に基づいた実践的なタスクが続きます。

  • 以前に学んだことを定着させるためのタスク。

もちろん、以前のレベルで学んだ内容に基づいて実践的なタスクを行う必要もあります。これは、CodeGym で表示される 2 番目のタイプのタスクです。コースを完了するまでに数か月、場合によっては数年かかる人もいます。これらのタスクの使命は、理論を忘れず、途中で重要なスキルや知識の一部を失わないようにすることです。コース全体を通して、このようなタスクがたくさん表示されます。問題を解決するのにうんざりして、文句を言いたくなるかもしれませんが、覚えておいてください。問題には理由があるということです。私たち人間は、脳がそれがどのように行われたかを一度限り(現実的には少なくとも十分な期間)記憶するために、すべてのことを何度も(あなたが思っている以上に)何度も繰り返す必要があります。

  • 課題に挑戦します。

この種のタスクは CodeGym に特有のものなので、ここがさらに興味深いところです。これらのタスクは、まだ学ぶ機会のない理論に基づいています (通常、次の 3 つのレベルのいずれかになります)。つまり、基本的には、まだ誰もその基礎となる理論を教えていないために、解決できない課題に直面していることになります。ナンセンスですか?いいえ、CodeGym に固有の優れた機能 (多くの機能のうちの 1 つ) です。このようなタスクを解決したい場合は、グーグル検索を開始するだけで済みます。つまり、必要な答えや情報を Web で検索することは、プログラマーにとって非常に重要なスキルであり、コードの作成やバグの検索などの他の重要なスキルと同様に、このスキルも習得していただきたいと考えています。しかし、実験する気はなく、従来の学習アプローチにこだわりたいという人にも、方法はあります。グーグル検索が好きではない場合は、これらの「課題タスク」を脇に置いておいて、CodeGym で必要な理論に到達したら、いつでもそれらのタスクに戻ることができます。学習へのアプローチを選択する際、私たちは、適切な場合はいつでも、いわば選択を支持します。

難易度やその他のパラメータに基づいたタスクの種類

CodeGym では、種類、サイズ (完了までの時間)、難易度に基づいてタスクを分割することもできます。タスクのこれら 3 つのパラメータは、コース全体を通じて大きく変化します。CodeGym のタスクはすべてシンプルで、イラストと気楽なストーリーテリング アプローチに基づいた子供向けのものであると考えて間違いないでください。実際、CG コースのタスクの大部分は大人にとっても非常に難しいもので、子供の遊びのように感じるのは最初の数レベルだけです。CodeGym コースを完了してプログラマーになることを決めた場合に、このコースで見つけられるタスクの種類を以下に示します。

  • コード入力。

コード入力は、まったくの初心者向けの最も簡単なタイプのタスクです。意欲的なプログラマーは、コードとその記述方法をただ感じることから始める必要があります。したがって、これらのタスクでは、指定されたコードの例をコピーするだけで済みます。

  • コードを分析してバグを発見します。

もう 1 つの良い学習方法は、他の人のコードを研究して、バグの原因となっている間違いがどこにあるのかを理解することです。他人のコード内のエラーを見つけることは、ソフトウェア開発者にとって非常に重要で応用性の高いスキルです。

  • タスクの要件を満たす独自のコードを作成します。

ある時点で、独自のコードを書き始めることになります。このタイプのタスクを使用すると、コードが満たさなければならない一連の要件が得られます。もちろん、要件は常に異なり、実際の Java プログラマーが実際の仕事で定期的に直面するであろうタスクを実行する方法を教えるように設計されています。

  • 非常に難しいボーナスタスク。

通常のタスクをクリアしてしまう人のために、特別に難しいボーナスタスクも用意しています。これらはかなりの独学が必要であり、アルゴリズム的思考スキルを開発するように設計されているため、これらを解読して自分がどれほどタフであるかを示してください。

  • ミニプロジェクト。

これらは CodeGym タスクの主要なタスクです。つまり、かなり複雑なプログラムを単独で (もちろん私たちの助けなしではありませんが) 開発する必要があるプロジェクトです。ただし、ミニプロジェクトは通常、小さなサブタスクに分割されているため、途中で行き詰ることはありませんので、心配する必要はありません。これらは、プログラム開発の一般的なプロセスとその構成手順を学習するために作成されています。このタイプの各タスクが完了すると、単純なビデオ ゲームやオンライン チャット ルームなど、自分の手で書かれた新しいプログラムが完成します。これは、CodeGym の大きな利点です。なぜなら、コーディング初心者が最初の複雑なプログラムを最初から作成できるようになるまでには、通常 (Java を他の方法で学習する人にとっては) 何年もかかるからです。

  • 自分にちょっとした休憩を与えるための動画。

最後に、ビデオの視聴も CodeGym コースの一部です。コードの読み書きを時々休むのは悪くないからです。ビデオを見ることは、消費しやすい別の種類のコンテンツに切り替えることで、脳にリラックスする時間を与える素晴らしい方法です。また、コーディングの新しい学習習慣を強化するのにも役立ちます。オフの時間でリラックスしているときでも、テレビ番組やお気に入りの YouTube ブロガーの代わりにプログラミング関連のコンテンツを消費していることになります。これは、あなたが真剣に取り組んでいることを脳に伝えるもう 1 つの方法です。

まとめ

ご覧のとおり、CodeGym は、Java コースが単調で繰り返しにならないように文字通り可能な限りのあらゆることを行っています。これは、他のオンライン Java コース (すべてではないにしても) の大多数の最大の弱点の 1 つです。しかし、このようなさまざまなタスクは、単に皆さんが勉強しやすいように私たちが作成したものではありません。また、これは、Java をゼロから学習し始めたユーザーが、Java プログラマーとして実際の仕事で直面することを実際に準備する唯一の方法でもあります。生徒たちと彼らの将来を気にかけています。これが CodeGym を本当に際立たせるものであると私たちは考えています。同意しますか?以下のコメントセクションでご意見をお聞かせください。
コメント
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION