什么是M语言?

Emb*_*rja 21 m

我听说微软开发了一种名为的编程语言M.

有人可以解释MC#程序员的使用以及如何从中受益M.

Joh*_*lla 30

更新2:

在2015年7月,微软发布了M的严重修订版本,称为功率查询.它被描述为"公式语言",不再是建模本身.


更新1:

它已经快四年了,因为我写了这个,我的猜测(即"它不是非常有用"),原来已被很多人共享.M已经很久没有被释放了.MS转而努力转向OData.


要理解M背后的观点,您必须了解一些简短的历史:

  • 在20世纪90年代中期和21世纪初期,软件工程中出现了一些小动作,鼓励商务人士编写和开发软件.这被视为通过削减软件开发人员的中间人来为大型商业应用程序建模来降低大型软件项目的复杂性的努力.许多管理团队都喜欢这个想法,因为现在商务人士可以直接为软件开发做出贡献.

  • 人们过去常常采用很多策略来增加业务分析师的参与度.其中一个比较流行的是面向模型的架构.在这种方案下,商务人士可以使用某种视觉语言(例如UML)直接指定模型,然后将其生成为代码.这将是没有什么不同有某种可视化设计器创建自动生成的数据库列和表以及标有正确的NHibernate的标签相关的C#类.

  • 因为仅仅为了对一些概念进行建模而学习新的编程语言是不方便的,所以大多数业务人员无法理解他们生成的代码.实际上,大多数人只是想将一堆建模代码交给开发人员并说"在这里运行".通常,生成的代码的质量水平很低.

  • 最终,一旦显然有商业人员无法理解他们刚刚编写的软件是有问题的,那么这一运动就会消失.这些工具也部分归咎于:光滑的盒子和箭头图表在PowerPoint演示文稿中看起来很棒,但在软件中却有模糊的表示.可能的实现之间的意图差异通常太微妙,无法在工具中捕获.

这就是M进来的地方.微软认为工具已经改进到现在可以更直接地建模的地步.他们已经明显从别人的错误中汲取经验,因为M是文本语言(而不是早期的可视化建模工具光滑箱和-箭头语言).可以把M视为UML的另一个版本,但是很多东西被剥离了,并且或多或少专注于建模对象(而不是事件序列,演员等,以及UML可以用来做的所有其他事情)模型).

IMO,它现在不是很有用,因为没有足够的思想共享来使它有效地工作.语言实用程序的一部分是它使用的工具,而且现在很少有这些(实际上,现在我想不出可以帮助你使用M的单个第三方工具).

补充工具栏:有人需要向微软人员提供一些SEO营销101课程."m dsl"十大结果中零排名甚至接近谈论DSL:一个结果是底特律的垒球联赛; 一个是关于手机数字用户线; 等等.不要在字母表后写下您的新工具!

  • M的残破残缺以一些额外的优点和新思想被重新制作为Power Query。Power Query不是像M最初那样的建模语言,而是一种查询数据的工具。此处的更多信息:https://msdn.microsoft.com/en-us/library/mt270235.aspx (3认同)

n53*_*535 6

微软M语言规范的引用:

Microsoft代码名称"M"建模语言(以下称为M)是用于使用文本对域进行建模的语言.域是任何相关概念或对象的集合.建模域包括选择要包含在模型中的某些特征,并隐式排除其他被认为不相关的特征.与使用其他媒体(如图表或粘土)建模相比,使用文本建模有一些优点和缺点.M语言的目标是利用这些优点并减轻其缺点.

  • 他们只是说用粘土造型吗?我可以看到作为业务解决方案模型存在问题,因为流程总是以被解雇为结束. (14认同)

小智 5

M代表mashup查询,用于PowerQuery和PowerBI Desktop.它已重命名为Power Query Formula Language.它被非正式地称为"M".

https://msdn.microsoft.com/en-us/library/mt270235.aspx