问题标签 [dynamic-languages]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
dynamic-languages - Design-by-Contract 能否像应用于静态类型语言一样容易/以及应用于动态语言?
标题几乎概括了要点。
我感兴趣的是,在使用动态语言时是否可以启用/禁用合同执行,而不会面临严重/未诊断失败的严重风险?
如果不是,那么关键似乎(对我来说)是任何强制执行都是组件逻辑的必需部分,而不是根据 DbC 强制执行的可移除性精神是可选/可移除的。
c# - 方法参数似乎是动态的,不确定它是如何工作的
如果我有一个委托和一个方法
然后我尝试像这样在一个新线程上调用它
BeginInvoke 方法调用现在接受一个字符串作为第一个参数,但是,如果我从委托和 aMethod() 中删除“String p”,BeginInvoke 现在只需要两个参数。
如何构建一个像 BeginInvoke 这样的函数,它可以根据其他地方的代码动态接受不同类型的参数?
对不起,如果我在这里含糊不清,但我以前从未见过这个,我很好奇。
php - 如何确保重构后代码仍然有效(动态语言)
如何确保代码在重构后(即变量名更改后)仍然有效?
在静态语言中,如果一个类被重命名但其他引用类没有,那么我会得到一个编译错误。
但是在动态语言中没有这样的安全网,如果你不够小心,你的代码可能会在重构过程中中断。您可以使用单元测试,但是当您使用模拟时,很难知道名称的变化,因此可能无济于事。
如何解决这个问题呢?
json - CouchDB 最适合动态语言吗?
我对CouchDB很熟悉,将其结果映射到 Scala 对象以及找到一些自然的方式来迭代它的想法立即出现了。
但我看到动态语言(如 Ruby 和 Javascript)在 CouchDB 的 json/document-centric/shchema-free 方法上做得很好。
用静态语言用 Couch 做事有什么好的方法吗?
c# - 如何在运行时将方法附加到动态创建的 C# 类型?
我一直在使用一个内部数据访问库,该库有效地将 XML 传递给一个存储过程,该存储过程返回 XML。我对此无能为力。我试图让 ActiveRecord 获得批准,但我的请求被拒绝了。但是,使用http://blog.bodurov.com/Post.aspx?postID=27提供的出色代码,我向 IEnumerable 添加了一个扩展方法,它将我从不规则的 XML 中返回的键值对转换为强类型对象,带有属性名称!
这:
变成
现在接口支持数据绑定!很酷!不过,我想更进一步。我希望发出的对象也具有 Save() 方法,这样我就可以模仿 ActiveRecord 模式并为我的 web 人员提供一个直观的对象层,以便从 ASP.net 使用。
如何在 Visual Studio 中的源代码中编写方法,并在运行时将其附加到发出的对象?我对编写汇编或 IL 不感兴趣(或没有资格)。我想在 C# 中执行此操作。这是我的第一个 StackOverflow 问题,我使用公司规定的 IE6 发布此问题,所以请保持温和。
interface - 为什么像 Ruby 和 Python 这样的动态语言没有像 Java 或 C# 那样的接口概念?
令我惊讶的是,我对 Ruby 和 Python 等动态语言越来越感兴趣。声称它们是 100% 面向对象的,但是当我读到接口、方法重载、运算符重载等几个基本概念时,它们都缺失了。它是以某种方式内置在封面下,还是这些语言不需要它?如果后者是真的,他们是 100% 面向对象的吗?
编辑:根据一些答案,我看到重载在 Python 和 Ruby 中都可用,在 Ruby 1.8.6 和 Python 2.5.2 中是这种情况吗?
java - 除了动态类型之外,是什么让 Ruby 比 Java“更灵活”?
几乎从 Java 首次问世以来,我就一直在使用它,但在过去的五年中,我已经厌倦了完成即使是最简单的事情变得多么复杂。在我的精神科医生的推荐下,我开始学习 Ruby,呃,我的意思是我的同事(更年轻、更酷的同事——他们使用 Mac!)。无论如何,他们不断重复的一件事是,与 Java 等较旧、更受打击的语言相比,Ruby 是一种“灵活”的语言,但我真的不知道这意味着什么。有人可以解释是什么让一种语言比另一种语言“更灵活”吗?请。我有点理解动态类型的意义,并且可以看到这对简洁有什么好处。Ruby 语法非常漂亮。还有什么?动态类型是主要原因吗?
c# - 什么是动态语言,为什么 C# 不合格?
听播客,我听说 C# 不是动态语言,而 Ruby 是。
什么是“动态语言”?动态语言的存在是否意味着存在静态语言?
为什么 C# 是一种动态语言,而其他哪些语言是动态的?如果 C#不是动态的,那么微软为什么要大力将其推向市场?
以及为什么大多数 .NET 程序员都为之疯狂而离开其他语言并转向 C#?
为什么 Ruby 是“未来的语言”?
python - Python/Ruby 作为移动操作系统
我想知道为什么不编写智能手机/移动设备操作系统以允许选择动态语言?iPhone 使用 Objective-C,Google Android 使用 Java,Windows Mobile 使用任何形式的 .NET 语言。
使用 Python、Ruby 或任何其他动态语言编写的移动操作系统背后的原因是什么?我知道在低级别他们不会削减它,但 C 或 C++ 会很好,例如 Python 可能是与之交互的顶层。我的意思是,有 Jython 或 CPython。
我只是想知道为什么我们在当今的移动操作系统中看不到更多的动态语言支持。
dynamic-languages - 动态语言和变量分配
动态语言如何决定为变量分配多少内存?例如。编译器如何在没有太多内存开销的情况下将 variable= 5 更改为 variable ="xxx" ?它什么时候使用硬件堆栈,什么时候使用内存堆?