※ 引述《vity (逍遙盃-佛得)》之銘言:
: ※ 引述《pandaforme (建 建)》之銘言:
: : 事情這樣的
: : 因為公司的主管很排斥物件導向概念和新的技術
: : 認為程式擁有太多class,必須要一直new產生一個新的instance,會花費很多效能!?
: : 引用structs架構也會拖慢效能!?
: : 所以公司的程式充斥一堆static的function和自己硬幹的詭異方法...
: : 主要的理由是因為公司的程式是裝在一台伺服器,當作產品賣出
: : 為了節約硬體資源,所以要避免過多的物件導向概念...
: : 想請問一下各位前輩事實真的如此嗎?
: : 假如是以前的電腦還有可能有這樣的問題發生,但是現在電腦都那麼快
: : 頻繁的產生instance會影響到系統效能嗎?
: : 而且沒有物件導向概念的程式,真的會看到吐血,所有東西都混雜在一起!
: : 之後,維護起來一定是個大災難,連基本的分層概念都沒有...
: : 麻煩有相關經驗的前輩,提供一下相關資訊,
: : 真的將系統物件導向化會導致系統效能下降嗎?
: : 謝謝~
: 個人想法...
: static 就一直佔用記憶體 [, , , ,, ,}
: new的話 還沒使用前還沒佔用 要使用時就佔用
: 似乎要用才佔用記憶體是比較有效率喔~~
: 但主管的話...才是至上 事實只要知道就好...
要也是定義效能差是指哪個面相的差
以CS的發展狀況, 演化快慢都是memory > processor > software
所以用大量cache和多核或pipeline一向是從以前到現在的做法
用static雖然佔空間,但是對常用的constant絕對可以省掉向OS要記憶體的時間
(這就是對軟體而言,用空間換時間)
更不要說JAVA還要透過JVM去向OS要....
另外物件導向是一種語言型態, 和系統效能無關
主要是看SDK是啥
要不然TCL也是functional language, 它跑起來會有C++快?
(雖然這個比喻有點太超過就是.....)
再者, 主管的話雖然不用盡信, 但是最好去查一下, 全盤了解後你會受益不少
並不是每個主管都是技術白痴, 事實上, 真正在業界主管99%都比你強
但是並不會拿出來講, 只有特別一兩趴很弱的被拿來放大, 然後就以為全業界90%以
上的主管都是腦包....~_~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 124.8.64.84