作者PsMonkey (痞子军团团长)
站内Ruby
标题Re: [分享] 另一个 Parallel Assignment 玩法
时间Wed May 24 20:32:29 2006
麻烦请不要拿我的文章来搞 "推文成章"
我不会因为推文而降低我讨战 or 讨鞭的决心... [挺]
(btw... 以上为个人身分发言)
※ 引述《PsMonkey (痞子军团团长)》之铭言:
: 推 yalight:拿 IDE 来评论就不太公平了.. Java 这方面真的是麻烦, 05/24 17:13
拿 IDE 来评论就不太公平?
这句话我不懂...
我在这篇文章当中,提到用 IDE,也不过就是说用 "程式码协助" 的功能罢了
(连 javadoc 会不会用 ToolTip 视窗显示都没强调)
那麽... 是哪里不公平了...
: → yalight:只为了传回多个数值在程式里面要一直 new, 看到就令人冒汗 05/24 17:16
怪了... 这麽说,Ruby 不用再记忆体当中 new 新的物件就可以回传东西?
(连那个 Array 都不用 new?)
: → yalight:而且传回一个 Object[] 分不出型别, 那就相当於在程式中 05/24 17:17
: → yalight:必须确保放今都是相同的型别, 要不然就加入一些变数来辨认 05/24 17:19
: → yalight:型别是什麽?? 的确太罗唆了点, 用 reflection 就更罗唆了 05/24 17:20
: → yalight:Java1.5 的泛型也只提供能自动帮我们转型的功能, 不能放任 05/24 17:22
: → yalight:意的物件, 为什麽array 只能同一种型别的东西?没什麽道理 05/24 17:25
: → yalight:Ruby 里每个物件都有class这个成员变数可以得知物件的型别 05/24 17:27
我没研究 Ruby 的 data type
我知道的,都是这个 thread 的开头那篇文章里头写的
Java 里头所有类别的老祖宗都是 java.lang.Object
所以,你想塞所有东西,那就开一个 Object[] 的物件
这点,我看不出来跟 Ruby 的做法有什麽不同
(除非这篇 thread 开头那篇文章有讲错... @__@)
所以,你说不能存放任意的物件,这点有误
我的那篇文章当中就有给范例了
再者,Ruby 当中每个物件都有 class 这个 member
Java 里头是没有这种东西...
可是我想 java.lang.Object.getClass() 这个 method 的功能是一样的... [茶]
最後... 你要说罗唆,我的文章当中也承认
我也说了,我自己也觉得常常也写的很厌烦
这点我绝对同意
但是,可是您推文了一堆,却没针对我提出
"罗唆造成 coding 上的好处"
提出质疑与论点...
我个人是觉得... 有点茫然无措...
(茶与小点心持续补货中...)
: → yalight:我觉得有点类似 C++ 的 RTTI(real time type identify), 05/24 17:28
: → yalight:当然好的程式这些还是不够, 好的文件和注解也是必要的..XD 05/24 17:29
: → yalight:如果有说错 请见谅 m(_ _)m Ruby不熟...orz 05/24 17:30
: → yalight:阿 是 RTTI 是 runtime type identify...orz 05/24 17:57
--
侃侃长论鲜窒碍 网站:
http://www.psmonkey.idv.tw
众目睽睽无心颤 个人版:telnet://legend.twbbs.org
茕居少聊常人事
杀头容易告白难 欢迎参观 Java 版(@ptt.cc) \囧/
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 203.204.16.17
1F:推 yalight:那如果要 return 1, true, "3", new Integer(4), '5' 呢? 05/24 23:56
2F:→ yalight:发现 JDK1.5 会 autoboxing/autounboxing 不过基本上还是 05/25 00:04
3F:→ yalight:还是 new 一个物件出来把基础型别包进去, 所以像 int 会被 05/25 00:05
4F:→ yalight:包成 Integer, boolean 被包成 Boolean... 这样好吗? 05/25 00:06
5F:→ yalight:又是一种多此一举和浪费, Java 的 every thing is object 05/25 00:07
6F:→ yalight:唯一的例外就是基础型别, 所以 autoboxing 这样的功能也只 05/25 00:09
7F:→ yalight:能说是语法上的甜头, 靠 compiler 帮我们处理型别转换的问 05/25 00:09
8F:→ yalight:题, 然後我说的不能放任意的物件是假设靠泛型的机制帮我们 05/25 00:10
9F:→ yalight:自动转型的情况, 我想 Vector<Object> 这样的泛型是没啥功 05/25 00:13
10F:→ yalight:用的, 因此如果要让泛型发挥功用型别也就跟着受限... 05/25 00:14
11F:→ yalight:当然啦~ 强型别语言也有很多优点, Java 也是个很好的语言, 05/25 00:21
12F:→ yalight:但是 Ruby 也提供了另一种思维模式, 各适其所罗 XD 05/25 00:22