第一個(gè)軟件是在20世紀(jì)40年代用二進(jìn)制代碼編寫的,因此根據(jù)一個(gè)人的觀點(diǎn),這些程序可能是源代碼的初始樣本 。組織源代碼即使是沒有編程背景的人也可以閱讀上面的C編程源代碼,并了解該程序的目標(biāo)是打印“HelloWorld”字樣 。源代碼是程序員創(chuàng)建的計(jì)算機(jī)程序的基本組件 。
源碼是什么?
源代碼是程序員創(chuàng)建的計(jì)算機(jī)程序的基本組件 。它可以被人類閱讀和理解 。例如,當(dāng)程序員在Windows記事本中鍵入一系列C語言語句并將序列保存為文本文件時(shí),該文本文件被稱為包含源代碼 。源代碼和目標(biāo)代碼有時(shí)被稱為編譯的計(jì)算機(jī)程序的“之前”和“之后”版本 。對(duì)于腳本 (非編譯或解釋)程序語言(如JavaScript),術(shù)語源代碼和目標(biāo)代碼不適用,因?yàn)橹挥幸环N形式的代碼 。
程序員可以使用文本編輯器,可視化編程工具或集成開發(fā)環(huán)境來創(chuàng)建源代碼 。在大型程序開發(fā)環(huán)境中,通常有管理系統(tǒng)幫助程序員分離和跟蹤源代碼文件的不同狀態(tài)和級(jí)別 。許可源代碼源代碼可以是專有的或開放的,許可協(xié)議通常反映了這種區(qū)別 。例如,當(dāng)用戶安裝像Microsoft Office這樣的軟件套件時(shí),源代碼是專有的,并且Microsoft僅允許客戶訪問軟件的已編譯可執(zhí)行文件以及各種可執(zhí)行文件調(diào)用程序功能所需的相關(guān)庫文件 。
相比之下,當(dāng)用戶安裝Apache OpenOffice時(shí),可以下載和修改其開源軟件代碼 。通常,Microsoft等專有軟件供應(yīng)商不會(huì)與客戶共享源代碼,原因有兩個(gè):保護(hù)知識(shí)產(chǎn)權(quán)并防止客戶以可能破壞程序或使其更容易受到攻擊的方式更改源代碼 。專有軟件許可證通常禁止任何發(fā)現(xiàn)或修改源代碼的嘗試 。另一方面,開源軟件的設(shè)計(jì)理念是應(yīng)該提供源代碼,因?yàn)樵S多致力于增強(qiáng)軟件的開發(fā)人員的協(xié)作努力可能有助于使其更加健壯和安全 。
用戶可以在公共許可證下自由獲取開源代碼,例如GNU通用公共許可證。源代碼的目的除了為軟件創(chuàng)建提供基礎(chǔ)之外,源代碼還有其他重要用途 。例如,如果需要,能夠訪問源代碼的熟練用戶可以更容易地定制軟件安裝 。同時(shí),其他開發(fā)人員可以使用源代碼為其他操作平臺(tái)創(chuàng)建類似的程序 - 這項(xiàng)任務(wù)在沒有編碼指令的情況下會(huì)更加棘手 。
訪問源代碼還允許程序員通過共享代碼用于學(xué)習(xí)目的或通過將其部分回收用于其他應(yīng)用程序來為其社區(qū)做出貢獻(xiàn) 。組織源代碼即使是沒有編程背景的人也可以閱讀上面的C編程源代碼,并了解該程序的目標(biāo)是打印“Hello World”字樣 。但是,為了執(zhí)行這些指令,必須首先將此源代碼翻譯成計(jì)算機(jī)處理器可以理解的機(jī)器語言 ; 這是一個(gè)稱為編譯器的特殊解釋程序的工作 - 在本例中是一個(gè)C編譯器 。
程序員編譯源代碼后,包含結(jié)果輸出的文件稱為目標(biāo)代碼 。目標(biāo)代碼主要由數(shù)字1和零組成,不能被人類輕易閱讀或理解 。然后可以“鏈接”目標(biāo)代碼以創(chuàng)建運(yùn)行以執(zhí)行特定程序功能的可執(zhí)行文件。源代碼管理系統(tǒng)可以幫助程序員更好地協(xié)作開發(fā)源代碼; 例如,防止一個(gè)編碼人員無意中覆蓋另一個(gè)人的工作 。源代碼的歷史確定源代碼的歷史起點(diǎn)是一種主觀的 - 難以捉摸的 - 練習(xí) 。
第一個(gè)軟件是在20世紀(jì)40年代用二進(jìn)制代碼編寫的,因此根據(jù)一個(gè)人的觀點(diǎn),這些程序可能是源代碼的初始樣本 。我們今天認(rèn)識(shí)到的最早的源代碼示例之一是由計(jì)算機(jī)科學(xué)的早期先驅(qū)Tom Kilburn編寫的 。Kilburn在1948年創(chuàng)建了第一個(gè)在計(jì)算機(jī)內(nèi)存中以電子方式存儲(chǔ)的成功數(shù)字程序(該軟件解決了數(shù)學(xué)方程式) 。
【華為鴻蒙是什么,源碼是什么】
推薦閱讀
- 華為p7如何一鍵解鎖root權(quán)限,相似配置為何性能迥異
- 華為p7 l07 root教程,完美ROOT教程。
- root卸載軟件魅族,但是Root到底是什么
- 手機(jī)root的常見問題,關(guān)鍵字
- 了解你的群暉NAS,關(guān)鍵字
- 這是什么以及為何重要 移動(dòng)辦公云業(yè)務(wù)是什么
- 魅族最新款手機(jī)是什么樣的 1688批發(fā)網(wǎng)
- 華為最新款適合女性的手機(jī) 更適合女性用戶
- 華為賣得最好的手機(jī)是哪一款 目前銷量最好的手機(jī)排名
- 華為手機(jī)兩千元左右哪個(gè)好 兩千元左右手機(jī)哪個(gè)最好
