【发布时间】:2008-12-15 03:32:03
【问题描述】:
在讨论计算机语言的演变时,Alan Kay 说他的 Smalltalk 的一个最重要的属性是后期绑定。它赋予了语言延展性和可扩展性,并允许随着时间的推移重构不适当的耦合。你同意?早期绑定是否有补偿性优势,可以解释为什么它似乎是两种范式中的主导领域,其中任何一个都可以使用?
我的个人经验(不够广泛或深度不足以成为权威),基于使用 javascript、jQuery、jsext、actionscript、php、java、RoR 和 asp.net 实现 Web 应用程序似乎表明后期之间存在正相关关系绑定和膨胀减少。我确信早期绑定有助于检测和防止一些类型安全错误,但自动完成和良好的 IDE 以及一般的良好编程实践也是如此。因此,在我的风险规避方面恢复我的理性观点之前,我倾向于抓住自己支持后期绑定方面。
但我真的不知道如何权衡取舍。
【问题讨论】:
-
需要考虑的是,很多语言都提供这两种语言,包括 VB、Objective-C、C++/COM 和 C#。
标签: smalltalk late-binding early-binding