系統(tǒng)開發(fā) 既然開發(fā)國產(chǎn)操作系統(tǒng)最大的弊端是應(yīng)用生態(tài),那為何不開發(fā)一款能直接運(yùn)行exe程序的操作系統(tǒng)?
既然開發(fā)國產(chǎn)操作系統(tǒng)最大的弊端是應(yīng)用生態(tài),那為何不開發(fā)一款能直接運(yùn)行exe程序的操作系統(tǒng)?因?yàn)槲易霾坏?。對于國?nèi)的軟件公司來說,困難在哪里?當(dāng)微軟開發(fā)早期的操作系統(tǒng)DOS(windows的前身)時,有
既然開發(fā)國產(chǎn)操作系統(tǒng)最大的弊端是應(yīng)用生態(tài),那為何不開發(fā)一款能直接運(yùn)行exe程序的操作系統(tǒng)?
因?yàn)槲易霾坏健?/p>
對于國內(nèi)的軟件公司來說,困難在哪里?
當(dāng)微軟開發(fā)早期的操作系統(tǒng)DOS(windows的前身)時,有許多類似DOS的操作系統(tǒng)(如dr DOS),它們也可以運(yùn)行exe程序,甚至比Microsoft DOS提供更多的功能(如快速命令輸入)。
那是因?yàn)楫?dāng)時的DOS操作系統(tǒng)非常簡單和粗糙。商業(yè)開發(fā)公司很容易充分實(shí)現(xiàn)其職能。
但是現(xiàn)在windows操作系統(tǒng)已經(jīng)是一個擁有數(shù)十億行代碼的“巨型”操作系統(tǒng)。頂級程序員可能需要10年或更長時間才能完全實(shí)現(xiàn)他們已經(jīng)實(shí)現(xiàn)的功能,達(dá)到10萬人的水平。
粗略計(jì)算,按每人每年100萬元的年薪計(jì)算,大約需要1萬億元。
目前,沒有一家企業(yè)能夠支付如此高的投資成本。
而且,即使我們花上萬億元人民幣來實(shí)現(xiàn)windows的功能,微軟在過去的十年里也沒有閑著,與現(xiàn)實(shí)的差距可能還需要萬億元人民幣來填補(bǔ)。
有人會說,為什么要實(shí)現(xiàn)windows的所有功能?只是實(shí)現(xiàn)它的一部分。不需要這么多年,這么多人,這么多錢。
不幸的是,很難找到一個只實(shí)現(xiàn)部分功能的解決方案。不同的exe需要不同的操作系統(tǒng)函數(shù),不同的操作系統(tǒng)函數(shù)可能相互調(diào)用。
既然一個企業(yè)承受不起復(fù)制windows操作系統(tǒng)的成本,那我們能不能打出“兩彈一星”的模式,集中國力不惜一切代價去實(shí)現(xiàn)呢?畢竟,1萬億元只占中國GDP的十分之一。
不幸的是,這仍然是不可行的。
首先,windows包含數(shù)以萬計(jì)的專利。如果我們想完全繞過這些專利保護(hù),那將比登月更困難。
其次,大量的exe開發(fā)者也是歐美公司。他們可能不支持這種完全復(fù)制的windows操作系統(tǒng)。
最后,現(xiàn)實(shí)是,即使來自全國各地的架構(gòu)師和程序員都很集中,也很難在十年內(nèi)完全復(fù)制現(xiàn)有的windows系統(tǒng)。
如果華為的鴻蒙系統(tǒng)推出成功,那么程序員是不是也要重新學(xué)習(xí)適應(yīng)鴻蒙系統(tǒng)的開發(fā)語言?
首先,它與使用哪種語言開發(fā)應(yīng)用程序的系統(tǒng)關(guān)系不大。一種語言開發(fā)的應(yīng)用程序能否在某一系統(tǒng)上運(yùn)行,主要取決于某一語言的編譯器能否編譯出能夠在某一系統(tǒng)上運(yùn)行的程序。例如,Java編譯器可以將Java代碼編譯成可以在所有系統(tǒng)平臺上運(yùn)行的程序!有些語言不能編譯所有系統(tǒng)都能運(yùn)行的程序。例如,C#最初只能在windows上運(yùn)行,而Objective-C基本上只能在蘋果系統(tǒng)上運(yùn)行!為了與Java競爭,這些語言開始支持各種平臺
!所以在什么系統(tǒng)上使用什么語言開發(fā)應(yīng)用程序并不重要
!因?yàn)橹灰南到y(tǒng)使用更多的人,各種語言自然會適應(yīng)系統(tǒng),以吸引使用系統(tǒng)的用戶!同樣,越來越多的人使用某種語言。為了吸引某種語言的用戶,各種系統(tǒng)也會支持各種語言在自己的平臺上運(yùn)行。比如微軟和蘋果以前是互不兼容的,但后來為了吸引對方的用戶,不僅軟件是互不兼容的,硬件也是互不兼容的系統(tǒng)
!現(xiàn)在回到問題上來
!紅盟系統(tǒng)上市后,如果用戶多,各種語言都會編譯程序來適應(yīng)紅盟系統(tǒng),程序員不用擔(dān)心學(xué)習(xí)其他語言,只要繼續(xù)使用自己喜歡的語言就行了
!當(dāng)然,如果洪孟剛剛上市,就會受到各種勢力的壓制。為了生存,必須發(fā)展一種語言來培育自己的生態(tài)!因?yàn)锳ndroid系統(tǒng)就是最好的例子。一開始,它沒有自己的語言,但是占據(jù)了Java開發(fā)人員的大腿。因此,它仍在與甲骨文打版權(quán)官司
!所以對于華為來說,最好開發(fā)自己的語言!防止卡在脖子上
!對于該程序,您可以使用任何您喜歡的語言,只要它與鴻蒙系統(tǒng)兼容
!所以我的觀點(diǎn)是華為應(yīng)該發(fā)展自己的語言,我們的項(xiàng)目應(yīng)該多學(xué)一門語言
!但是對于程序員來說,學(xué)習(xí)多種語言是一種小小的樂趣!因?yàn)槌绦騿T可以在一天內(nèi)學(xué)會另一種計(jì)算機(jī)語言!所以程序員使用什么語言取決于個人喜好
!好了,答案就這些了。歡迎留言討論
手機(jī)的操作系統(tǒng)很難開發(fā)嗎?
從上世紀(jì)90年代DOS的流行到現(xiàn)在的windows、Linux、OS、RTOS等,都沒有被中國人打上烙印。當(dāng)這個系統(tǒng)啟動時,我們看不到中國人的蹤跡。手機(jī)和PC很相似,如果你能很好地利用別人的系統(tǒng),你會燒得很香。
程序員開發(fā)程序bug比較多怎么辦?
首先,我們需要找出原因是什么,不管是程序員自己的問題還是架構(gòu)問題還是需求問題,但歸根結(jié)底,這確實(shí)是變化。