溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

分享優(yōu)秀開源的代碼

發(fā)布時間:2021-10-26 10:09:50 來源:億速云 閱讀:169 作者:iii 欄目:web開發(fā)

本篇內(nèi)容介紹了“分享優(yōu)秀開源的代碼”的有關(guān)知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領(lǐng)大家學(xué)習(xí)一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

阿波羅11號制導(dǎo)計劃

阿波羅11號是第一個成功的使人類登月的任務(wù)。 只有4 KB物理內(nèi)存的阿波羅制導(dǎo)計算機(AGC)為控制航天器提供了支持。  AGC的軟件以AGC匯編語言編寫,并存儲在稱為繩索存儲器的特殊只讀存儲器中。 一段時間之前,已掃描了源代碼的掃描副本,這些副本已上傳到Internet。  此后,有人將幾個模塊轉(zhuǎn)換為文本文件,然后將其上傳到Github存儲庫。

分享優(yōu)秀開源的代碼

阿波羅(Apollo)工程團隊付出了巨大的努力,通過用匯編語言編寫了許多代碼行,以取得如此驚人的成就。 在1960年代,編程比現(xiàn)在更加困難。  因為在那時,編程語言的抽象級別較低。 此外,程序員必須編寫超級優(yōu)化的代碼才能有效地使用硬件。

雷神之錘III競技場

Quake III Arena是由id Software開發(fā)的第一人稱射擊游戲。 它是在90年代開發(fā)的,當(dāng)時3D游戲行業(yè)剛剛開始使用id Tech  3游戲引擎進行開發(fā)。 當(dāng)時,硬件資源非常有限。 因此,游戲開發(fā)人員必須編寫精心優(yōu)化的代碼以呈現(xiàn)圖形元素。  許多游戲編程計算都需要向量歸一化概念,這提出了平方根反比計算的要求。 如前所述,開發(fā)人員必須為這些與計算機圖形學(xué)相關(guān)的工作選擇最有效的算法。 因此,Quake  III Arena團隊使用一種非常聰明的方法進行快速反平方根計算,如下所示,使用位級計算。

分享優(yōu)秀開源的代碼

這段代碼中使用的優(yōu)化水平以及為在90年代實現(xiàn)如此出色的計算機游戲而編寫的整個代碼顯然令人驚訝。  如今,游戲開發(fā)通常不處理這一級別的計算,因為物理功能已經(jīng)由游戲引擎實現(xiàn)。

GNU編譯器集合

C編程語言就像現(xiàn)代計算之父一樣,因為它通過提供良好的人類可讀的抽象級別而與硬件之間的距離非常近。 確實,GNU C編譯器已啟動。  換句話說,它是使用編譯器自舉概念以C編程語言編寫的。  我注意到我從Github上的GNU編譯器集合的代碼庫中看到了最長的C源文件(可以有比這更長的C源文件,但這是我看到的)。

分享優(yōu)秀開源的代碼

Google Chrome

流行的Web瀏覽器(例如Google Chrome,Microsoft  Edge和Opera)基于Chromium開源項目,該項目具有兩個主要依賴項:Blink呈現(xiàn)引擎(是由Webkit團隊開發(fā)的WebCore庫的一個分支),以及v8  JavaScript引擎, 由Chromium項目團隊開發(fā)。 毫無疑問,Chromium代碼庫非常大,并且具有許多第三方模塊,例如gRPC和Skia。  但是,Chromium團隊以很好的方式構(gòu)造了所有組件。 他們明智地分離了用戶界面相關(guān)的邏輯和內(nèi)部功能邏輯,以在整個項目中實現(xiàn)非常好的可維護性因素。

分享優(yōu)秀開源的代碼

此外,此代碼庫還包含Chromium Android和iOS應(yīng)用程序的源代碼。 構(gòu)建大規(guī)模的跨平臺應(yīng)用程序可能會有些復(fù)雜。  但是,Chromium對Linux,Windows和Mac的平臺特定代碼有令人印象深刻的分離。

Git

如今,Git幫助幾乎每個軟件開發(fā)團隊管理編碼歷史和版本。 Git最初由Linux內(nèi)核的創(chuàng)始人Linus Torvalds制作。  確實,Git的代碼庫包含一項神奇的工作,這是Gitk的源文件。 Gitk是一個GUI應(yīng)用程序,可以幫助我們直觀地瀏覽提交。  我們可以使用以下CLI命令來檢查兩次提交之間的差異。

$ git diff <commit hash> <commit hash>

但是,由于它是視覺工具,因此Gitk允許我們這么快地看到修改。 Gitk的整個源代碼只是一個文件。 它是使用Tk  UI工具包(是Tcl的擴展)以Tcl腳本語言編寫的。  他們通過僅用一個源文件實現(xiàn)整個GUI應(yīng)用程序,也通過選擇動態(tài)編程語言以加快GUI應(yīng)用程序開發(fā)來完成了出色的工作。

分享優(yōu)秀開源的代碼

“分享優(yōu)秀開源的代碼”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關(guān)的知識可以關(guān)注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI