成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

值得每個碼農去學習的優秀開源代碼

開發 前端
當我瀏覽Github存儲庫時,我注意到世界各地的開發人員已經完成了以下令人印象深刻的工作。

我通常會在有空的時候瀏覽Github存儲庫。 另外,當我開始使用新的計算機軟件,工具或實用程序時,我喜歡查看特定軟件的工作方式。 大多數時候,我看一下它的代碼庫,以了解事物如何與內部模塊和外部依賴項完全配合。

[[347935]]

幾年前,我正在檢查Python語言實現的源代碼。 此后,我注意到了幾個C源文件,并突然檢查了GNU C編譯器集合的實現。 我發現這個現代的C編譯器是用C本身編寫的。 學習事物的內部結構并進一步深入,可以為我們帶來驚人的感覺和豐富的知識。 過去的開發人員已經做出了巨大的努力,為現代開發人員創造了一個和平的世界。 但是,作為現代開發人員,我們應該感謝他們的出色工作。

當我瀏覽Github存儲庫時,我注意到世界各地的開發人員已經完成了以下令人印象深刻的工作。

阿波羅11號制導計劃

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

> Piece of code from the Lunar module of AGC, screenshot by the author

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

雷神之錘III競技場

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

> Fast inverse square root function in Quake III Arena, screenshot by the author

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

GNU編譯器集合

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

> GNU C Compiler's C parser source file has more than 20k lines, screenshot by the author

Google Chrome

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

> Well-organized abstract UI controls of Chromium, screenshot by the author

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

Git

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

  1. $ git diff <commit hash> <commit hash> 

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

> Gitk was implemented as a single source file with around 12k lines, screenshot by the author

 

責任編輯:趙寧寧 來源: 今日頭條
相關推薦

2015-01-12 10:06:02

在線客服

2020-05-26 21:09:16

碼農插件開源

2019-09-30 09:00:00

開發者技能工具

2013-03-12 10:00:29

HaskellHaskell語言編程語言

2018-01-10 08:45:57

編程語言PythonKotlin

2020-09-10 10:16:09

開源代碼安全性漏洞惡意組件

2014-12-04 10:02:55

2025-03-10 11:30:00

開源前端開發

2025-05-26 09:20:00

2022-11-28 08:02:17

DNSIP計算機

2021-06-17 09:00:00

人工智能機器學習開源

2022-11-30 14:57:39

產業互聯網

2014-10-23 08:56:42

開源項目C

2013-11-14 13:58:06

硅谷碼農

2021-07-16 09:00:00

深度學習機器學習開發

2020-08-06 10:29:39

機器學習人工智能AI

2010-04-29 12:57:33

Unix源代碼

2019-09-08 18:24:53

代碼程序員技術

2015-05-12 10:15:15

程序員

2023-07-16 22:34:55

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区在线免费观看 | 久久激情网 | 久久久精彩视频 | 久久一区二区三区免费 | 久在线精品视频 | 亚洲成人激情在线观看 | 少妇一级淫片免费播放 | 欧美日韩久久精品 | 亚洲视频在线看 | 亚洲欧美一区二区三区1000 | 日韩中文字幕一区 | 可以免费观看的av | 亚洲另类春色偷拍在线观看 | 91麻豆精品国产91久久久更新资源速度超快 | 成人av高清 | 人操人人干人 | 91精品国产一区二区三区 | 日韩网站在线观看 | 国产乱肥老妇国产一区二 | 国产成人精品一区二区三区四区 | 精品国产乱码久久久久久闺蜜 | 激情毛片 | 久久人体视频 | 正在播放亚洲 | 亚洲成人免费电影 | 免费视频一区二区 | 成人国产精品久久久 | 亚洲一区电影 | 国产一区二区久久 | 蜜臀网 | 日本免费一区二区三区四区 | 国产成人一区二区三区电影 | 婷婷福利视频导航 | 免费网站在线 | 日韩一区中文字幕 | 九九热在线免费视频 | 一区二区三区国产好的精 | 久久91av| 美国av片在线观看 | 成人免费淫片aa视频免费 | 亚洲免费观看视频网站 |