次の方法で共有


コードの読みやすさ

コードの読みやすさは、見過ごされることが多いアプリ開発の重要な側面です。 読み取り可能なコードは、理解、保守、デバッグが簡単です。

名前付け規則

一貫性のある名前付け規則により、コードの読みやすさが大幅に向上します。 アプリ内の各要素の目的をすばやく特定し、コードベース内を簡単に移動するのに役立ちます。

全般的な名前付け規則

このセクションでは、「キャメル ケース」と「パスカル ケース」の命名規則について説明します。 これらの用語をすでに知っている場合は、スキップして進んでください。

キャメルケース

コントロールと変数にはキャメル ケースを使用します。 キャメル ケースは小文字の接頭辞で始まり、オブジェクト名や変数名からすべてのスペースを取り除き、最初の単語以降の各単語の最初の文字を大文字にします。 たとえば、テキスト入力コントロールの名前を txtUserEmailAddress とします。

パスカル ケース

データ ソースには Pascal ケースを使用します。 パスカルケースは「アッパーキャメルケース」と呼ばれることもあります。キャメルケースと同様に、すべてのスペースを削除し、単語の最初の文字を大文字にします。 ただし、キャメルケースとは異なり、パスカルケースでも最初の単語は大文字になります。 たとえば、Power Apps の一般的なデータ ソースは Microsoft Office 365 Users コネクタであり、コードでは Office365Users という名前です。

スクリーン名

画面の目的を明確に示す画面名を選択すると、Power Apps Studio で複雑なアプリ間を簡単に移動できます。

スクリーン リーダーは、画面名を読み上げます。 視覚アクセシビリティが必要なユーザーは、これらのスクリーン リーダーに依存します。 画面名にはプレーン言語を使用し、スペースを含め、省略形は使用しないでください。 名前が発表されたときに明確なコンテキストを提供するには、各名前を "Screen" という単語で終えます。

次によい例をいくつか示します:

  • Home_Screen または Home Screen
  • Search_Screen または Search Screen

説明されているパターンに従う画面名の一覧を示すスクリーンショット。

これらのスクリーンネームの例は理解しやすいものではありません:

  • Home
  • LoaderScreen
  • EmpProfDetails
  • Thrive Help

コントロール名

キャンバス上のすべてのコントロール名にキャメル ケースを使用します。 3 文字の型記述子から始まり、その後にコントロールの目的が続きます。 このアプローチは、コントロールの種類を識別する際に役立ち、数式の構築と検索が容易になります。 たとえば、lblUserName コントロールがラベルであることを示します。

次の表は、一般的なコントロールの略語を示しています。

コントロール名 略称
バッジ bdg
ボタン btn
カメラ コントロール カム
Canvas できる
カード crd
グラフ​​ chr
チェックボックス chk
コレクション col
コンボ ボックス cmb
コンポーネント cmp
コンテナ con
日付 dte
ドロップ ダウン drp
フォーム frm
ギャラリー ガロン
グループ グループ
ヘッダー HDR
Html テキスト htm
アイコン ico
Image img
情報ボタン 情報
ラベル lbl
リンク lnk
リストボックス lst
マイク マイク
Microsoft Stream str
ページセクションの形状
ペン入力 ペン
Power BI タイル pbi
進行状況バー pbar
レイティング rtg
リッチ テキスト エディター rte
図形 (長方形、円など) shp
スライダー sld
タブ リスト タブ
テーブル tbl
テキスト入力 txt
タイマー tmr
トグル tgl
Video vid

コントロールとそのプロパティの詳細なリストについては、コントロール リファレンス を参照ください。

注意

コントロール名はアプリケーション全体で一意である必要があります。 コントロールが複数の画面で再利用される場合は、短い画面名に接尾辞を付ける必要があります。 たとえば、galBottomNavMenuHS、「HS」は「ホーム画面」を意味します。このアプローチにより、画面をまたいで数式のコントロールを簡単に参照できます。

次に良くない例をいくつか示します:

  • zipcode
  • Next

コントロールに一貫した名前を付けると、アプリのナビゲーション ビューが整理され、コードも整理されます。

説明されているパターンに続くコントロール名を示すナビゲーション ビューのスクリーンショット。

データソース名

データ ソースをアプリケーションに追加するときに、Power Apps アプリの名前を変更することはできません。 名前は、ソース コネクタまたは接続から派生したデータ エンティティから継承されます。

次に例をいくつか示します。

  • ソース コネクタから継承された名前: Office 365 Users コネクタの名前はコード内でOffice365Usersです。
  • 接続から派生したデータエンティティ: SharePoint コネクタからEmployeesという名前の Microsoft SharePoint リストが返されます。 そのため、コード内のデータ ソースの名前は Employees。 同じ Power Apps アプリで、同じ SharePoint コネクタを使用して、Contractors という名前の SharePoint リストをaccessすることもできます。 この場合、コード内の データ ソース の名前は Contractors です。

