最近,我的顾问问我是否可以构建一个模拟框架,可用于实现+测试一些新的分布式计算范例。
我研究了一些开源框架 - 发现有很多可用的仿真框架,其中大部分是基于面向组件的软件设计原则。我在互联网上查看了这个主题,发现这有点像90年代末和00年代早期,但现在已经逐渐消失了。有没有人有一些好书可以说明究竟是什么?现在有一些接触Java - 我也注意到我可能已经使用了一些面向组件的软件概念(例如 - 我使用Swing的文本apis创建了简单的所见即所得文档编辑器,所以我知道诸如 - Views,StyleContext等概念,StyleDocument等等) - 虽然我明确没有注意到这些技术。
任何有关初学者书籍/教程的指南都将不胜感激。我只是想创建一个小应用程序,看看是否有任何意义。
答案 0 :(得分:2)
要构建灵活的模拟框架,您可能需要查看函数式编程语言,例如Scala,因为它可以更好地为此工作,因为您可以设计DSL(域特定语言)来帮助抽象编写模拟器,所以其他人可以专注于他们的研究。
有关想要将Scala用于模拟器的人的示例,您可以查看Howto design a clock driven multi-agent simulation。
对于一个带有.NET引用的有趣页面,它将OOP与面向组件的编程进行比较,您可以查看此博客:http://www.elenkist.com/bushido_burrito/blog/?p=11。
在你掌握一门语言或技术之前,先设计出你想做的事情,你希望用户如何与你的框架互动,然后决定最好的方法,而不是试图选择一种方法并强迫你解决方案在这些限制范围内工作。