怎么開發(fā)一個軟件 怎樣開發(fā)一款軟件?
怎樣開發(fā)一款軟件?謝謝你的邀請??破諄砹?。軟件種類太多了。每種軟件在每個公司都有不同的開發(fā)方法,但是開發(fā)過程是不同的。要開發(fā)軟件,一般不要一想到開發(fā)系統(tǒng)就開始敲代碼。畢竟,你需要弄清楚你需要做什么軟件
怎樣開發(fā)一款軟件?
謝謝你的邀請。科普來了。軟件種類太多了。每種軟件在每個公司都有不同的開發(fā)方法,但是開發(fā)過程是不同的。
要開發(fā)軟件,一般不要一想到開發(fā)系統(tǒng)就開始敲代碼。畢竟,你需要弄清楚你需要做什么軟件,軟件的用戶是什么樣的,軟件需要什么功能,軟件需要什么規(guī)模。經(jīng)過一定的可行性分析和研究,進行了軟件開發(fā)步驟。讓我們以企業(yè)web系統(tǒng)的開發(fā)為例:
第一步通常是進行需求分析。面向企業(yè)的軟件一般需要與甲方確認需求,需要一到兩個月或更長時間。
第二步是進行原型設(shè)計,設(shè)計出符合要求的軟件。有些公司可能不會直接依賴草圖。
第三步,詳細設(shè)計,這是非常重要的一步,數(shù)據(jù)庫設(shè)計,界面設(shè)計,開發(fā)人員會根據(jù)詳細設(shè)計進行編程。
第四步是開發(fā)和測試。你知道,程序開始寫錯誤了。事實上,測試和修復(fù)bug是齊頭并進的。通常是在測試之后開發(fā)下一個任務(wù),用bug修復(fù)bug,然后在沒有bug的情況下開發(fā)下一個任務(wù)。
第五步是迭代。這些要求不是一下子就確定的。需求中會有新的需求或變化,因此需要重復(fù)上述過程。
第六步,當(dāng)軟件需求完成時,測試沒有問題?;旧?,您可以進入用戶測試階段,然后進入生產(chǎn)環(huán)境。這是軟件開發(fā)的終結(jié)。
既然開發(fā)國產(chǎn)操作系統(tǒng)最大的弊端是應(yīng)用生態(tài),那為何不開發(fā)一款能直接運行exe程序的操作系統(tǒng)?
因為我做不到。
對于國內(nèi)的軟件公司來說,困難在哪里?
當(dāng)微軟開發(fā)早期的操作系統(tǒng)DOS(windows的前身)時,有許多類似DOS的操作系統(tǒng)(如dr DOS),它們也可以運行exe程序,甚至比Microsoft DOS提供更多的功能(如快速命令輸入)。
那是因為當(dāng)時的DOS操作系統(tǒng)非常簡單和粗糙。商業(yè)開發(fā)公司很容易充分實現(xiàn)其職能。
但是現(xiàn)在windows操作系統(tǒng)已經(jīng)是一個擁有數(shù)十億行代碼的“巨型”操作系統(tǒng)。頂級程序員可能需要10年或更長時間才能完全實現(xiàn)他們已經(jīng)實現(xiàn)的功能,達到10萬人的水平。
粗略計算,按每人每年100萬元的年薪計算,大約需要1萬億元。
目前,沒有一家企業(yè)能夠支付如此高的投資成本。
而且,即使我們花上萬億元人民幣來實現(xiàn)windows的功能,微軟在過去的十年里也沒有閑著,與現(xiàn)實的差距可能還需要萬億元人民幣來填補。
有人會說,為什么要實現(xiàn)windows的所有功能?只是實現(xiàn)它的一部分。不需要這么多年,這么多人,這么多錢。
不幸的是,很難找到一個只實現(xiàn)部分功能的解決方案。不同的exe需要不同的操作系統(tǒng)函數(shù),不同的操作系統(tǒng)函數(shù)可能相互調(diào)用。
既然一個企業(yè)承受不起復(fù)制windows操作系統(tǒng)的成本,那我們能不能打出“兩彈一星”的模式,集中國力不惜一切代價去實現(xiàn)呢?畢竟,1萬億元只占中國GDP的十分之一。
不幸的是,這仍然是不可行的。
首先,windows包含數(shù)以萬計的專利。如果我們想完全繞過這些專利保護,那將比登月更困難。
其次,大量的exe開發(fā)者也是歐美公司。他們可能不支持這種完全復(fù)制的windows操作系統(tǒng)。
最后,現(xiàn)實是,即使來自全國各地的架構(gòu)師和程序員都很集中,也很難在十年內(nèi)完全復(fù)制現(xiàn)有的windows系統(tǒng)。