→ james732:物件導向不代表一定會頻繁的new吧? 05/20 22:05
→ james732:要有好維護的程式也不是非要物件導向不可 05/20 22:05
→ francej:動態記憶體配置(new)的確是java會比較慢的主因之一 05/20 22:32
→ francej:電腦很快沒錯. 但程式也變得更複雜. Java發展那麼多年了 05/20 22:34
→ francej:但比較大的application(比如說office, photoshop, matlab 05/20 22:35
→ francej:,maya,..電腦遊戲)還是很少"純"用Java寫的 05/20 22:36
→ francej:也許你主管是寫OS kernel出身的吧...呵呵 OO的確有它的 05/20 22:37
→ francej:overhead..所以不管是Windows, Linux, or Android核心都 05/20 22:38
→ francej:還是用純c 05/20 22:38
推 plover:Agobot is a multi-threaded and mostly OO program. 05/20 22:43
→ Lordaeron:worm 跟OO vs performance 有何關係? 05/20 22:45
推 plover:物件導向不見得拖慢效能。 05/20 22:50
推 tvbic:效能不是重點 你主管想怎麼做才是重點 05/20 22:52
推 plover:讚 05/20 22:54
→ pandaforme:F大 你的想法就我主管的想法 覺得系統執行中 05/20 23:22
→ pandaforme:一直不斷的在new instance是很耗資源 05/20 23:23
推 omnl:我認同francej說的 OO的確會比較耗資源 但是哪是寫embedded 05/20 23:27
→ omnl:時深刻的感受 至於伺服器上 應該軟體架構影響效能比語言還大 05/20 23:30
→ choufeng:要看需求 看是開發什麼系統 未必什麼都適合用Java 05/20 23:45
→ choufeng:用Java也未必就慢 OOP要寫得好 reuse和design patter是關 05/20 23:46
→ choufeng:鍵 05/20 23:46
推 choufeng:不過~! 我是想要問你主管是用Java開發然後用一堆static 05/20 23:49
→ choufeng:方法嗎? 05/20 23:49
→ francej:你有興趣可以去trace一下jvm. 看你new一個物件他背後會 05/21 00:14
→ francej:要幫你做多少事. 就知道overhead在哪裡了... 05/21 00:15
→ TonyQ:你可以用純c寫website 看看...我看你怎麼刻http XD 05/21 00:15
→ TonyQ:這年頭寫website 除了早期的cgi 以外,已經很少人用c寫了 05/21 00:16
→ TonyQ:因為web的瓶頸不在執行/回應效能,而在傳輸時間。 05/21 00:16
→ TonyQ:另一個是記憶體,這個就比較難講,這牽扯的是你有多少資料要 05/21 00:16
→ TonyQ:存放在畫面上記憶體上跟預期的 concurrent user 數, 05/21 00:17
→ TonyQ:但是物件導向跟「多」instances之間還有很遠的差異, 05/21 00:18
→ TonyQ:正常設計的物件導向來講應該也只是「正常」的數量而已... 05/21 00:18
→ TonyQ:至於說用struts 會慢之類的,其實根據個人經驗要嘛就是慢在 05/21 00:18
→ TonyQ:沒搞懂網頁怎麼讀取,被js跟一堆有的沒的卡住,不是真的慢 05/21 00:18
→ TonyQ:另一個就是被db 讀取卡住,有時會有排db pool 之類的狀況; 05/21 00:19
→ TonyQ:最後就是沒意義又肥的intercepter/filter插太多... 05/21 00:19
→ TonyQ:只要有搞懂自己在幹嘛,web 專案沒這麼恐怖... 05/21 00:22
→ hanbz:google就算硬體再強 都會想要爭取search time再減0.1秒XD 05/21 00:28
→ francej:的確是看應用. 有的應用Java,甚至就new一堆東西也無訪 05/21 00:31
→ askeing:主要看需求吧!如果設計有問題、混在一團、維護大爆炸… 05/21 00:32
→ francej:話說android上的瀏覽器引擎webkit也還是用c/c++寫的 05/21 00:32
→ askeing:那對產品來說也不是好事,花費的人力、時間也都是成本… 05/21 00:32
→ askeing:而且好的設計架構似乎也不一定要物件導向 05/21 00:33
→ francej:一直很好奇說透過編譯器的優化, JIT的不斷進步,有沒有可能 05/21 00:33
→ francej:哪天像android上面的瀏覽器可以做到全部都用Java寫 05/21 00:33
→ TonyQ:適才適用吧~ 05/21 00:51
推 stosto:老闆不會 資深員工不會 當然就不希望你寫他們看不懂的東西 05/21 01:24
推 lovdkkkk:static 不見得差 看怎麼用 System.out 也是 static 啊 05/21 01:29
推 xva:應該是主管沒學過C++吧 超蝦的 跟我之前狀況頗像 05/21 03:23
→ rofellosx:買更好的伺服器絕對比改寫程式快 05/21 06:15
→ francej:如果只是ptt等級的服務. 的確在買一台伺服器問題就解決了 05/21 09:27
→ francej:如果是facebook等級的服務..那你得再買幾萬台伺服器吧 05/21 09:27
推 choufeng:應該這麼說吧~效能要求極為嚴苛的系統軟體,如:遊戲.繪圖 05/21 10:28
→ choufeng:肯定不適合用Java外 其它大部份的系統軟體應用,它的瓶頸 05/21 10:30
→ choufeng:不會在所謂的"Java效能"上 整體系統的規劃與架構將才會是 05/21 10:32
→ choufeng:最主要的議題 而不是在比較哪些程式語言快.哪些慢. 只會 05/21 10:33
→ choufeng:單就程式語言的快慢去衡量 恐怕太狹義與膚淺 05/21 10:34
→ francej:eclipse用起來還是比visual studio卡. 不知道是因為沒寫好 05/21 10:34
→ francej:還是因為java先天就是比較慢的關係 05/21 10:34
→ choufeng:如果真懂的人不會去說哪些工具語言絕對的好或不好 只會有 05/21 10:36
→ choufeng:適合與不適合 05/21 10:37
→ choufeng:francej:這當然就是因為Java本身透過JVM來執行 效率上一 05/21 10:40
→ choufeng:定沒比native要來的要好 這是肯定的 然後再者就是Java 05/21 10:40
→ choufeng:開發UI來講 本身就不是它的強項 這塊本來就會比較弱 05/21 10:41
→ choufeng:至於Eclipse是不是沒寫好感覺很肥大 就見人見志了 我個人 05/21 10:43
→ choufeng:是覺得它是有改進的空間 因為它真的有點慢@@ 05/21 10:43
推 edward13:好奇原po公司產品是什麼 難道客戶需求都不會改變嗎? 05/21 10:54
→ TonyQ:Eclipse 其實本身是沒啥問題的,它的performance核心多在 05/21 12:09
→ TonyQ:plug-in , 事實上以我的使用經驗 ,拿 mvs 跟eclipse 比我是 05/21 12:09
→ TonyQ:覺得蠻不可思議的。 05/21 12:09
→ TonyQ: *瓶頸 05/21 12:09
→ TonyQ:有機會再來聊聊Eclipse 為什麼有時會慢,這跟架構有關系。 05/21 12:10
→ iincho:是說有人習慣看到JVM就開槍吧XD, 這當然是最簡單的結論啦 05/21 12:17
→ iincho:VM肯定是比native code慢的,但是通常程式會慢和這關係不大 05/21 12:18
→ newstar2007:這是Java的原罪 太慢了... 05/22 03:58
推 kimkao:拿Visual Studio跟 Eclipse比真的有點不太合宜... 05/22 10:53
→ siko24s:根據我的印象,static區塊的物件或程式碼一開始就load進 05/25 11:17
→ siko24s:記憶體裡面了;我想這樣應該沒有比較省記憶體才是。 05/25 11:17
→ cupidwang:系統應該是在效能與維護間取得平衡才是,不然都是災難 05/30 12:13