教師節即將到來之際,小編代表數字科學家團隊向各位奮鬥在一線辛勤耕耘的人民教師道一聲:辛苦了!!在此將有趣的計算機冷知識分享給大家!!
學習計算機編程,我們會遇到各種有趣的專業名詞,有時候還會對它們產生啼笑皆非的誤解。今天,《Python-Turtle圖形編程入門》課程講師牛老師將為你帶來五個容易誤解的計算機冷知識。
電腦鍵盤上有一個寫有Enter或return字樣的按鍵,Enter是Windows系統的叫法,macOS中叫做return。有的電腦的Enter按鍵會有一個彎的箭頭。我們習慣把這個鍵叫做「回車鍵」。回車鍵我們一般用在換行的時候,那為什麼不叫換行而要叫「回車」呢?它跟車有什麼關係?其實,回車鍵是有著很深的歷史淵源的。
我們知道鍵盤是從打字機演變過來的,關於「回車鍵」的來歷,還得從機械英文打字機說起。在機械英文打字機上,有一個部件叫「字車」,每打一個字符,「字車」就前進一格。當打滿一行字符後,打字者就得推動「字車」到起始位置,這時打字機會有兩個動作響應:一是「字車」被歸位,二是滾筒上卷一行,以便開始輸入下一行,這個推動「字車」的動作叫「回車」。後來,在電動英文打字機上,人們增加了一個直接起「回車」作用的鍵。這個新增的鍵就被稱為「回車鍵」。
回車鍵其實是機械打字機到電動打字機的一個升級功能,方便了打字員的的日常操作,也給打字工作提高了效率。而在電腦鍵盤上,「回車鍵」上曾經使用過「CR」、「RETURN」的字樣,後來才統一確定為「Enter」。
發展到計算機時代,Enter的作用不僅僅是換行,它起到確認輸入的執行命令和在文字處理中起換行的作用,是使用計算機中使用最多的功能鍵鍵之一。但「回車鍵」的名字依然被保留下來了。
如果你在辦公室裡聽到了某人的鍵盤敲擊聲音格外頻繁,十有八九是程式設計師,他有可能是程序出問題了,或者是發洩等等……這時候最好不要去惹他。為了給程式設計師減壓,市面上出現了很多用回車鍵製作的減壓神器來供人們發洩,就像下面這種。
當別人告訴你按刪除鍵的時候你會不會猶豫,鍵盤上有Backspace和Delete兩個刪除鍵,我該按哪一個呢?
這兩個鍵還是有區別的,先說Backspace,通常我們把它叫做退格鍵。退格鍵最初是將打字機支架(Carriage)向後推一個位置的按鍵,它的作用是刪除這個位置的字元之後,將後面的文字往前移動一個位置。
在計算機中,數字鍵那一排的最右邊的是鍵就是退格鍵,有的退格鍵上還會標有向左的箭頭「←」 。每按一次退格鍵即可刪除光標前的一個字符。要注意的是,退格鍵是往左邊移動一格,並清除這一格的字符。
再說說Delete鍵,我們通常說的「刪除鍵」就是Delete鍵。它和退格鍵不一樣的地方在於退格鍵是從右往左,而Delete鍵是從光標的右邊繼續往右刪除一字符。另外,Delete鍵另一個用處也是退格鍵沒有的,就是刪除文件。以Windows系統為例,當我們滑鼠選中一個文件,按下Delete鍵以後,就可以直接刪除文件了。
蘋果電腦的鍵盤把退格鍵和刪除鍵整合成一個Delete鍵,如果你用的是蘋果電腦,就不用考慮該按哪個鍵的問題啦。
回車鍵、退格鍵和刪除鍵就是日常在操作計算機的時候經常時候用的3個單詞和和鍵位了,希望大家以後不要搞混了。
說完了鍵盤上容易誤解詞,我們再來看看在學習編程的時候容易誤解的詞。
學習編程寫的第一行代碼,通常是輸出「hello world」,在90%的程式語言中,除了這兩個單詞,我們還會用到print指令。例如「python輕鬆學」的第一節課,我們接觸到的代碼就是print:
我們通常把print翻譯成「列印」。很多剛接觸編程的老師會有一點發懵:列印 hello world,沒有印表機,上哪去列印?其實在編程中,顯示器就是我們的印表機。Print會將內容列印在顯示器上,我們可以理解為是輸出。
再拓展一下,不僅是python,很多知名的程式語言也用print或類似的指令表示輸出,例如:
還有一些語言不是用print這個單詞來做輸出的,比如:
C++語言:cout
C#語言:concole.wirte()
其實無論什麼語言,我們只要清楚的知道,顯示器是我們看到結果的唯一方式,所以也是一種輸出的媒介,無論是print(),還是cout() ,或者是wirte(),它的目的都是將結果輸出在屏幕上供我們觀察程序的執行結果。所以,程序中的print指令和印表機無關哦。
測試人員:你的程序出bug了
開發人員:好,你填個測試報告,然後我改。
以上對話,經常出現在網際網路公司的研發部門中。Bug的本義是小蟲子,但在電腦系統或程序中,Bug是指隱藏著的一些未被發現的缺陷或問題,簡稱程序漏洞。漏洞怎麼就跟小蟲子聯繫起來呢?這裡面還有一個有趣的故事。
1947年,Mark II計算機突然不能正常運作了,大家都不知道出了什麼事。科學家葛麗絲·霍普仔細排查,發現原來是一隻飛蛾意外飛入了一臺計算機內部的一個繼電器上。她用鑷子把這隻蟲子(bug)夾出來,並在日誌本中記錄下了這一事件。目前我們還可以在華盛頓的美國國家歷史博物館看到這本日記。
從此,人們用「bug」來稱呼計算機中的程序漏洞。與之相對的,修復程序漏洞的過程就被稱為捉蟲,debug。
在Python輕鬆學的課程中和之前的文章中都有提到過,Python是一個面向對象的語言。有人就想歪了,學Python還要找對象麼?
其實這個對象並不是我們想歪的那個對象。面向對象編程是一種思維模式,是一種編程的思想,面向對象編程的一條基本原則是電腦程式由單個能夠起到子程序作用的單元或對象組合而成。面型對象編程達到了軟體工程的三個主要目標:重用性、靈活性和擴展性。它相當於對象+類+繼承+多態+消息,其中核心概念是類和對象。
面向對象程序設計方法是儘可能模擬人類的思維方式,使得軟體的開發方法與過程儘可能接近人類認識世界、解決現實問題的方法和過程,也即使得描述問題的問題空間與問題的解決方案空間在結構上儘可能一致,把客觀世界中的實體抽象為問題域中的對象。
通俗的來說,面向對象編程的思想加快了軟體開發的標準化體系,增強了程序的可維護性,提高了團隊協作能力的同時又分工明確。使得軟體開發團的工作能以很低的成本緊密結合在一起,從而將更多的精力放在軟體的設計層面,比如考慮用戶體驗,功能的完整度,以及更安全的方式處理用戶信息和用戶數據。
播種未來科學家的種子