84得票9回答
如何创建具有属性的内联对象?

在 JavaScript 中,代码应该是:var newObject = { 'propertyName' : 'propertyValue' }; newObject.propertyName; // returns "propertyValue" 但在Python中,相同的语法会创建一个...

9得票9回答
动态语言比静态语言慢吗?

动态语言比静态语言慢是因为运行时需要不断检查类型吗?

18得票9回答
为什么动态语言中不需要接口?

仅仅因为动态类型,我们就不需要在Python中使用接口的概念(比如Java和C#中使用的接口)吗?

30得票15回答
在动态语言中,你如何进行不同的编程?

如果真正了解动态编程语言的人与使用静态语言的人相比,他们会如何处理编程问题? 我熟悉整个静态和动态类型之争,但这不是我的重点。我想讨论实用于动态语言而非静态语言的问题解决技巧。 我看到的大部分动态编程语言代码与静态编程语言编写的代码并没有太大区别。俗话说,在任何语言中都可以编写FORTRAN,...

8得票3回答
在 Python 中动态添加属性是被反对的吗?

在Python中,您可以从定义类的外部分配任意属性: class Profile(models.Model): user = models.OneToOneField(User) name = models.CharField(max_length=140) p = P...

44得票9回答
为什么在动态语言中不需要IOC容器

在Herding Code播客第68期中,http://herdingcode.com/herding-code-68-new-year-shenanigans/有人声称,在Python或Javascript中没有使用IOC容器的地方,或类似这样的说法。我认为这是传统智慧,并且适用于所有动态语...

81得票32回答
动态语言有什么吸引人的地方?

最近似乎每个人都在跟风使用动态、非编译语言。我大部分只用过编译型、静态类型语言(如C、Java、.Net),对动态语言的经验仅限于ASP(VB Script)、JavaScript和PHP等技术。但这些技术给我留下了不好的印象,因为编译器通常会捕捉到例如拼写错误的变量名和把错误类型的值赋给变量...

16得票3回答
使用Groovy元类覆盖方法

我有一个POJO,它使用服务来执行某些操作:public class PlainOldJavaObject { private IService service; public String publicMethod(String x) { return d...

7得票2回答
如何通过堆栈跟踪访问本地变量?(模拟动态作用域)

背景 虽然在运行时编译C#代码是可能的,但是无法将生成的代码包含并在当前作用域中运行。相反,所有变量都必须作为显式参数传递。 与像Python这样的动态编程语言相比,我们永远无法真正复制eval的完整行为(如此示例所示)。 x = 42 print(eval("x + 1")) # Pr...

8得票3回答
动态语言中的接口是什么?

在静态类型语言(如C#,JAVA)中,接口(或所有方法都为抽象的抽象类)是一种强大的工具。它允许以统一的方式使用不同的派生类型。设计模式鼓励我们尽可能多地使用接口。 然而,在动态类型语言中,所有对象在编译时都不会检查其类型。它们不必实现接口以便以特定方式使用。您只需要确保它们定义了一些方法(...