課題に向けて準備する

完了

Visual Studio Code を使用して、Contoso Pets 導入 C# コンソール アプリケーションを開発して更新します。 このアプリケーションでは、導入可能なペットに関するサンプル データが既に作成されており、ペットの説明情報を表示できます。 アプリケーションでは、各犬の説明データ内を 1 つの用語で検索できます。 追加のメイン機能では、複数の用語で検索できます。 2 つ目の改善点は、"検索状態" アニメーションに対するものであり、アニメーションでの検索カウントダウンの追加が含まれます。

プロジェクト仕様の概要

既存の Contoso Pets スタート アプリケーションを更新して、複数の用語検索と改善された "検索状態" アニメーション機能を含めます。

ペット特性の複数用語検索のユーザー入力を収集する

  • ユーザーは、コンマで区切られた検索用語を指定する必要がある
  • 検索語句を配列に格納し、用語をアルファベット順に並べ替える

"dogs" を識別する animals 配列ループ内:

  • 検索用語を反復処理して各犬の説明を検索する
  • 用語の一致について、結合された説明を検索する
  • 1 つまたは複数の用語が一致する各犬の説明を出力する

dogs を識別する "search Animals" 配列ループを終了した後:

  • ユーザーが指定した検索用語に対して一致する犬がない場合は、''一致する犬はありません'' というメッセージが出力されます。

"検索状態" に改善を加える

アニメーションを更新する

  • 回転するダイヤルに似せるために searchingIcons 配列を調整する
  • アニメーションで 2 から 0 までの数値カウントダウンを表示するようにアニメーション ループを調整する (2.., 1.., 0..)

スタート コード

チャレンジ プロジェクト モジュールのスタート コード プロジェクトには、次のコード機能を提供する Program.cs ファイルが含まれています。

  • このコードでは、ペット データとメニュー項目の選択を収集して処理するために使用される変数を宣言します

  • このコードでは、ourAnimals 配列を宣言します

  • このコードでは、if-elseif-else コンストラクトを囲む for ループを使用して、サンプル データセットを ourAnimals 配列に設定します

  • このコードでは、ユーザー選択用の次のメイン メニュー オプションが表示されます。

    1. List all of our current pet information
    2. Display all dogs with a specified characteristic
    
    Enter menu item selection or type "Exit" to exit the program
    
  • アプリケーション メニュー コードでは、ユーザーのメニュー項目の選択内容を読み取り、その選択内容をエコーするメッセージを表示します

  • ケース 1: "現在のペット情報をすべて一覧表示する" には、すべての動物 (2 匹の犬と 2 匹の猫) のサンプル データが表示されます

  • ケース 2: "2. 指定した特性を持つすべての犬を表示する" は、新しい機能コードが追加される主な領域です

    • ケース 2 では、スタート コードで犬を識別し、''1 つ'' のユーザー入力用語を検索します
    • 各犬を検索する前に、コンソールに、検索の発生状態をシミュレートする単純な "アニメーション" が表示されます

目標は、既存のコードを更新して、チームが求める主な機能を開発することです。

  • 犬の複数の属性検索を追加する
  • 検索アニメーションを更新する

開発環境として Visual Studio Code を使用し、開発プロセスの各段階でアプリケーションをテストします。

セットアップ

次の手順を使用して、ガイド付きプロジェクトの演習を準備します。

  1. チャレンジ プロジェクトのコード フォルダーを含む zip ファイルをダウンロードします。

  2. ダウンロードしたファイルをローカルで (または、ローカル開発環境を使用していない場合はサンドボックスで) 解凍します

    1. ローカル コンピューターで、ダウンロード フォルダーに移動します
    2. Challenge-Project-variable-data-in-CSharp-main.zip ファイルを右クリックして、[すべて展開] を選択します
    3. 抽出したファイルの場所 (ルート フォルダーの場所) をメモしておきます
  3. Visual Studio Code でルートの GuidedProject フォルダーを開きます

    1. Visual Studio Code をローカルで開きます (またはローカル開発環境を使用していない場合は MS Learn サンドボックスを開き、Visual Studio Code を開く)

    2. Visual Studio Code の [ファイル] メニューで、[フォルダーを開く] を選択します

    3. 展開したファイルを含むフォルダーに移動し、フォルダー構造を展開して、"Challenge-Project-variable-data-in-CSharp-main" という名前のフォルダーを見つけます。

    4. Challenge-Project-variable-data-in-CSharp-main を選択して、[フォルダーの選択] を選択します

      • Visual Studio Code のエクスプローラー ビューには、FinalStarter という名前の 2 つのサブフォルダーが表示されるはずです。

スタート ファイルの確認

  1. Visual Studio Code で、チャレンジ プロジェクトのスタート フォルダーに移動します

  2. Visual Studio Code のメニュー バーで、[ターミナル] > [新しいターミナル] の順に選択します

  3. ターミナル ウィンドウが、Program.cs ファイルを含むスタート フォルダーに対して開くはずです。 ターミナル ウィンドウで「dotnet run」と入力して、ファイルをビルドして実行します。

  4. メニューには 2 つのオプションが表示されるはずです。 次のターミナル例に示すように、「1」と入力します。

    Welcome to the Contoso PetFriends app. Your main menu options are:
      1. List all of our current pet information
      2. Display all dogs with a specified characteristic
    
    Enter your selection number (or type Exit to exit the program)
    1
    

    現在のペットのサンプル データが表示され、その後に Press the Enter key to continue というメッセージが続くはずです

  5. Enter キーを押した後、メニューが再び表示されるはずです。 次の例に示すように、オプション 2 を選びます。

    Welcome to the Contoso PetFriends app. Your main menu options are:
     1. List all of our current pet information
     2. Display all dogs with a specified characteristic
    
    Enter your selection number (or type Exit to exit the program)
    2
    
    Enter one desired dog characteristic to search for
    
    
  6. 検索用語として「large」と入力し、Enter キーを押します。

  7. 次のような "searching" メッセージに注目してください。

    searching our dog Nickname: gus for large ...     
    
  8. メッセージはペットの各検索の前に実行され、最後のピリオド (., .., ...) は ''アニメーション'' で変更されることに注目してください。 見逃した場合は、もう一度検索を実行します。

  9. 検索が終了したら、Enter キーを押してメニューに戻ります。 その後、「exit」と入力し、Enter キーを押してアプリケーションを閉じます。

  10. 少し時間を取って、Project.cs のスタート コードについてよく理解します。

    更新、検索、アニメーションを必要とする領域に焦点を当てます。

    コードには、更新を配置する場所を示すコメントがいくつか残されていることに注目してください。

これで、ガイド付きプロジェクトの演習を始める準備ができました。 がんばってください。