Delphi的沒落有三個原因(比較貼切)


Delphi的沒落有三個原因:
1,Object pascal並沒有像C/C++那樣成為業內標准。

如果你使用C或C++寫程序,可以在任何地方進行編譯,例如Windows、Linux、手機,甚至是單片機上都可以使用C寫程序。

沒有成為標准的后果就是跨平台,以及影響第三方編譯器的出現。Delphi曾經有一個Linux版本叫做Klinx但是已經好多年不再更新了。

所以這么多年來Delphi只有Borland一家公司苦苦支撐。

2,人才流失,與內部決策失誤。
Delphi之父Anders Hejlsberg離開Borland去了微軟,導致Delphi的編譯器有三年的時間無人敢動,因為Anders Hejlsberg完全使用匯編實現的編譯器,無人能夠看懂。

Anders Hejlsberg去了微軟之后推出了.NET框架,主打語言是C#,無論從類庫命名還是代碼風格都與Delphi很像,C#語法接近C,又不兼容C。接近C的好處是C系的程序員(C/C++/Java/PHP/)很容易上手,不兼容C的好處是沒有歷史負擔,語法語義可以做的很優美。

此外決策層,頻繁出現失誤,有很長一段時間Delphi盲目的去跟隨.NET,甚至IDE都改用.NET編寫,還推出了VCL for .NET,結果卻是丟掉了Win32原生開發,而重新編寫的IDE又存在大量BUG,白白耗費大量時間與財力,而技術方面,無論是VCL還是編譯器、甚至IDE從Delphi7以后就停步不前。

3,市場轉變

開發市場現在更注重B/S結構的應用,桌面應用正在大幅減少,Delphi顯然不是一個理想的WEB開發語言。

在桌面市場,解釋執行的字節碼正在成為主流,像Java、C#、Python、Ruby都是解釋類語言。解釋執行不容易發生內存泄露與內存錯誤,因為內存不再需要程序員去手動釋放,程序編寫更簡單,語法也更加靈活,雖然效率可能會略低,但當前的趨勢就是用CPU的時間去換取更昂貴的程序員時間,因為大部分程序對效率的要求並不高。其中C#的類庫命名很接近Delphi,Delphi程序員轉入最為C#比較容易。

使用Delphi編寫一些項目,你可能需要幾位比較高級的程序員才能勝任,而使用Java或C#只需要更少和更加普通的程序員。項目完成后Java或C#由於解釋執行的原因會更加健壯,因為大部分問題都可以在編譯期發現和解決。而Delphi編寫的應用則需要較長的Debug時間,項目進度變慢。

當前的大部分項目,健壯性、開發周期、維護難度遠遠要比最終執行效率重要100倍。所以企業更多的是在招聘Java與C# 程序員,所以培訓機構也在培養Java與C#程序員。現在根本無法見到一個像樣的Delphi的培訓機構,企業在招聘Delphi程序員的時候往往只是為了維護老舊的項目。

這個時候如果有新手問“我應該學習那種語言?”,“那種語言更容易就業?”。此類問題的答案是顯而易見的。這對Delphi來說是一個惡性循環。

對於VB的沒落的原因我沒有仔細考慮過,因為我只用了30天的VB就把他扔掉了,他太簡陋,語法不嚴謹“Else if”和“ElseIf”具有不同的語義,很容易寫錯。


作者:庄園
鏈接:https://www.zhihu.com/question/19622196/answer/12493867
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
--------------------------------------------------------------------------------------------
認同你上述答案,但應該還有非常重要的一條:Borland 靠 Delphi 生活,而.net或java的擁有公司則沒有這個壓力。因此,我們國內的盜版環境對Borland是致命的傷害!若Borland不嚴打盜版,則收入有限而難以加大研發投入,以及加大文檔支持與宣傳力度;而嚴打盜版及制訂高價,那么軟件公司是能不用就不用,再加上你說的那幾條,當然是雪上加霜了。
--------------------------------------------------------------------------------------------
還做了沒有任何市場的Kylix
--------------------------------------------------------------------------------------------
王軍 ,移動互聯網/大數據
Martin Wang王歌Colliot 贊同
vb和delphi盛行的時候,正是windows下PC軟件開發的黃金時代;后來互聯網時代,變為java php .net等流行了;現在是移動互聯網時代,流行的是java和object C
 
知乎用戶,觀天讀史看天下
韜神 贊同
我認為Delphi的沒落,主要有兩個原因:
1、Delphi的發展沒有跟上時代的要求。Delphi的成果緣於能夠高效支持C/S開發,大量組件尤其是數據庫組件降低了開發C/S結構中的數據庫開發難度,提高效率。但是由於固守傳統,錯失B/S開發的機遇。李維在《Borland傳奇》中講過,Delphi在早期版本中(印象里是5.0)曾經有支持B/S開發的動議,但是被Borland公司高層否定了,未能有效利用C/S時代的優勢,錯失了歷史機遇。等后來(7.0)加上支持B/S開發組件時候,技術上已經大大落后於時代了,成了非主流技術。除了B/S開發之外,即便是Windows底層開發Delphi也無法支持,更不必說嵌入式系統開發了。
2、Borland公司發展失誤無法提供有力支持。Borland公司除了開發工具之外沒有其他盈利產品,而開發工具產品在與Microsoft競爭中又逐漸處於劣勢,拿不出足夠資源來支持Delphi的發展。最后只能將開發工具賣給 Embarcader。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM