44 精通多於二種的程式語言

2021-06-18 15:13:14 字數 1106 閱讀 4537

程式開發心理學為人熟知已經很長一段時間了,現在程式設計專業程度與程式設計師掌握的不同程式設計正規化的數量直接相關。不僅僅是聽說過,或者知道一點點,而是真正可以使用它編寫程式。

每個程式設計師都從一種程式語言開始,那種語言對程式設計師思考軟體的方式有著決定性的影響。不管程式設計師使用那種語言有了多少年的經驗,如果一直只使用那種語言的話,他們也就只知道那種語言。只會一種語言的程式設計師的思維會受到該種語言的限制。

程式設計師學習第二語言是一種挑戰,特別是當第二種語言和第一種的計算模型完全不同時。c,pascal,fortran,都有著相同的基本計算模型。從fortran轉到c會遇到一些挑戰,但不多。從c或者fortran轉換到c++或者ada則會面對程式執行方式的本質上的挑戰。從c++轉換到haskell也是乙個重大的變化,因而也會有乙個重大的挑戰。從c到prolog無疑是非常大的挑戰。

我們可以熬煎出一些計算正規化:過程式,物件導向,函式式,邏輯,資料流等。在不同的正規化之間轉換時面對的挑戰最大。

為什麼這些挑戰會很有好處呢?它們影響我們考慮演算法實現以及這些實現中應用的習語和模式的方法。特別地,這些交叉是專業技能的核心。一種語言中解決某個問題的慣用答案在其它語言中可能就不可行。嘗試一種語言的習語到另一種習語的過程中,既可以學習兩種語言,又能學習到要解決的問題。

交叉地使用程式語言有著巨大的好處,其中最明顯的可能就是在命令式語言實現的系統中不斷增加地使用宣告式表達模型。任何精通函式式程式設計的程式設計師可以輕鬆地使用宣告式的方法,即使是使用c語言。使用宣告式的方法一般會產生更短的、更易理解的程式。比如c++,就全力支援泛型程式設計,這幾乎是宣告式表達模型的必需。

這樣的結果就是每個程式設計師都會熟練掌握至少兩種程式語言,理想狀況下掌握上面提到的裡面的至少五種。程式設計師應該一直保持學習新語言的興趣,優先考慮採用不同正規化的。即使在日常工作中只用到一種語言,交叉正規化給這咱語言帶來的經驗是不可低估的。老闆們應該吸引這種思想,並且給員工學習當前未使用的新語言提供預算,作用增加員工使用該語言的老練程度的一種方法。

一周的培訓是不足學好一門新語言的,它只是乙個開始:一般需要好幾個月的使用,就算是兼職的,才能獲得該語言的正確的工作知識。重要的是學習使用的習語,而不是語法和計算模型。

願文:know well more than two programming languages

by russel winder

ArcSDE的二種連線方式

解釋一 arcsde的二種連線方式 估且稱為客戶端負載連線方式和伺服器端負載連線方式。二種連線方式的設定 伺服器端負載連線 最常用的連線方式 伺服器名稱 server sde伺服器的主機名稱。服務埠 service 安裝sde時選擇的埠。預設是5151或esri sde 資料庫 database 根...

C語言字串二種方式定義

1.字串的定義形式有兩種 1 使用字元陣列來儲存 將字串資料的每1個字元儲存到字元陣列的元素中,追加1個 0 表示結束.char name jack 2 使用字元指標來儲存 直接為字元指標初始化1個字串資料.char name jack 不管是用上述那種方法,在字串的最後都有 0以代表字串結束。計算...

ArcSDE的二種連線方式解釋

解釋一 arcsde的二種連線方式 估且稱為客戶端負載連線方式和伺服器端負載連線方式。二種連線方式的設定 1.伺服器端負載連線 最常用的連線方式 伺服器名稱 server sde伺服器的主機名稱。服務埠 service 安裝sde時選擇的埠。預設是5151或esri sde 資料庫 database...