名前付け規則
全般的な名前付け規則
このセクションでは、「キャメル ケース」と「パスカル ケース」の命名規則について説明します。 これらの用語をすでに知っている場合は、スキップして進んでください。
キャメル ケース
コントロールと変数にはキャメル ケースを使用する必要があります。 キャメル ケースは小文字の接頭辞で始まり、オブジェクト名や変数名からすべてのスペースを取り除き、最初の単語以降の各単語の最初の文字を大文字にします。 たとえば、テキスト入力コントロールの名前を txtUserEmailAddress とします。
パスカル ケース
データソースにはパスカル ケースを使用する必要があります。 パスカルケースは「アッパーキャメルケース」と呼ばれることもあります。キャメルケースと同様に、すべてのスペースを削除し、単語の最初の文字を大文字にします。 ただし、キャメルケースとは異なり、パスカルケースでも最初の単語は大文字になります。 たとえば、PowerApps の一般的なデータ ソースは Microsoft Office 365 ユーザー コネクターで、コードでは Office365Users という名前になっています。
スクリーン名
複雑なアプリを Power Apps Studio でナビゲートしやすくするために、画面名は画面の目的を反映することを推奨します。
あまり知られていないのは、スクリーン名はスクリーン リーダーによって読み上げられることです。これは、視覚アクセシビリティを必要とするユーザーにとって必要です。 したがって、画面に名前を付ける際はわかりやすい言葉を使い、名前にはスペースを含めず、略語は使わないことが必須となります。 また、名前がアナウンスされたときに文脈が理解できるように、名前の最後に「Screen」という単語を付けることをお勧めします。
次によい例をいくつか示します:
-
Home_ScreenまたはHome Screen -
Search_ScreenまたはSearch Screen
これらのスクリーンネームの例は理解しやすいものではありません:
HomeLoaderScreenEmpProfDetailsThrive Help
コントロール名
キャンバス上のすべてのコントロール名にはキャメル ケースを使用する必要があります。 3 文字のタイプ記述子で始まり、その後に制御の目的が続きます。 このアプローチは、コントロールの種類を識別する際に役立ち、数式の構築と検索が容易になります。 たとえば、lblUserName コントロールがラベルであることを示します。
次の表は、一般的なコントロールの略語を示しています。
| コントロール名 | 略称 |
|---|---|
| バッジ | bdg |
| Button | btn |
| カメラ コントロール | cam |
| Canvas | can |
| Card | crd |
| グラフ | chr |
| CheckBox | chk |
| コレクション | col |
| コンボ ボックス | cmb |
| コンポーネント | cmp |
| Container | con |
| 日付 | dte |
| ドロップ ダウン | drp |
| Form | frm |
| ギャラリー | gal |
| Group | grp |
| ヘッダー | hdr |
| Html テキスト | htm |
| Icon | ico |
| Image | img |
| 情報ボタン | 情報 |
| ラべル | lbl |
| Link | lnk |
| リスト ボックス | lst |
| マイク | マイク |
| Microsoft Stream | str |
| ページセクションの形状 | 秒 |
| ペン入力 | ペン |
| Power BI タイル | pbi |
| 進行状況バー | pbar |
| レイティング | rtg |
| リッチ テキスト エディター | rte |
| 図形 (長方形、円など) | shp |
| Slider | sld |
| タブ リスト | tbl |
| テーブル | tbl |
| テキスト入力 | txt |
| Timer | tmr |
| トグル | tgl |
| Video | vid |
コントロールとそのプロパティの詳細なリストについては、コントロール リファレンス を参照ください。
注意
コントロール名はアプリケーション全体で一意である必要があります。 コントロールが複数の画面で再利用される場合は、短い画面名に接尾辞を付ける必要があります。 たとえば、galBottomNavMenuHS、「HS」は「ホーム画面」を意味します。このアプローチにより、画面をまたいで数式のコントロールを簡単に参照できます。
次に良くない例をいくつか示します:
zipcodeNext
コントロールに一貫した名前を付けると、アプリのナビゲーション ビューが整理され、コードも整理されます。
データソース名
アプリケーションにデータソースを追加すると、Power Apps アプリでは名前を変更できません。 名前は、ソース コネクタまたは接続から派生したデータ エンティティから継承されます。
次に例をいくつか示します。
- ソース コネクタから継承された名前: Office 365 ユーザー コネクターは、コード内で Office365Users という名前になっています。
-
接続から派生したデータ エンティティ: Microsoft SharePoint のリスト
Employeesが SharePoint コネクタから返されます。 したがって、コード内の データ ソース の名前は Employees になります。 同じ Power Apps アプリは、同じ SharePoint コネクターを使用してContractorsという SharePoint リストにアクセスすることもできます。 この場合、コード内の データ ソース の名前はContractorsです。
コネクタと接続の詳細については、キャンバス アプリ コネクタの概要 Power Appsを参照してください。
標準的なアクション コネクタ
LinkedIn などの機能を公開する標準アクション コネクタでは、データ ソース の名前とその操作にパスカル形式が使用されます。 たとえば、LinkedIn データ ソース は LinkedIn という名前で、ListCompanies という名前の操作があります。
ClearCollect(
colCompanies,
LinkedIn.ListCompanies()
)
カスタム コネクタ
会社が作成したサービスや基幹業務 API などのカスタム アプリケーション プログラミング インターフェイス (API) に接続するために使用されるカスタム コネクタ。 これらは、環境内の任意の作成者が作成できます。 データ ソース の名前とその操作にはパスカルの形式を使用することをお勧めします。 カスタム コネクタ名と PowerApps での表示方法が異なる可能性があることに注意してください。
MS Auction Item Bid API という名前のカスタム コネクタの例を考えてみましょう。
しかし、このコネクタからコネクションを作成し、PowerApps アプリにデータソースとして追加すると、AuctionItemBidAPI と表示されます。
理由を見つけるには、OpenAPI ファイル内でテキスト Auction Item Bid API を含むタイトル属性を探します。
"info": {
"version": "v1",
"title": "Auction Item Bid API"
},
Power Apps この属性値からすべてのスペースを削除し、データ ソース の名前として使用します。
チップ
この属性の値を AuctionItemBidAPI などの Pascal 形式の名前に変更し、カスタム接続の名前として使用することをお勧めします。 混乱を回避しやすくなります。 カスタム コネクタを作成する際は OpenAPI ファイルをインポートする前に、この値を変更します。
注意
既存の ファイルをインポートする代わりに、 空白から作成 OpenAPI オプションを使用すると、PowerApps カスタム コネクタ名の入力を求められます。 この名前は、カスタム コネクタの名前として、また OpenAPI ファイル内の title 属性の値として使用されます。 一貫性とシンプルさを保つために、必ず AuctionItemBidAPI のようなパスカル形式の名前を付けてください。
Excel データテーブル
PowerApps は Microsoft Excel の DataTables を使って Excel ワークシートのデータに接続します。 Excel ドキュメントをデータ ソースとして作成するときは、次の点に注意してください:
- DataTables にわかりやすい名前を付けます。 この名前は、接続するためのコードを書く際に、Power Apps アプリ内で確認できます。
- ワークシートごとに 1 つの DataTable を使用します。
- DataTable とワークシートに同じ名前を付けます。
- DataTables では説明的な列名を使用します。
- パスカル ケースを使用します。 DataTable 名の各単語は、
EmployeeLeaveRequestsのように大文字で始まる必要があります。
変数名
キャンバス アプリの変数の命名規則は、Power Apps プロジェクトで可読性、一貫性、明確性を維持するために重要です。 厳密な標準は強制されませんが、キャンバス アプリ全体で一貫した命名規則を採用することで、あなたや他の共同作業者が変数を理解し、使用し、管理しやすくなります。
- 最初の単語を除いて各単語の最初の文字を大文字にするキャメル ケースを使用します。
- 変数の目的や内容を明確に説明する、意味のある説明的な名前を選択してください。 Temp や var1 のような非常に一般的な名前は避けてください。 代わりに、userEmail や totalAmount などのわかりやすい名前を使用してください。
- 変数のタイプを示すために接頭辞または接尾辞を使用することを検討してください。 以下に例を示します:
- テキスト/文字列変数に
strUserName - 数値変数に
numTotalAmount - ブール変数に
boolIsEnabled - ローカル変数/コンテキスト変数に
locVarName - グローバル変数に
gblVarLoginUser
- テキスト/文字列変数に
- 変数に単数形または複数形のどちらで名前を付けるかを決定し、その規則に従います。 たとえば、userCount または users を一貫して使用します。
- 予約語や、Power Apps 関数やキーワードと衝突する可能性のある名前の使用は避けてください。 予約語のリストについては、Power Apps ドキュメントを確認してください。
- 変数の使用法やスコープに関するコンテキストを提供する接頭辞の使用を検討してください。 例:
- フォーム変数に
frm - コレクションに
col - 汎用変数に
var
- フォーム変数に
- 特殊文字の使用は避けてください。 名前には英数字を使用し、特殊文字やスペースは使用しないでください。 文字と数字のみを使用することを心がけててください。
Power Apps はコンテキスト変数とグローバル変数は同じ名前を共有します。 曖昧さ解消演算子を使用しない限り、既定で数式がコンテキスト変数を使用するため、混乱を招く可能性があります。
次の規則に従って、この状況を回避してください:
- コンテキスト変数の前に
locを付けます。 - グローバル変数の前に
gblを付けます。 - 接頭辞の後の名前は、変数の意図/目的を示す必要があります。 各単語の最初の文字が大文字であれば、複数の単語を使用することができ、スペースやアンダースコアなどの特殊文字で区切る必要はありません。
- キャメル ケースを使用します。 変数名の先頭に小文字の接頭辞を付け、その後に各単語の最初の文字を大文字にします。
これらの例は標準と規則に従います:
グローバル変数:
gblFocusedBorderColorコンテキスト変数
locSuccessMessageスコープ変数:
scpRadius
このような例は基準に沿っていないため、理解するのが困難です。
dSubrstFldshideNxtBtnttlOppCtcFVcQId
EID などの短くてわかりにくい変数名は避けてください。 代わりに Use EmployeeId を使用します。
アプリ内に変数がたくさんある場合、数式バーに接頭辞を入力するだけで、使用可能な変数のリストが表示されます。 これらのガイドラインに従って変数に名前をつければ、アプリを開発するときに数式バーで簡単に見つけることができます。 最終的に、このアプローチによりアプリ開発が迅速化されます。
コレクション名
- コレクションの内容を説明します。 コレクションに含まれる内容や使用方法を考慮して、それに応じて名前を付けます。
- コレクションの接頭辞には
colを付けてください。 - 接頭辞の後の名前は、コレクションの意図や目的を示すものでなければなりません。 各単語の最初の文字が大文字であれば、複数の単語を使用することができ、スペースやアンダースコアで区切る必要はありません。
- キャメル ケースを使用します。 コレクション名の先頭には小文字のコルを付け、各単語の頭文字を大文字にします。
これらの例は、コレクション名の規則に従います。
colMenuItemscolThriveApps
これらの例は、コレクション名の規則に従っていません:
orderscolltempCollection
チップ
アプリ内に多数のコレクションがある場合、数式バーに接頭辞を入力するだけで、利用可能なコレクションのリストを表示できます。 変数については、以下のガイドラインに従ってコレクションに名前を付けると、アプリを開発するときに数式バーで簡単に見つけることができます。 最終的に、このアプローチによりアプリ開発が迅速化されます。
コメントとドキュメント
アプリケーションのコードを記述するときは、明確なコメントを追加することに重点を置きます。 コメントは、後でコードを理解するのに役立ち、次の開発者がプロジェクトで作業しやすくなります。
Power Apps は、コードをわかりやすくするために 2 つのコメントスタイルをサポートしています。1 行のメモには二重スラッシュ(//) を使用する行コメント、複数行のメモには /* と */ を使用するブロック コメントです。
行コメント
Power Apps のコード行に二重スラッシュ (//) を追加すると、残りの行がコメントになります。
行コメントを使用して、次のコード行の動作を説明します。 また、これらを使用して、テスト用のコード行を一時的に無効にすることもできます。
これは行コメントの例です。
// ClearCollect function populates the Expenses2 collection with sample data
ClearCollect(
Expenses2,
// Entry 1: Client hosted meet and greet
{
Title: "Client hosted meet and greet:",
ID: "4"
// additional properties
}
)
コメントをブロックする
/* と */ の間のテキストはブロック コメントです。 ブロック コメントは、1 行のみをカバーする行コメントとは異なり、複数行をカバーすることができます。
コード モジュール ヘッダーのドキュメント化など、より長い説明にはブロック コメントを使用します。 また、これらを使用して、テストまたはデバッグ中に数行のコードを一時的に無効にすることもできます。
コードをより適切に整理するには、テキストの書式設定機能を使用した後にコメントを追加します。 これは、コメントがコードブロックの前に来る場合に役立ちます。
/*
Patch Operation to Insert Data:
- Inserts a new employee record into the 'Employee' entity.
- Adds corresponding department details to the 'Department' entity.
Note: Ensure that foreign key relationships and dependencies are maintained for data integrity.
*/
Patch(
Employee,
Defaults(Employee),
{
FirstName: "John",
LastName: "Doe",
Position: "Software Developer"
}
)
テキストの書式設定機能は、コメントについて次の規則に従います。
- プロパティがブロック コメントで始まる場合は、次のコード行が追加されます。
- プロパティが行コメントで始まる場合、次のコード行は追加されません。 それ以外の場合、コードはコメントアウトされます。
- プロパティ内の他の場所にある行コメントとブロック コメントは、前のコード行に追加されます。
コメントが多すぎたり長すぎたりすることを心配する必要はありません。 Power Apps はクライアント アプリのパッケージを作成する際にすべてのコメントを削除するため、コメントがパッケージ サイズに影響したり、アプリのダウンロードや読み込み時間を遅くしたりすることはありません。
コメント付きのモダンなアプリ デザイナー
Power Apps では、モダン アプリ デザイナーと Power Apps Studio の両方でコメント機能を使用するのが最善です。
Power Apps Studio にコメントを追加するには、次の方法を使用します。
- ツリー ビュー内の任意の項目の省略記号 ("...") を右クリックします。
- キャンバス領域内のコンポーネントを右クリックします。
- 画面右上のコマンドバーにある「コメント」ボタンを選択します。
コメントで同僚について参照投稿する場合は、「@」記号の後にその名前を付けます。 これにより、タグ付けしたユーザーに通知メールが送信されます。 タグ付けされたユーザーがアプリにアクセスできない場合、Power Apps はアプリを共有するように促します。
インデントと書式設定
Power Apps ではインデントと書式設定は、アプリを明確に整理するのに役立ちます。 ベスト プラクティスに従うことで、数式とコントロールが読みやすくなります。
数式バー
インデント
Power Apps は厳密なインデントを強制しませんが、スペースを使用して数式の異なるセクションを区切ることができます。 スペースバーを数回押して、インデントを作成します。
改行
長い数式は複数行に分割して読みやすくします。 Enter キーを押して、数式バーに改行を追加します。
テキストの書式設定コマンドを使用する
数式バーの「テキストの書式設定」コマンドは、Power Apps コードにインデント、スペース、改行を追加します。 「テキストの書式設定」コマンドを使用して、キャンバス アプリで一貫したコーディングスタイルを維持し、エラーを防ぎます。