如果你只会Java,那所有东西看起来都是类

鉴客
 鉴客
发布于 2011年09月28日
收藏 4

本文是从 If the only tool you have is Java, everything looks like a class 这篇文章翻译而来。


在软件开发领域,有一句话经常被拿来用:

如果你手头只有锤子,那所有东西看起来都像钉子

这句话有各种各样的类似的说法,但最初的来源是工具定律,也叫做马斯洛的锤子

我是今天在阅《Head First 设计模式》这本时想到这个故事的。(一本奇书,不确定我是否该推荐你们读这本书。)

让我印象深刻的东西是,对于任何设计上的问题,Java里给出的解决方法都是创建一个新类。我很吃惊,这种语言里基本上没有第二种用于抽象代码的方法。我已经用惯了带有lambdas语法的语言,所以,举个例子,为了封装一个“开灯”的动作,你需要创建一个LightOnCommand类来实现Command接口,这种做法感觉就是浪费脑力、字符,精神。我讨厌这严重受限的代码表达能力。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:如果你只会Java,那所有东西看起来都是类
加载中

最新评论(35

Erasin
Erasin
的确.有时过程更好些
shown
shown

引用来自“星迷”的评论

如果你手头只有锤子,那所有东西看起来都像钉子

如果你什么都不顺心,看什么都像钉子,那你就很怀念锤子~
宏哥
宏哥

引用来自“sxgkwei”的评论

引用来自“宏哥-Bridge”的评论

引用来自“meng.xiangliang”的评论

世界上最优美的只有c没有之一。像java这种1个礼拜就能精通的东西,根本没有讨论的意义

可惜能体会C的优美,需要功力啊

我翻白眼。。。大哥们,经济啊~~哪个选择更经济呢?

这两玩意就和保时捷和宝来,用处不同
sxgkwei
sxgkwei

引用来自“宏哥-Bridge”的评论

引用来自“meng.xiangliang”的评论

世界上最优美的只有c没有之一。像java这种1个礼拜就能精通的东西,根本没有讨论的意义

可惜能体会C的优美,需要功力啊

我翻白眼。。。大哥们,经济啊~~哪个选择更经济呢?
宏哥
宏哥

引用来自“meng.xiangliang”的评论

世界上最优美的只有c没有之一。像java这种1个礼拜就能精通的东西,根本没有讨论的意义

可惜能体会C的优美,需要功力啊
老程
老程
有一门熟就好了,不做评论。
itsusony
itsusony
世界上最优美的只有c没有之一。像java这种1个礼拜就能精通的东西,根本没有讨论的意义
itsusony
itsusony
太呆了,直接用个静态类去实现开灯啊。
初学者学oo只会把所有东西都用类去做。

世界上还有很多方法比如反射啊,事件驱动啊等等等等
ValueError
ValueError

引用来自“LimSteven”的评论

只是吐槽啊。没有解决问题。

外刊评论都是翻译国外吐槽文的~
返回顶部
顶部