|
|
1
2
我当然会考虑不同的语言来促进某些方法论,因为它们包含不同的哲学。 面向对象语言适用于更大的组,因为代码可以整齐地分离。相反,动态语言将允许更具探索性和更直接的方法,因为可以在不长编译时间的情况下交互式地测试代码(例如交互式shell)。 在配置上的约定(如RoR所实践的)适用于快速开发,而高级功能类型系统(如F s或Haskells)则促进了 类型优先 方法。 当然,相反的是更容易证明,在一个不充分的类型系统中,你不能依赖类型,你不能通过接口来解耦,这些接口都是隐式的,你不能用C++之类的语言尝试错误来轻易地发现问题。所以是的,有一种联系。 |
|
|
2
0
某些环境有帮助,特别是对于规定快速代码和单元测试周期的方法。例如,我需要4s来编译和运行C中一个50000行项目的基本测试,但是大约一年前这里有一篇文章,因为数据库开销,有人花了2分钟来运行ROR的“单元”测试。 |
|
|
3
0
动态语言是敏捷方法论的天然朋友(敏捷不是一种方法论,而是一系列带有scrum、xp等的方法论),因为它们源自相同的“实用主义”精神,但由于业务压力的需要,甚至编译器的语言现在也使用了敏捷,事实上,通过集成C或具有4.0版本的.NET Framework。 |