Microsoft が というプログラミング言語を開発したと聞きましたM
。
M
の使用方法と、C# プログラマーがどのように恩恵を受けることができるかを説明できますかM
?
更新 2:
2015 年 7 月、Microsoft はPower Queryと呼ばれる M の大幅に改訂されたバージョンをリリースしました。それは「式言語」として説明されており、もはやモデリングそのものではありません。
更新 1:
私がこれを書いてからほぼ 4 年が経ちましたが、私の推測 (「あまり役に立たない」ということ) は、多くの人々によって共有されていることが判明しました。M は廃止されてからずっと経ち、リリースされることはありませんでした。MS は代わりにODataに取り組みを切り替えました。
M の背後にあるポイントを理解するには、いくつかの簡単な歴史を理解する必要があります。
1990 年代半ばから 2000 年代初頭にかけて、ビジネスマンがソフトウェアを作成して開発することを奨励するソフトウェア エンジニアリングの小さな動きがありました。これは、大規模なビジネス アプリをモデル化するためのソフトウェア開発者の仲介者を排除することで、大規模なソフトウェア プロジェクトの複雑さを軽減するための取り組みと見なされていました。ビジネスマンがソフトウェア開発に直接貢献できるようになったため、多くの管理チームがこのアイデアを気に入りました。
ビジネスアナリストの関与を高めるために人々が使用した多くの戦略がありました。最も人気のあるものの 1 つは、モデル指向アーキテクチャです。このスキームの下では、ビジネスマンはある種のビジュアル言語 (UML など) を使用してモデルを直接指定し、それをコードに生成することができました。これは、自動生成されたデータベースの列とテーブル、および適切な NHibernate タグでタグ付けされた関連する C# クラスを作成するある種のビジュアル デザイナーを持つことと同じです。
いくつかの概念をモデル化するためだけに新しいプログラミング言語を学ぶのは不便であるため、ほとんどのビジネス関係者は生成されたコードを理解できませんでした。実際、ほとんどの人は、モデル化されたコードのスタックを開発者に渡して、「これで実行してください」と言いたいだけでした。一般に、生成されたコードの品質レベルは低かった。
最終的に、作成したばかりのソフトウェアを理解できないビジネス関係者がいることは問題であることが明らかになると、この運動は消滅しました。ツールにも問題がありました。洗練されたボックスと矢印の図は、PowerPoint プレゼンテーションでは見栄えがしますが、ソフトウェアでは表現があいまいです。考えられる実装間の意図の違いは、多くの場合、微妙すぎてツールに取り込むことができませんでした。
ここで M の出番です。Microsoft は、ツールが改善され、物事をより直接的にモデル化できるようになったと確信しています。M は(以前のビジュアル モデリング ツールの巧妙なボックスと矢印の言語ではなく)テキスト言語であるため、彼らは明らかに他の人の過ちから学んでいます。M は UML の別のバージョンと考えてください。ただし、多くの粗雑な部分が取り除かれ、(一連のイベント、アクターなどではなく、UML を使用できる他のすべてのものではなく) オブジェクトのモデリングのみに重点が置かれています。モデル)。
IMO、効果的に作業するための十分なマインドシェアがないため、現在はあまり役に立ちません。言語の有用性の一部は、それが動作するツールであり、現在のところ、それらのツールはほとんどありません (実際、現在、M を支援するサードパーティ ツールは 1 つも思い浮かびません)。
サイドバー: 誰かが Microsoft の人々に SEO マーケティングの 101 クラスを提供する必要があります。「m dsl」の上位 10 件の結果のうち 0 件は DSL に近いものです。1 件の結果はデトロイトのソフトボール リーグに関するものです。1 つは携帯電話のデジタル加入者回線に関するものです。など。新しいツールにアルファベットの名前を付けないでください!
Microsoft の M 言語仕様からの引用:
Microsoft のコードネーム "M" Modeling Language (以下、M と呼びます) は、テキストを使用してドメインをモデル化するための言語です。ドメインは、関連する概念またはオブジェクトの集まりです。モデリング ドメインは、モデルに含める特定の特性を選択し、無関係と見なされる他の特性を暗黙的に除外することで構成されます。テキストを使用したモデリングには、図や粘土などの他のメディアを使用したモデリングと比較して、いくつかの利点と欠点があります。M 言語の目標は、これらの利点を活用し、欠点を軽減することです。
M はマッシュアップ クエリの略で、PowerQuery と PowerBI Desktop で使用されます。名前が Power Query 式言語に変更されました。非公式には「M」として知られています。