Microsoft、「Excel」の数式をベースにしたローコード言語「Microsoft Power Fx」を発表さまざまな「Power Platform」製品で利用可能に

Microsoftは、「Excel」の数式をベースにしたオープンソースのローコードプログラミング言語「Microsoft Power Fx」を発表した。Excelの数式や関数に慣れていればノーコードやローコードで開発でき、他のプログラミング言語と組み合わせた「プロコード」でもアプリケーションを開発できるという。

» 2021年03月04日 11時30分 公開
[@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

 Microsoftは2021年3月2日(米国時間)、「Microsoft Power Fx」を発表した。Power Fxは「Microsoft Excel」の「数式」をベースにしたオープンソースの汎用(はんよう)プログラミング言語。

 プログラミング未経験者によるノーコード開発から、ベテランのプロ開発者によるプロコード開発まで、あらゆる場面で利用でき、多様なチームがこの言語を用いてコラボレーションを重ね、時間や費用を節約できると、Microsoftは述べている。

Power Fxを使っているところ(出典:Microsoft、クリックで再生)

 Power Fxは宣言型の数式でオブジェクトをバインドする。Microsoftは次のような例を挙げて説明している。

 「UIコントロールのVisibleプロパティが表計算ソフトウェアのセルのような役割を果たす。関連付けられた数式が、他のコントロールのプロパティに基づいて、値を計算する。数式のロジックは、表計算ソフトウェアの場合と同様に自動的に再計算を進め、それがコントロールの見た目に影響する」。必要に応じて今後は命令型ロジックも提供するという。

なぜPower Fxが必要なのか

 「スプレッドシートを作るのと同じように、アプリケーションを簡単に作れるとしたら?」「既存のスプレッドシートの知識を活用できるとしたら?」という疑問が、Power Fxが登場したきっかけとなったのだという。

 Power Fxは強く型付けされた宣言型の関数型言語であり、人間が読みやすいテキストで表現される。アプリケーションソフトウェアのベンダーが、Excelと似た数式バーや、「Visual Studio」のテキストウィンドウで直接扱えるローコード言語だ。「ロー」とはこの言語の簡潔でシンプルな性質に由来しており、ベンダーも開発者も、この言語で一般的なプログラミングタスクを簡単に実行できる。

 次の表は現時点のPower Fxで利用可能な関数の一覧であり、緑色の背景が付いた関数はExcelの関数と同じ働きをするか、またはほとんど変わらないものを示す。Excelには膨大な機能が備わっているため、Excel開発チームとコラボレートしながら、どの機能を追加するかを決めていくとしている。

Power Fxで利用可能な関数の一覧(<A HREF="https://powerapps.microsoft.com/en-us/blog/introducing-microsoft-power-fx-the-low-code-programming-language-for-everyone/" target="_blank" rel="noopener">出典:Microsoft</A>)

Excelの処理とPower Fxの処理を比較する

 Excelで計算する場合、式を書くだけではなく、特定のセルから値を取り出し、それを別のセルに書き込む。Power Fxの演算もこれと同じだ。Power Fxではセルがコントロールかオブジェクトのプロパティに置き換えられる。

 次の例は、Stack OverFlowに掲載された質問を解くためのExcelシートの内容だ。文章を入力すると最後の単語を抜き出す処理を実行している。

最後の単語を抜き出す処理を実行するExcelシート(出典:Microsoft

 これと同じ処理を実行するPower Fxのコードは次のようになる。Excelと異なるのは、セルへの参照がコントロールプロパティへの参照に変わっているところだけだ。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。