Al hablar sobre la evolución de los lenguajes de programación, Alan Kay dice que el atributo más importante de su Smalltalk es el enlace tardío; le da al lenguaje su maleabilidad y extensibilidad, y permite que el acoplamiento inapropiado sea refactorizado a lo largo del tiempo. ¿Estás de acuerdo? ¿Hay ventajas compensatorias para la vinculación temprana que expliquen por qué parece ser el dominante de los dos paradigmas para dominios en los que cualquiera de ellos podría usarse?Enlace anticipado vs. enlace tardío: ¿cuáles son los beneficios y desventajas comparativas?
Mi experiencia personal (que no es lo suficientemente amplia o profunda como para ser autoritaria), basada en implementar aplicaciones web con javascript, jQuery, jScript, actionscript, php, java, RoR y asp.net parece sugerir una correlación positiva entre fijación tardía y reducción de la hinchazón. El enlace anticipado estoy seguro ayuda a detectar y prevenir algunos errores de tipo de seguridad, pero también lo hacen la autocompletación y un buen IDE, y buenas prácticas de programación en general. Por lo tanto, tiendo a atraparme en busca del lado vinculante tardío, antes de que mi lado de evitar el riesgo restaure mi perspectiva racional.
Pero realmente no tengo una buena idea de cómo equilibrar las compensaciones.
Algo en lo que pensar es que muchos idiomas ofrecen ambos, incluidos VB, Objective-C, C++/COM y C#. –