03.08 怎樣才算真正掌握了一門計算機語言?

勤勤145919247


這是一個非常好的問題,作為一名IT從業者,同時也是一名計算機專業的教育工作者,我來回答一下。

隨著當今社會逐漸進入到智能化時代,學習一門編程語言已經成為了很多學生和職場人的常見選擇,由於編程語言的學習具有一定的難度,所以一定要制定一個系統的學習計劃,而且要有一個明確的學習目標。按照歷史經驗來看,學習編程語言一定要有一定的連續性,直到完全掌握一門編程語言,很多人在學習到一半的時候就停止學習了,或者是並不知道應該達到一種什麼樣的學習目標,這是普通人學習編程語言比較常見的問題。

通常情況下,真正掌握一門編程語言,應該滿足以下幾個方面的要求:

第一:全面瞭解編程語言的基本語法。對於編程語言語法的瞭解程度是判斷是否掌握編程語言的基礎,初學者要全面掌握編程語言的語法細節,這是熟練使用編程語言的前提。以Java語言為例,重點在於對各種抽象概念的理解,比如類、接口、對象、方法、屬性等等。

第二:建立編程思想。編程思想的建立需要一個系統的過程,通常需要在大量實驗的基礎上才能形成自己的編程思想,編程思想可以看成是使用編程語言的方法論,這個過程需要初學者對於所學知識(語法)進行充分的理解和消化。

第三:具備場景開發能力。是否具備場景開發能力是判斷初學者是否掌握一門編程語言的關鍵,簡單地說就是能否真正使用編程語言來完成開發任務。編程語言通常都有比較明確的應用場景,但是也有一些全場景編程語言,比如Java和Python就可以應用在很多開發場景下,比如Web開發、大數據開發等等,初學者並不需要完全掌握這些開發場景知識,但是至少要熟悉其中的一種開發場景。

我從事互聯網行業多年,目前也在帶計算機專業的研究生,主要的研究方向集中在大數據和人工智能領域,我會陸續寫一些關於互聯網技術方面的文章,感興趣的朋友可以關注我,相信一定會有所收穫。

如果有互聯網、大數據、人工智能等方面的問題,或者是考研方面的問題,都可以在評論區留言,或者私信我!


IT人劉俊明


怎樣才算真正掌握了一門編程語言?這是我工作5年來的經驗!純手打,真實感受。

1. 熟練基本語法

掌握一門編程語言,基礎語法必須熟練。從變量、循環、數組、指針、類等,都需要深入理解。這些知識雖然簡單,但是理解原理也要花費時間。我平時面試別人時,發現很多人雖然知道概念,深入描述時顯得很不專業。

2. 掌握高級特性

除了基本語法以外,語言的高級特性,是你區別其他菜鳥的關鍵。比如:泛型編程、設計模式、編程技巧等,都是需要進一步掌握的,雖然部分知識很少用到,但是確實解決關鍵問題的利器。

3. 使用第三方庫

學習使用第三方庫,會讓你的編程如魚得水。比如Boost、Qt等大型庫,可以讓你開發出企業級的代碼。當然也有許多小巧精緻的庫,在解決某些問題上讓你如魚得水。所以學會使用第三方庫,讓你可以複用前輩們的優秀代碼。

4. 瞭解專業知識

除了語言方面,瞭解計算機相關的知識,也是重中之重。無論是:數據結構、操作系統、計算機網絡、計算機組成原理等,都是你邁向大神的必經之路。話說這四門課是計算機專業課,科班必學,實屬精品。

最後推薦幾本計算機編程書籍,程序員看過都說好!

5. 能夠傳授他人

自己學會了編程固然重要,但是可以很好地傳授給別人,才算是徹底掌握了一門技術。如果你可以把一個小白把教會了,恭喜你,已經算熟練掌握這門語言了。程序員的自由的代名詞,不要吝嗇,把自己得技術分享給別人,構建Free的世界。








舞動字符


要玩編程首先要掌握一門編程語言,編程語言是做軟件的基礎,初學編程都是從一門基礎的編程語言開始,要真正掌握一門編程語言必須經過項目實戰,很多在校大學生在學校期間學了很多編程語言,但不能稱之為掌握只能叫學過,所以編程語言主要在於實踐,只是理論上掌握的非常熟練不算真正的掌握一門編程語言。

