MSの新言語「Power Fx」--「Excel」から着想を得たローコード開発環境

Simon Bisson (Special to TechRepublic) 翻訳校正: 川村インターナショナル

2021-04-09 07:30

 Microsoftは、ローコード開発とノーコード開発の分野に新規参入した企業ではない。この分野における同社の長い歴史は、「Excel」の数式(今やそれ自体が本格的なプログラミング言語にアップグレードされている)と「Access」のウェブアプリケーション設計ツールにまで遡り、「BizTalk」のドラッグ&ドロップのプロセス自動化ツールを経て、「Windows 8」「Windows Phone」向けアプリケーション構築ツールである「Project Siena」に到達した。そして、宣言型プログラミングモデルと使いやすいUIビルダーを備える同プラットフォームが土台となり、Microsoftのビジネスアプリケーションプラットフォームの主要コンポーネントである現在の「Power Apps」が生まれた。

 Power Appsは、独自のアプリを誰もが素早く作成できるツールだ。これには、「Power Platform」の「Dataverse」共通データレイヤーに格納されているデータや、「Microsoft Graph」のデータ、自社の基幹業務アプリケーションのデータ、さらには「Azure Cognitive Services」機械学習サービスのデータを使用できる。これらのツールとPower Apps独自の設計機能を組み合わせて使用することで、ビジネスの問題の解決に必要なアプリを開発者に依存せず短時間で構築することが可能になる。

作成したローコードアプリが不可欠になるとどうなるのか

 ただし、このようなツールには問題がある。構築したアプリがあまりにも重要になる場合があることだ。たとえば、何度かの昼休みを利用して構築したアプリが突然、自分の部門の業務に欠かせなくなったとしよう。ドキュメンテーションが必要になったほか、自分のPCではなくソース管理システムに移行する必要がある。だが、コードがウェブアプリ上の個人アカウント内で実行されている場合、コードとプラットフォームが密接に結びついているため、その移行は不可能に近い。

 Power PlatformとPower AppsがMicrosoftのビジネスアプリケーション戦略の中心を占めるようになった今こそ、コードとプラットフォームのつながりを断ち切るときだ。それを間接的に実行する手段は以前から提供されていたが、Microsoftは先ごろ、「Power Fx」と呼ばれる新しいオープンソース言語を発表し、少なくともPower Appsの「Canvas」アプリについては、それらの手段を正式なものにした。

 この10年ほどの間にMicrosoftのローコードツールを使用したことがある人なら、Power Fxになじみがあると感じるだろう。Power FxはProject Siena向けに開発されたツール群の直系であり、AccessとExcelの両方のコンセプトを継承しているからだ。Excelでの開発と多くの類似点があるため、数式作成のスキルをPower Fxに応用して、学習のスピードを上げられる。一方で、Power Fxは、AccessなどのツールがSQLと連携してクエリーの処理やデータの操作を実行する仕組みを数多く採用している。

Power Fxでのコーディング

 MicrosoftはPower Fxについて、スプレッドシートを作成するようにアプリケーションを開発できると評しており、同言語を「数式言語」と呼んでいる。Power Fxでは、数式がセルではなくコントロールとデータへの参照を使用して、ユーザーインターフェースデザインにリンクする。それぞれの数式は、関連付けられているコントロールが使用されるときに実行されるため、テキストコントロールに入力すると、適切な数式が自動的に実行される。そのため、Power Fxにはコントロールフローがなく、イベントをコントロールのトリガーにせずに操作をイベントに結び付ける手段はない。

 Excelと同様に、それぞれの数式は独立している。ただし、出力値を入力として使用することで、ある数式を別の数式に入力することはできる。それらの要素がどのように相互作用するかは、ユーザー側では制御しない。Power Appであれ、Power Fx言語を使用する別のツールであれ、基盤となるプラットフォームがこれをすべて処理する。より高度な用語で説明するなら、Power Fxはそれぞれの数式が別々の関数となる非同期関数型プログラミング環境だ。

 その結果が、コードを記述すると稼働するシステムであり、それぞれの新しいコードブロックは、記述が完了するとすぐに実行される。このアプローチにより、まさにExcelのスプレッドシートを作成するようにPower Fxアプリケーションを記述できるほか、アプリケーションを構築しながらコードをテストしたり実験したりする機会が得られる。

Power Fxの数式は、YAMLソースファイルに保存でき、「Visual Studio Code」などのテキストエディターからアクセスできる。</br>
提供:Microsoft
Power Fxの数式は、YAMLソースファイルに保存でき、「Visual Studio Code」などのテキストエディターからアクセスできる。
提供:Microsoft

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ZDNET Japan クイックポール

注目している大規模言語モデル(LLM)を教えてください

NEWSLETTERS

エンタープライズ・コンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]