欢迎您光临本公司官方网站!
全国服务热线:13713845237

行业新闻

主页 > 行业信息 > 行业新闻 >

NET架构师:函数式语言做领域驱动设计

2020-11-19 04:25来源:本站 作者:admin点击:

  Scott,一位构师•,同时也是掌握函数式编程的作者,他很欣赏函数式编程,但面向对象的开发人员可能会觉得函数式编程很恐怖,接受不了仿函数•、应用型、单子之类所有这些奇怪的专业术语,不过Scott宣传它们确实只是陌生的术语。对于Scott来说,面向对象编程的那些概念也很恐怖,比如多态、泛型、继承、协变等•。他认为函数式编程更容易•,因为它的概念更少,并且特别强调在他演示的例子中没用到这些概念中的任何一个。

  按照Scott的经验,很多开发人员都觉得函数式编程擅于解决数学和科学领域中的问题,但对于现实世界中的普通应用来说太复杂了,但他认为F#真的很适合做那些无聊的业务类应用程序(BLOBA)的开发;它非常精炼,有很多规避套路化代码的便利之处,还有一个确保程序正确性的类型系统。

  在领域驱动设计中比较F#和C#时••,可以看看值对象和实体两种代码的例子,Scott说F#的代码通常会简单得多,有时候简单的都可以用来跟领域专家讨论领域模型了,甚至可以直接评审代码,都不用UML图或者其他模型。

  在介绍F#的类型系统时,Scott展示了如何把类型和用来做类型检查的注解变成领域建模工具,并用来呈现设计。因为编译器会做类型检查,所以类型系统可以被看作是编译时的单元测试。

  Scott在结论中宣称F#是函数优先开发中低风险的、安全的选择•,他的主要依据是F#有微软在后面撑腰。

99真人