編程語言其實學習英語有差不多含義,首先要培養語感有了感覺之後就會變得簡單一些,稱之為計算機語感,這種語感的培養需要具備一定的基礎,並且需要一定時間的積累,一般能達到這種感覺需要堅持,很多對於編程感興趣的人開始熱情高漲,遇到難點了熱情沒了,就中途放棄了,做任何事情都是這樣,不可能什麼事情一帆風順,什麼事情都要堅持一段時間看看是不是真的不行再下結論,很多人覺得編程很難,主要還是沒有堅持到一定程度,在還沒明白的時候就是要堅持。

不同層面的看同一種編程語言的感覺是不一樣的,雖然編程多年每隔一段時間回來回顧C語言的基礎,想到的事情和之前總會有點差異,有時候也會想到編程語言設計者為什麼要這麼做,或者如果換一種語法來設計框架是不是能夠達成效果,無論任何時候都不要脫離基礎,現在很多程序員開始入行前幾年學的非常帶勁,一旦有了項目經驗之後就覺得編程其實就是那麼一回事,沒有必要像之前那麼努力了,這種類型的程序員多如牛毛,所以造就了一批只在本行業能做點事情,去別的公司面試發現有筆試的題目直接抬腿走人,這種屬於平時根本不注意對編程知識的積累,還不如當初還入行的基礎,不能講這一類程序員水平不高,起碼不算是十分優秀的程序員。

要掌握一門真正的編程語言必須要項目實戰,現實中有兩類程序員,不把所有的基礎搞定會讓自己不踏實,把所有的基礎差不多之後才開始嘗試做項目;另外的一類人屬於實戰型,在項目中遇到不懂的再去尋找資料,最後也是把所有問題解決了。所以項目實戰是快速編程入門的唯一途徑,當然如果具備良好的編程基礎之後再去項目實戰效果會好很多。

真正的編程語言玩到一定程度之後就是工具般存在,而且掌握了一種編程語言之後再去學習別的編程語言要快速很多,很多程序高手切入新的編程語言只需要半個月或者更短的時間就能上手做項目,主要還是得益於前面的積累,有幾年工作經驗之後重點就是編程思想,也就是實際解決問題的能力,這才是玩編程的核心。


莫非8125


想做軟件首先得先掌握一門編程語言。初學編程都是從一門基礎的編程語言開始的。很多大學生在學校裡學了很多編程,那隻能說是學過,而不是掌握,要真正掌握,必須得經過實踐,理論上的熟練不算真正掌握一門編程語言。

要想真正掌握一門編程語言,至少應該掌握以下幾個方面的知識:

一.基本的語法

首先要清晰基本的語法結構,包括關鍵字、流程控制、IO操作、網絡操作、異常處理等等,不同語言的基本語法有一定差別,但是在整體內容上也有一定的共性。

二.具備一定的編程思想

所謂編程思想就是通過編程語言來解決實際問題的思路和方法,也可以理解成邏輯思維。學習編程一般都是理科生,數學知識都挺紮實,編程知識也可以理解為數學知識。

三.實踐操作能力

要想掌握一門編程語言,就不能只停留在理論層面,實踐能力是很重要的,實踐能力也是評判編程能力的重要指標。


沐子小五


語言這東西,學起來還是有些套路可尋的,印象中劉老有幾篇文章是專門寫這個話題的,感興趣的小夥伴可以翻一下劉老的公眾號「碼農翻身」,這裡就只是稍微記錄一下自己的理解

其實學一門語言,學的不外乎是下面這些東西:

1.數據類型

再細一點可以分為基本類型、數組、字符串、Map、Set等,只是每種語言對這些類型的命名和構造方式不同罷了

2.控制語句

控制流只有三種,順序,分支,循環,劉老也說了這是由馮·諾伊曼結構的計算機決定的

3.函數

4.面向對象

對象無非就是屬性加方法,但每種語言對面向對象的支持不太一樣,像 Java 是引入了 class 的概念來實現面向對象的,而對於 JavaScript 來說,卻可以只有對象沒有類

5.異常處理

對於異常、錯誤,有返回值、try...catch等處理方式,一般 C 語言會返回 -1 表示失敗,高級語言會返回 true or false 標識是否插入或執行成功,但更多時候高級語言是提供了 try...catch 的方式來捕獲和處理異常的

6.文件與IO

像這類需要中斷的,基本操作就是同步或異步,同步一般寫法 res = wait(),當執行到該語句時會阻塞,異步 wait( listener ),傳入一個回調,在回調中去處理返回的結果

7.多線程

創建一個線程的基本操作就是傳入一個執行函數,因為線程本質上其實是調度器可以調度的一個單元,創建一個線程相當於在調度器上放入了一個單元,下次時間片輪到的時候就會執行你傳入的這個函數

8.語言特性