コネクタと接続の詳細については、「 キャンバス アプリのコネクタの概要」を参照してください。

標準的なアクションコネクタ

標準アクションコネクタでは、LinkedInなどの関数を公開する場合、データソース名とその操作にパスカルケース(単語の頭文字を大文字にする記法)が使用されます。 たとえば、LinkedIn データ ソースは LinkedIn という名前で、ListCompanies という名前の操作を持っています。

ClearCollect(
    colCompanies,
    LinkedIn.ListCompanies()
)

カスタム コネクタ

カスタム コネクタを使用して、会社が作成するサービスや基幹業務 API などのカスタム アプリケーション プログラミング インターフェイス (API) に接続します。 環境内の任意のメーカーがカスタム コネクタを作成できます。 データ ソース名とその操作には PascalCase を使用します。 カスタム コネクタ名と、Power Appsでの表示方法は異なる場合があります。

MS Auction Item Bid API という名前のカスタム コネクタの例を考えてみましょう。

MS Auction Item Bid API という名前のコネクタのスクリーンショット。

このコネクタから接続を作成し、データ ソースとしてPower Apps アプリに追加すると、AuctionItemBidAPI として表示されます。

名前が AuctionItemBidAPI であることを示すコネクタのスクリーンショット。

その理由を検出するには、OpenAPI ファイル内で、テキスト Auction Item Bid APIを含むタイトル属性を探します。

"info": {
    "version": "v1",
    "title": "Auction Item Bid API"
},

Power Apps、この属性値からすべてのスペースを削除し、データ ソースの名前として使用します。

チップ

この属性の値を、 AuctionItemBidAPI などのパスカル大文字の名前に変更し、カスタム接続の名前として使用します。 この方法では、混乱はありません。 カスタム コネクタを作成する際は OpenAPI ファイルをインポートする前に、この値を変更します。

注意

既存の OpenAPI ファイルをインポートする代わりに Create from a blank オプションを使用すると、カスタム コネクタ名の入力を求めるメッセージPower Apps表示されます。 この名前は、カスタム コネクタの名前と、OpenAPI ファイル内のタイトル属性の値の両方です。 AuctionItemBidAPIなど、パスカルで大文字と小文字を区別した名前を使用して、一貫性を保ち、シンプルにします。

Excel データテーブル

Power Apps では、Microsoft Excelの DataTable を使用して Excel ワークシートのデータに接続します。 Excel ドキュメントをデータ ソースとして作成するときは、次の点に注意してください:

  • DataTables にわかりやすい名前を付けます。 名前は、Power Apps アプリに接続するコードを記述するときに使用されます。
  • ワークシートごとに 1 つの DataTable を使用します。
  • DataTable とワークシートに同じ名前を付けます。
  • DataTables では説明的な列名を使用します。
  • パスカル ケースを使用します。 DataTable 名の各単語は、EmployeeLeaveRequests のように大文字で始まる必要があります。

変数名

キャンバス アプリの変数の名前付け規則は、Power Apps プロジェクトにおいて、読みやすさ、一貫性、明確さを維持するために重要です。 厳密な標準は強制されませんが、キャンバス アプリ全体で一貫した命名規則を採用することで、あなたや他の共同作業者が変数を理解し、使用し、管理しやすくなります。

  • 最初の単語を除いて各単語の最初の文字を大文字にするキャメル ケースを使用します。
  • 変数の目的や内容を明確に説明する、意味のある説明的な名前を選択してください。 tempvar1などの過度に一般的な名前は使用しないでください。 代わりに、 userEmailtotalAmountなどのわかりやすい名前を使用します。
  • 変数のタイプを示すために接頭辞または接尾辞を使用することを検討してください。 以下に例を示します:
    • テキスト/文字列変数に strUserName
    • 数値変数に numTotalAmount
    • ブール変数に boolIsEnabled
    • locVarNameローカル変数/コンテキスト変数用
    • グローバル変数に gblVarLoginUser
  • 変数に単数形または複数形のどちらで名前を付けるかを決定し、その規則に従います。 たとえば、 userCountusersを常に使用します。
  • Power Apps関数またはキーワードと競合する可能性がある予約語または名前は使用しないでください。 予約語の一覧については、Power Appsドキュメントを参照してください。
  • 変数の使用法やスコープに関するコンテキストを提供する接頭辞の使用を検討してください。 例:
    • フォーム変数について frm
    • コレクションに col
    • var は汎用変数用です
  • 特殊文字の使用は避けてください。 名前には英数字を使用し、特殊文字やスペースは使用しないでください。 文字と数字のみを使用することを心がけててください。

Power Appsコンテキスト変数とグローバル変数は同じ名前を共有できます。 あいまい さを解消する演算子を使用しない限り、数式では既定でコンテキスト変数が使用されるため、この共有は混乱を招く可能性があります。

