すでにメンバーの場合は

無料会員登録

GitHubアカウントで登録 Pikawakaが許可なくTwitterやFacebookに投稿することはありません。

登録がまだの方はこちらから

Pikawakaにログイン

GitHubアカウントでログイン Pikawakaが許可なくTwitterやFacebookに投稿することはありません。

機能の実装をしよう

この記事で出来るようになること

このカリキュラムではJavaScriptを使ってタスク管理アプリの実装を行います。

トップレベルのコメントの活用

基礎カリキュラムのコード補完機能でコメントを使ってコードの提案をしてもらう方法を学びました。今回は、この方法を用いてJavaScriptのコードを提案してもらいます。

トップレベルのコメントを記述しよう

まず、最初に作成したscript.jsファイルの内容を一度消去し、必要な仕様を具体的にコメントとして記述しましょう。
以下のコードをscript.jsファイルに記述してください。

トップレベルのコメント | script.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
// タスク管理アプリケーションのためのJavaScriptコード

// 1. DOM要素の取得
// - タスク入力フィールド、追加ボタン、タスクリストのDOM要素を取得する。

// 2. タスクの追加機能
// - 新しいタスクを入力フィールドから取得し、タスクリストに追加する。
// - フォーム送信時にページがリロードされないようにする。
// - 空のタスクを追加できないようにバリデーションを行う。

// 3. タスクの完了/未完了の切り替え機能
// - 各タスクに完了チェックボックスを追加する。
// - チェックボックスの状態に応じて、タスクのスタイルを変更する。

// 4. タスクの削除機能
// - 各タスクに削除ボタンを追加し、クリックするとそのタスクをリストから削除する。

// 5. タスクのフィルタリング機能
// - 全てのタスク、完了済みのタスク、未完了のタスクをフィルタリングして表示するボタンを実装する。

このようにトップレベル、つまりファイルの一番最初にコメントを記述することで、自分が望むコードを提案してもらいやすくなります。
それでは、このコメントを元にJavaScriptのコードを作成してもらいます。

JavaScriptのコードを生成に必要なファイルを添付しよう

トップレベルのコメントはscript.jsファイルに記述しているので、これを参照してもらうためにこのファイルを添付してからプロンプトを入力します。また、index.htmlのコードも提案に必要な情報なので、この2つのファイルを添付してから行います。

添付ファイルの確認

トップレベルのコメントを元にして、JavaScriptのコードを生成しよう

2つのファイルが添付されていることが確認できたら、以下のプロンプトを送信し、コードを生成しましょう。

プロンプト:

コメントを元にJavaScriptのコードを作成してください。

JavaScriptのコードが作成されたら、コメントを消去し、コードを反映させましょう。

コードの反映

うまくいかない方はコード例をコピペして使用してください。

コード例をみる
JavaScriptファイルのリンクを作成しよう

※index.htmlにJavaScriptへのリンクが追加されている方は「index.html」にコードを反映し、この作業はスキップしてください

今回はindex.htmlにJavaScriptファイルのリンクが作成されなかったので、作成してもらいます。
以下の画像のようにscript.jsindex.htmlファイルを添付している状態で、プロンプトを入力しましょう。

リンクの作成

プロンプト:

作成したscript.jsファイルをindex.htmlで使えるようにしてください。

作成してもらうことができましたらindex.htmlを開き、ファイルに反映させましょう。

ファイルに反映

うまくいかない方はコード例をコピペして使用してください。

完成コードの確認

@workspaceの使い方

これでJavaScriptのコードが生成され、アプリが完成しました。最後に、コードに問題がないか確認してみます。
コードの確認には、アプリ全体のコードを把握する必要があります。今回であれば、index.htmlstyles.cssscript.jsの3つのファイルです。ファイル添付機能を使用してこれらのファイルを参照することも可能ですが、大規模なアプリでは、すべてのファイルを添付するのは大変です。

このようにアプリ全体のコードを参照した上で、Copilotに質問をするときには@workspaceを使うと便利です。プロンプトの前に@workspaceをつけて質問をすることで、このアプリの場合、copilot_curriculumディレクトリ内にあるすべてのファイルの解析し、提案に必要なファイルを自動で参照し、回答をしてくれます。

参照ファイル

@workspaceを使い、コードの確認をしよう

それではプロンプトの前に@workspaceをつけ、コードの最終確認をしましょう。

プロンプト:

@workspace これで問題なく仕様通り動きますか?

@workspaceをつけて質問

するとファイルを添付していませんでしたが、以下の画像のように提案に必要なファイルを解析し、自動で添付してから回答をしているのが確認できます。

自動で添付

コードの確認ができたので動作の最終確認をしてみます。

無事、仕様通りアプリが動いているのが確認できました。
これでアプリの完成です。

問題が見つかった場合は、提案された内容に従ってコードを修正し、動作確認をしましょう。問題がなければ、仕様通りにアプリが動作するか最終確認を行いましょう。

アプリがうまく動かない場合は、以下の完成コードに差し替え、正常に動作することを確認した後、次のカリキュラムへ進みましょう。

完成コードの確認

この記事のまとめ

  • トップレベルのコメントを記述することで、提案されるコードの精度が上がります。
  • @workspaceをつけるとアプリ全体のコードを解析し、提案を受けることができます。