想要成為一名成功的程序員,我們除了了解不同編程語言的設(shè)計思路,也應(yīng)當了解編程的發(fā)展歷史,從而判斷未來的編程技術(shù)將走向何方。接下就為大家普及下計算機發(fā)展歷程中的8個冷門小知識!
01較好臺電腦為蒸汽驅(qū)動
作為公認的編程之父,Charles Babbage發(fā)明了世界上首批計算機。他將這臺新設(shè)備稱為分析引擎。其體積超過一棟房屋,由六臺蒸汽機驅(qū)動并使用打孔卡進行編程。分析引擎有主要組成部分:1.轉(zhuǎn)盤——相當于現(xiàn)代計算機中的CPU;2.存儲——相當于現(xiàn)代計算機中的內(nèi)存與存儲介質(zhì);3.讀取器——相當于輸入機制;4.打印機——用于實現(xiàn)信息輸出。
02電腦病毒的設(shè)計初衷并非是造成損害
較好款電腦病毒,竟然是由防御技術(shù)Fred Cohen親手設(shè)計出來的。他創(chuàng)造電腦病毒的目的僅僅是為了證明程序?qū)﹄娔X感染的可行性,從未希望借此對電腦造成任何危害。但這款程序卻能夠?qū)﹄娔X進行感染,并且能通過軟盤等移動介質(zhì)在不同計算機之間進行傳播,因而命名為病毒。后來,他又創(chuàng)造出一種主動式電腦病毒,主要目的是幫助電腦用戶找到未受感染可執(zhí)行文件。
03較好位程序員是位女性
也許較令人難以置信的是,歷較好位程序員是位女性。她的名字是Ada Lovelace。在1843年,這位英國數(shù)學(xué)家Ada Lovelace,翻譯了意大利工程師Luigi Menabreaw撰寫的分析引擎文章。在翻譯過程中,她把自己的理解都批注到每篇文章下,而這舉動加快了計算機編程技術(shù)的發(fā)展。在這之后,她又設(shè)計出了較好種能夠利用分析引擎計算伯努利數(shù)的算法,這也是較好個用電腦編寫的算法。
04較好款數(shù)字化電腦游戲從未帶來任何利潤回報
現(xiàn)在的視頻游戲已經(jīng)成為了較受矚目的程序開發(fā)成果,然而歷較好款數(shù)字計算機游戲則遭遇巨大失敗。較好個電腦游戲出現(xiàn)于1962年,由麻省理工的計算機程序員Steve Russell與其團隊一同編寫,這款名為《太空大戰(zhàn)》的游戲耗費了他們近200個小時。該游戲允許兩名玩家分別控制兩艘飛船,目標是擊中并摧毀對方飛船,并且玩家還需要躲避屏幕中代表星球的小白點。如果玩家撞上這些星球,則游戲失敗。雖然Russell和他的團隊從未在這個游戲說的任何收益,但必須承認如果沒有這一突破我們可能永遠不會擁有如今蓬勃發(fā)展的視頻游戲產(chǎn)業(yè)。
05圖像處理算法中使用較廣的一幅來自《花花公子》雜志
40年來,這幅被應(yīng)用為圖像處理方案中的泛用性標準測試素材,還被程序員們親切稱為Lena的。但大多數(shù)人都不知道,它是來自《花花公子》雜志1972年11月刊的插頁。
06GIT中保證文件完整性的SHA-1值
Linux kernel開創(chuàng)者和Git的開發(fā)者——Linus說,Git使用了SHA-1并非是為了安全性,而是為了數(shù)據(jù)的完整性;它可以保證,在很多年后,你重新checkout某個commit時,一定是它多年前的當時的狀態(tài),完全一摸一樣,完全值得信任。
07程序中bug的名稱源自“蟲子”
在程序中bug一詞用于技術(shù)錯誤。這一術(shù)語較初由愛迪生在1878年提出的,但當時并沒有流行起來。在這的幾年之后,美國上將Grace Hopper在她的日志本中,寫下了她在Mark II電腦上發(fā)現(xiàn)的一項bug。不過實際上,她說的真的是“蟲子”問題,因為一只蛾子被困在電腦的繼電器中,導(dǎo)致電腦的操作無法正常運行。如所見,她寫道“這是我在電腦上發(fā)現(xiàn)的較好個bug”。
08豐富多彩的計算機編程世界
如果將計算機編程世界看作一個,那么其中涉及的語言種類必然冠絕群倫。目前已知的編程語言共有698種,遠遠超過任何以語言多樣性著稱的。
重要的是,程序員們應(yīng)當了解編程技術(shù)的發(fā)展歷程以及各大里程碑式創(chuàng)新成果背后的貢獻者。另外,歷史文化能夠激發(fā)人們對于所從事行業(yè)的熱愛之情,從而為積極地投身于工作當中。
微信選課
享更多優(yōu)質(zhì)好課!