摩爾定律失效了,CPU不能再快下去了。最痛苦的應該是程序員。
2000年左右的那些時間真是程序員的黃金時代。每半年CPU的速度就翻番,半年前效率還那么不現實的算法,半年后就能應用了。
那些年sun以為java可以統治移動設備,因為每半年速度翻番的cpu會讓大家不再在意那點虛擬機的消耗。但是現實是那么殘酷,如今cpu頻率止步不前,java在移動設備上的效率依然被人詬病,而sun已經成了歷史。
硬件廠商們無法再在速度上做文章,轉向了多核。
但程序還得繼續寫下去,用戶需要越來越高的pv,越來越多的數據,越來越炫的界面。但是cpu不能再快下去了,程序員之能轉而求助于多核心,協同處理。而異步程序的處理只會讓編程更加困難,項目更加復雜。
以前只會c\c++,以為它們足夠高效,足夠復雜,足以構建出整個世界。但是真正做項目以后才發現靜態語言、OO在現實的復雜度面前是多么的蒼白無力。
直到看到了lua,python這樣的動態語言,才發現原來銀彈是有的,只不過太慢。
OO不過是晚綁定和高效率的不得已妥協,妥協的結果是高耦合的繼承體系。在一個怪物的繼承體系中增添一個會飛的怪物,你就需要在整個體系中加上一個virtual bool CanFly()。這太蹩腳了。
真正理想的泛型是徹底的晚綁定:
obj = new Object; obj.life = 100 if(obj.life) print "obj is a creature." obj.fly = fly() if(obj.life && obj.fly()) print "obj is a bird."
這樣的語言里根本就不需要OO。但是徹底的玩綁定不夠快啊,python不夠,C#的反射也不夠。所以我們還是得OO,還是得delete。
為什么沒有銀彈?因為CPU不能再快下去了。量子計算或者別的什么足夠快的東西快來拯救程序員們吧!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
