コーディング演習作成のための講師ガイド
コーディング演習を使用して、対象を絞った短いコーディング演習をUdemyコースに追加しましょう。
学習者は、学んだことを気軽に実践、評価、応用する方法を求めています。コーディング演習をコースに追加することで、便利でアクティブな学習体験を提供できます。
コーディング演習に関するよくある質問
コーディング演習とは何ですか?
📖 コーディング演習は、学習者が特定のコーディング言語またはフレームワークを練習するための演習です。学習者は、自動採点により、コースで学ぶ概念の理解度をチェックできます。
どのように開始すればよいですか?
コースのカリキュラムページに移動します。「カリキュラム項目を追加」ボタンをクリックしてから、コーディング演習をクリックします。詳細については、こちらのヘルプセンター記事をご覧ください。
いつコーディング演習をコースに追加すべきですか?
コース内のすべての重要なコーディング関連のトピックとスキルについて、コーディング演習を提供する必要があります。演習を追加する重要な場面は次のとおりです。
- コースレクチャーに、コードの記述に関連する学習目標が少なくとも1つある場合
- レクチャーで学ぶ概念がコーディング演習によって評価できる場合
コーディング演習をコースにいくつ追加すべきですか?
1つのコースに追加できるコーディング演習の数に制限はありませんが、コース全体にコーディング演習を分散させることをおすすめします。コース内でコーディング演習を構成する方法に関するいくつかのアイデアを次に示します。
- セクションごとに少なくとも1つのコーディング演習を含めます。
- 同じ学習目標に対して複数の演習を提供しましょう。ただし、同じ学習目標に対して複数の演習を提供する場合を除き、コーディング演習を大量に用意することは控えましょう。
- まずセクションに演習を提供し、学習者に挑戦してもらい、その内容を説明するレクチャーに学習者を誘導しましょう。その後、もう一度挑戦してもらうために新しいコンテキストで別のコーディング演習を提供しましょう。これにより、学習者は、そのセクションのレクチャーの内容を学ぶべき理由を理解するようになります。
作成したコーディング演習で収益を得ることはできますか?
コースがUdemyの定額制プランの一部である場合、学習者がコーディング演習に費やした時間はエンゲージメント収益に追加されます。
どのコーディング演習言語が利用できますか?
現在、次の言語でコーディング演習を作成できます: C#、C# 11、C++ 20、CSV処理(Pythonを使用)、Java 17(JUnit5を使用)、Java 11、Java 9、Kotlin、PHP 7、PHP 5、Python 3.10、Python 3.8、Python 3.5、R 3.6、React 16、React 18、Ruby、SciPy 1.4(NumPy、Pandas、SymPy)、SciKit Learn 0.23、SQL、SQLite 3、Swift 5、Swift 3、ウェブ開発(HTML、CSS、Javascript、Typescript)。
コーディング演習の作成方法
次の手順に従って、コーディング演習を作成(または更新)しましょう。目的と結果の計画、解答の作成、演習の構成、学習者を支援するためのヒントとテストケースの追加。
コーディング演習を計画する
学習目標を定義して、コーディング演習の作成を開始しましょう。次の質問に答えることから始めます。
- このコーディング演習を完了すると、学習者は何ができるようになりますか?
- この演習により、学習者はどのようなスキルを練習することができますか?また、どのスキルを評価できますか?
そこから、上記の目標とする学習成果に合わせたコーディング演習問題を考え出します。この問題は、エンジニア/技術者が行う本格的なタスクの短くまとめたものにする必要があります。
💡 ヒント!コーディング演習は短くしましょう。
-
- コーディング演習の所要時間は、平均的な学習者が最大15分で完了できるのが理想的です。これはマイクロラーニングで知られる時間枠であり、学びやすい演習時間になります。
最初に解答を作成する
コーディング演習を設計するときは、最後から逆算して計画することをおすすめします。そのため、コーディング演習の問題を決定したら、理想的な解答をすべて作成し、評価と解答ファイルを含めます。
📖 解答ファイルは、提供された問題定義の解答として機能するファイルです。学習者は、与えられた問題定義に対して同様の解答(必ずしも同じである必要はありません)ファイルを作成することが期待されます。これにより、提供された評価ファイル(ユニットテスト)が正しいことを検証します。
📖 評価ファイルは、学習者の解答により実際に問題が解決するかどうかを確認するユニットテストファイルです。解答を検証するには、アサーションステートメントを使用する必要があります。
新しいコーディング演習を作成するには、システムで検証できる解答および評価ファイルを提供する必要があります。留意すべき点は、解答ファイルは評価ファイル自体を検証するために書き、評価ファイルは学習者の解答が正しいかどうかを検証するために書くものであるということです。
💡ヒント!AIで生成
英語とスペイン語のPython、C++、Java、ウェブ開発(HTML、CSS、Javascript、Typescript)の演習では、サードパーティの人工知能を活用して演習ファイルを作成できるようになりました。
-
コースのカリキュラムページに移動し、Python、C++、Java、またはウェブ開発(HTML、CSS、Javascript、Typescript)の新しいコーディング演習の作成を開始します。
-
「演習を計画する」タブで演習のタイトルと学習目標を追加した後、2つ目のタブ「解答を作成する」に移動します。
-
新しい「AIで生成」ボタンをクリックし、問題の指示を追加します。
-
問題の概要を説明し、「AIで生成」ボタンをクリックすると、すぐに演習用に生成された解答ファイルと評価ファイルが表示されます。
-
慎重に確認して変更を加え、演習を完璧に仕上げてから、「学習者をガイドする」セクションに進みます。
演習の枠組みを作る
解答を作成したら、次のステップは、この演習の目的と問題を学習者に明確に伝えることです。次のステップをおすすめします。
- このコーディング演習を完了すると学習者ができるようになること、そして練習できるスキルを説明しましょう。この説明は、計画段階で定義しておく必要があります。
- 演習の「問題の記述」について、完成されたわかりやすい指示を提供します。学習者が演習に取り組むのに十分な情報を提供しながら、学習者にスキルを練習(またはその作業を行う能力を実践)させましょう。
- スターターファイルを作成します。
📖スターターファイルは、学習者が目標とするスキルに集中できるように演習を構成するうえで最初に必要なコードです。
💡ヒント!コーディング演習には、明確で一貫した命名規則を作ってください。
-
- すべてのコーディング演習に見つけやすい一貫した命名規則を使用しましょう。たとえば、すべてのコーディング演習の名前を「コーディング演習」で始めることで、学習者はコースの中でコーディング演習を簡単に見つけることができます。
📝 メモ: 学習者とのあらゆるコミュニケーションと同様に、指示には、正確で、文法的に正しく、偏見のない言葉を使用してください。
ガイドで強化する
テストケース
📖 ユニットテストは、ユニット(システム内で論理的に分離できる最小のコード)をテストする方法です。ほとんどのプログラミング言語では、関数、サブルーチン、メソッド、またはプロパティがそれに該当します。
学習者が「解答を確認」をクリックしたときにフィードバックを受け取ることができるように、コーディング演習の解答にユニットテストを提供する必要があります。このフィードバックは、学習者が間違いを見つけ、正解時には重要な検証を行うのに役立ちます。
テストケースを作成するときは、次のベストプラクティスをおすすめします。
- 具体的にする。ユニットテストには論理的なアサーションを1つだけ含めます。つまり、テストされたコードの出力を1つだけチェックします。
- 包括的にする。ユニットテストでは、あらゆる外部サービスや状況を模擬テストする必要があります。つまり、必要なすべての動作をテストします。 ユニットテストでは、あまり発生しないケースも取り扱い、優れたテスト対象範囲を準備しましょう。
- 明確さが鍵。各テストの名前は意味のあるものにする必要があります。これにより、学習者がテストリストを表示したときに、簡単にテストを選択して移動できるようになります。
関連レクチャー
コースにおすすめのレクチャーを追加して、学習者が練習しているスキルについてより多くの情報を得られるようにします。
ヒント
📖 ヒントは、演習で行き詰まった学習者を正解に導きます。
テストケースのタイトルがすでにガイダンスとして機能していますが、「ヒント」セクションでは、手順やユニットテストでは提供されていない追加情報にもっと焦点を当てる必要があります。
ヒントを作成するときは、次のベストプラクティスをおすすめします。
- ヒントは、学習者が概念を思い出すのを促すものにします。
- ヒントは答えの一部のみを教え、すべてを教えるものではありません。
- 複数のヒントを提供する場合は、学習者が自分で挑戦するのを促すために、段階的(つまり、小さなヒントから大きなヒントへ)に行う必要があります。
📝 メモ: ヒントは現在、学習者が演習を行う際にいつでも表示できるようになっているため、「ヒント」スペースは、演習の正解を教えずに、学習者が演習を完了するのをサポートする追加情報を提供するためにのみ使用してください。
解答の説明
📖 解答の説明は、コーディング演習の解答をさらに明確に説明するものです。
解答の説明は、学習者が自分のアプローチで問題を検証したり理解したりするのに役立ちます。学習者がコーディング演習を試みて、その解答がなぜ正しいのか理解できない場合のために、ここで説明を行います。さらに、演習問題に正解しても、その理由がわからない学習者にとっては、自分の解答を検証して概念をしっかりと理解し、将来の応用に活かせるようにするのに役立ちます。
解答の説明を作成するときは、次のベストプラクティスをおすすめします。
- このセクションには、コードスニペットを使用した段階的な手順を含めることができます。
- 必ずステップの「理由」を含めましょう。これは、学習者が自分の解答を振り返ったり、もう一度やり直した場合に何を変える必要があるかを考えたりするのに役立ちます。
コーディング演習に追加された改善の詳細については、こちらのTeaching Centerの記事をご覧ください。さらに、コーディング演習ツールの使用方法についてさらに質問がある場合は、こちらのヘルプセンターの記事をご覧ください。