次の規則に従って、この状況を回避してください:

  • コンテキスト変数の前に loc を付けます。
  • グローバル変数の前に gbl を付けます。
  • プレフィックスの後の名前は、変数の意図または目的を示す必要があります。 各単語の先頭文字を大文字にすると、アンダースコアなどの特殊文字で区切る必要なく、複数の単語を使用できます。
  • キャメル ケースを使用します。 変数名の先頭に小文字の接頭辞を付け、その後に各単語の最初の文字を大文字にします。

これらの例は標準と規則に従います:

  • グローバル変数:gblFocusedBorderColor
  • コンテキスト変数locSuccessMessage
  • スコープ変数:scpRadius

このような例は基準に沿っていないため、理解するのが困難です。

  • dSub
  • rstFlds
  • hideNxtBtn
  • ttlOppCt
  • cFV
  • cQId

EIDなどの短くて不可解な変数名は避けてください。 EmployeeId を代わりに使用します。

アプリに多数の変数がある場合は、数式バーにプレフィックスを入力して、使用可能な変数の一覧を表示します。 これらのガイドラインに従って変数に名前を付ける場合は、アプリの開発時に数式バーで簡単に見つけることができます。 最終的に、このアプローチは、より迅速かつ効率的なアプリ開発につながります。

コレクション名

  • コレクションの内容を説明する名前を使用します。 コレクションに含まれる内容とその使用方法について考え、それに応じて名前を付けます。
  • コレクション名に colプレフィックスを付けます。
  • コレクションの意図または目的を表示するには、プレフィックスの後に名前を使用します。 各単語の先頭文字を大文字にした場合は、スペースやアンダースコアを使用せずに複数の単語を使用できます。
  • キャメル ケースを使用します。 コレクション名を小文字の col プレフィックスで始めてから、名前の各単語の先頭文字を大文字にします。

これらの例は、コレクション名の規則に従います。

  • colMenuItems
  • colThriveApps

これらの例は、コレクション名の規則に従っていません:

  • orderscoll
  • tempCollection

チップ

アプリに多数のコレクションがある場合は、数式バーにプレフィックスを入力して、使用可能なコレクションの一覧を表示します。 コレクションの名前付けに関する次のガイドラインに従うと、アプリの開発時に数式バーで簡単に見つけることができます。 このアプローチにより、アプリ開発が迅速になります。

コメントとドキュメント

アプリケーションのコードを記述するときは、明確なコメントを追加することに重点を置きます。 コメントは、後でコードを理解し、次の開発者がprojectで作業しやすくするのに役立ちます。

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"
    }
)

テキストの書式設定機能は、コメントについて次の規則に従います。

  1. プロパティがブロック コメントで始まる場合は、次のコード行が追加されます。
  2. プロパティが行コメントで始まる場合、次のコード行は追加されません。 それ以外の場合、コードはコメントアウトされます。
  3. プロパティ内の他の場所にある行コメントとブロック コメントは、前のコード行に追加されます。

コメントが多すぎたり長すぎたりすることを心配する必要はありません。 Power Appsは、クライアント アプリ パッケージの作成時にすべてのコメントを削除します。 コメントは、パッケージ サイズ、アプリのダウンロード速度、読み込み時間には影響しません。

コメント付きのモダンなアプリ デザイナー

Power Appsでは、Power Apps Studio と最新のアプリ デザイナーの両方でコメント機能を使用します。

Power Apps Studio でコメントを追加するには、次のメソッドを使用します。

  • ツリー ビュー内の任意の項目の省略記号 ("...") を右クリックします。
  • キャンバス領域内のコンポーネントを右クリックします。
  • 画面の右上隅にあるコマンド バーにある [ コメント ] ボタンを選択します。

コメントで同僚について参照投稿する場合は、「@」記号の後にその名前を付けます。 このアクションにより、タグ付けしたユーザーに通知メールが送信されます。 タグ付けされたユーザーがアプリにアクセスできない場合は、Power Appsがアプリの共有を促します。

コメントに @ でメンションされたユーザーを示す経費アプリのスクリーンショット。

インデントと書式設定

インデントと書式設定は、アプリを明確かつ整理するのに役立ちます。 コードの書式が整っている場合は、読みやすく理解しやすくなります。

インデント

Power Appsでは、厳密なインデントは適用されません。 スペースを使用して、数式のさまざまなセクションを区切ります。 Space キーを数回押してインデントを作成します。

改行

長い数式は複数行に分割して読みやすくします。 Enter キーを押して、数式バーに改行を追加します。

テキストの書式設定コマンドを使用する

数式バーの Format text コマンドは、インデント、間隔、改行をPower Appsコードに追加します。 テキストの 書式設定 コマンドを使用して、キャンバス アプリで一貫したコーディング スタイルを維持し、エラーを防ぐことができます。

テキスト形式コマンドが強調表示されたPower Apps Studio のスクリーンショット。

次のステップ