這個是每個語言區別於其他語言的地方,也是體現自己強大的地方,每門語言都有自己的獨到之處,像 Java 的泛型、註解,Python 的高階函數、閉包、lambda 等

最後謹記劉老所言,想要真正掌握一門語言,還是需要多關注它的語言特性部分,吃透了它不一樣的地方,明白了這樣的特性是為解決什麼問題引入的,閃光點在哪裡,這樣才能真正提高自己的內功


夜空中的那顆星照亮你


你好,我是一名機械工程師,自學網頁設計,通過網絡工程師中級考試,自學至少5種計算機編程語言,下面說一下自己的切身感受,希望對你有所幫助。


能用一門計算機語言完成一個實際項目就算真正掌握了,一句話學以致用就行。


就像中文一樣,我們學會3000個漢字就可以聽說讀寫了,計算機語言也是,學完之後,必須用它去完成一個實際項目,實踐是檢驗真理的唯一標準。


學習計算機語言,不要求把這麼語言都背下來,你要知道有哪些功能,在需要的時候知道怎麼查資料即可,計算機語言包括的內容很多,也很複雜,想把它都記下來是不可能的,只需要記住常用的功能即可。


我的頭條號CAD2D3D,專注工業自動化,本人也對編程感興趣,期待一起學習探討。



CAD2D3D


這是個有趣的問題,我有一個有趣的答案:

計算機語言指用於人與計算機之間通訊的語言,是人與計算機之間傳遞信息的媒介,是把指令傳達給機器使電子計算機進行各種工作的方法。

即是如此,也就是說你能熟練的與計算機交流、交談,能獲取它的信息,能命令它做任何事情,那就便算是真正的掌握了一門計算機語言。

編程的目的:編寫設計一個程序,使運行它的終端設備為我們做特定的事情。使用編程語言是為了和計算機溝通,編程中寫的一行代碼其實就是對計算機說的話,只有計算機明白了我們的意圖的時候才會按照我們說的去做。

計算機語言分為高級語言和低級語言。越高級的語言,使用起來就越容易,也更接近人類說的日常語言,而越低級的語言九越複雜、不容易懂,甚至可以由0101組成。

計算機語言和人類語言的不同:

1、計算機語言是精確的。計算機無法理解不精確的指令,在寫代碼的時候我們會反覆推敲這一句會不會得到我們預期的效果,是不是一個準確的沒有歧義的指令。

2、描述的事情不一樣。也就是要處理的事情其實是不一樣的,現實世界中的常識往往幫不上你什麼忙,你主要描述的是數據,計算機的運行機制,不同設備之間的數據交換協議。

3、計算機語言每一句有目的性。在編程語言中,每一句編程語言都會在計算機中發生特定的行為,所以每一句代碼都需要有它的目的。


Qi朱哥說


掌握一門編程語言應該分幾個階段:

1.掌握編程語言的基本語法,打好基礎。

2.能應用編程語言做一些界面交互的東西,應用基本的框架實現數據的增、刪、查、改,實現真實的界面和數據的交互。

3.熟悉設計模式,能更好的重構代碼甚至獨立搭建框架,開發中能考慮到代碼的各種性

能包括安全性,穩定性,易維護性等,在實際開發中遇到問題能及時提出很好的解決方案做出安全、穩定、高效、用戶體念好的系統。

總結:做到第2點基本算是掌握了這門語言了,後面需要更多的實踐才能達到第3點的狀態。


胡可天天


要掌握一門真正的編程語言必須要項目實戰,現實中有兩類程序員,不把所有的基礎搞定會讓自己不踏實,把所有的基礎差不多之後才開始嘗試做項目;另外的一類人屬於實戰型,在項目中遇到不懂的再去尋找資料,最後也是把所有問題解決了。所以項目實戰是快速編程入門的唯一途徑,當然如果具備良好的編程基礎之後再去項目實戰效果會好很多。

真正的編程語言玩到一定程度之後就是工具般存在,而且掌握了一種編程語言之後再去學習別的編程語言要快速很多,很多程序高手切入新的編程語言只需要半個月或者更短的時間就能上手做項目,主要還是得益於前面的積累,有幾年工作經驗之後重點就是編程思想,也就是實際解決問題的能力,這才是玩編程的核心



回眸未必笑


計算機語言其實就是一種工具,衡量鋒標準也蠻簡單的,如果你能熟練應用這個工具解決遇到的問題就算是掌握了。不過工具本身也有難易之分,比如c++用法靈活效率高級出錯也比較容易,掌握起來就比較難一些,車開20000公里就是老司機,語言也是一樣的寫50000行有效代碼也是老司機了,多用多思考就會精進很快。


分享到:


相關文章: