设为首页 加入收藏

TOP

跨越边界:Java模型以外的类型策略(二)
2014-11-23 22:27:42 】 浏览:233
Tags:跨越 边界 :Java 模型 以外 类型 策略
赢得开发人员青睐的最大原因是更容易检测错误,而且有更多可用的工具。

  动态类型的优点

  Ruby 专家 Dave Thomas 将动态类型称作duck typing(见参考资料),这有两层意思。第一层意思是说,这种语言不真正实现类型 ―― 它利用鸭子理论 解决这个问题。第二层意思是说,如果什么东西走起来像鸭子,叫起来也像鸭子,那么它很可能就是一只鸭子。在编程语言的上下文中,duck typing 意味着如果一个对象对于某种类型的方法有反应,那么事实上就可以把它看作那种类型。这样的特性可以导致一些有趣的优化。

  大多数偏爱动态类型的开发人员除了强调早期错误检测会带来不必要的成本外,还提到动态类型语言具有很好的可表达性和生产率。很简单,您通常可以用更少的关键词表达更多的思想。作为一名新的 Ruby 拥护者,我深信动态语言更能提高生产率,虽然我不能比常见的静态语言的支持者拿出更多具体的证据来。但是,从我开始编写更多的 Ruby 代码起,我就感觉到自己的生产率有了明显的提高。诚然,我仍然会看到静态类型的优点,尤其是在工具集方面,但是我逐渐认识到了静态类型的缺点。 当我开始用 Ruby 编写代码时,我受到的最大改变是产生和使用元编程结构的能力。如果您从头开始一直关注跨越边界 系列统的话,您就知道元编程,或者说编写用于编写程序的程序,是 Ruby on Rails 的一大推动力量,更一般地说,是特定于领域的语言的一大推动力量。用 Ruby 编程时,我通常会编写更大的构建块,或者用更大的块进行构建。我发现,与使用 Java 编程相比,我可以用更多类型的可重用块扩展我的程序。就

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇采用何种办法不能同时运行两个程序 下一篇Java基础-使用数据库连接池的必..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目