ale*_*bit 22 enterprise design-patterns functional-programming
有没有关于企业架构模式(la Fowler)的(集中)信息的良好来源,可能有示例和用例以及相当多的实用信息?例如,我已经看到GoF的许多设计模式都在一些SO帖子和其他网站上很快解释,以及与它们相关的实用信息.我要求从面向企业应用程序的更多功能范例中获取类似资源.
谢谢.
Don*_*art 74
我要求从面向企业应用程序的更多功能范例中获取类似资源.
没有我知道的资源.大规模企业使用现代FP通常不到10年,因此资源往往是互联网形式.此外,很多人避免将GoF与FP无关.
所以仍然是你最好的选择(这是一个例子:https://stackoverflow.com/a/3077912/83805).虽然有一个FP架构书的市场,但这是肯定的.
社论
根据我的经验,几乎所有的设计都属于"编译器"或"解释器"模式,使用该数据的数据和函数模型.也就是说,问题域被表示为代数结构(对象作为具有其上的函数的ADT),并且软件架构是关于从一个代数到另一个代数的映射.这是"范畴论"设计模式(!)
我们的代数数据类型是捕获结构的最佳方式.函数是转换这些结构或将它们映射到新类型结构的最佳方法.编写编译器和解释器的研究很多,这使得这些东西变得简单.您可以通过编写编译器(或解释器)来实现大多数系统.所以学会编写编译器.
当你开始寻找这些"分类"软件问题时,作为解释器或编译器会出现多少事情,这真是令人惊讶.像MVC这样的事情就像解释者一样.许多商业软件(数据调整)变成了解析器+分析+漂亮的打印机 - 即编译器.也许很明显,架构(即如何粘合组件)实际上是关于代数和类别.
显然,这是关于高级架构.较低级别的东西,比如如何最好地实现日志记录系统,或者如何最好地连接昂贵的组件,如何传递环境,重放/回滚确实有可以重用的特定抽象是一个不同的问题.通常将monoids/monads/applicatives或其他计算概念捕获为库.
但是,我们再次进入代数视图,找到最能捕获问题域的结构.
| 归档时间: |
|
| 查看次数: |
4195 次 |
| 最近记录: |