我覺得我的大腦死了,但我認爲有一種簡單的方法來使用Ruby中的'Modules'來爲我自己的類創建一個名稱空間 - 或者我是否夢寐以求?Ruby:我想要一個名爲'Thread'的類 - 但已經有一個... Module?
我後是Ruby相當於把我的班DEFS在包的Java的方式...
還是我只是創造一個新的名字爲我的對象???
我覺得我的大腦死了,但我認爲有一種簡單的方法來使用Ruby中的'Modules'來爲我自己的類創建一個名稱空間 - 或者我是否夢寐以求?Ruby:我想要一個名爲'Thread'的類 - 但已經有一個... Module?
我後是Ruby相當於把我的班DEFS在包的Java的方式...
還是我只是創造一個新的名字爲我的對象???
module ThreadReader
class Thread
...
end
end
t=ThreadReader::Thread.new(...
=> #<ThreadReader::Thread:...
衛生署...是啊,腦死亡 - 我試圖用「模塊」(大寫「M」),而不是「模塊」 ......
好Modules behave this way,你會知道的。
正如我相信你也知道,在創建具有與其他常用類相同名稱的類時,可理解和可維護的代碼存在一定的危險,因此您可能想要使用不同的名稱你改變了的命名空間。
你是對的我知道 - 但很難想到有意義但短名稱有時:) – monojohnny 2010-01-05 20:53:48
我曾經有這個問題。自從我讀完_Code Complete_之後,我發現我開始使用更長,但更清晰的名稱。我輸入的速度足夠快,再多幾個字符也不會造成任何傷害。當然ThreadReader :: Thread無論如何可能比ReadableThread更長... – glenatron 2010-01-05 21:27:20
在某些時候會檢查代碼完成 - 歡呼。實際上,簡短有意義的名稱並不是與打字速度有關 - 它更多地與代碼縮進有關。 我把你的觀點與ThreadReader :: Thread一樣長:)儘管當然有一些策略'包括'幫助 - 但是當然由於真正的'線程'對象,代碼遭受了可能的問題。 。) – monojohnny 2010-01-07 14:18:35