當前位置:秀麗範 >

情感 >學習 >

如何零基礎學習一門編程語言

如何零基礎學習一門編程語言

很多人喜歡爭論什麼什麼編程語言好,我認爲這個話題如果不限定應用範圍,就毫無意義。

如何零基礎學習一門編程語言

每種編程語言必然有其優點和缺點,這也決定了它有適合的應用場景和不適合的應用場景。現代軟件行業,想一門編程語言包打天下是不現實的。這中現狀也造成了一種現象,一個程序員往往要掌握多種編程語言。

學習任何一門編程語言,都會面臨的第一個問題都是:如何學習這門語言?

今天我們不聊什麼多看、多學、多寫、多練之類的。世上事有難易乎?無他,唯手熟爾。

有必要談談的是:如何由淺入深的學習一門編程語言?學習所有編程語言有沒有一個相對統一的學習方法?

曾幾何時,當我還是一名小菜鳥時,總是歎服那些大神掌握多門編程語言。後來,在多年編程工作和學習中,我陸陸續續也接觸過不少編程語言:C、C++、Java、C#、Javascript、shell等等。

每次學習一門新的編程語言,掌握程度或深或淺,但是學習的曲線卻大抵相似。

下面,我按照個人的學習經驗總結一下,學習編程語言的基本步驟。

學習編程語言的步驟

基本語法

首先當然是瞭解語言的最基本語法。

控制檯輸出,如C的printf,Java的System。out。println等。

普通程序員的第一行代碼一般都是輸出“Hello World”吧。

基本數據類型

不同編程語言的基本數據類型不同。基本數據類型是的申請內存空間變得方便、規範化。

變量

不同編程語言的聲明變量方式有很大不同。有的如Java 、C++需要明確指定變量數據類型,這種叫強類型定義語言。有的語言(主要是腳本語言),如Javascript、Shell等,不需要明確指定數據類型,這種叫弱類型定義語言。

還需要注意的一點是變量的作用域範圍和生命週期。不同語言變量的作用域範圍和生命週期不一定一樣,這個需要在代碼中細細體會,有時會爲此埋雷。

邏輯控制語句

編程語言都會有邏輯控制語句,哪怕是彙編語言。

掌握條件語句、循環語句、中斷循環語句(break、continue)、選擇語句。一般區別僅僅在於關鍵字、語法格式略有不同。

運算符

掌握基本運算符,如算術運算符、關係運算符、邏輯運算符、賦值運算符等。

有些語言還提供位運算符、特殊運算符,視情節掌握。

註釋(沒啥好說的)

函數

編程語言基本都有函數。注意語法格式:是否支持出參;支持哪些數據作爲入參,有些語言允許將函數作爲參數傳入另一個參數(即回調);返回值;如何退出函數(如Java、C++的return,)。

數組、枚舉、集合

枚舉只有部分編程語言有,如Java、C++、C#。

但是數組和集合(有些語言叫容器)一般編程語言都有,只是有的編程語言提供的集合比較豐富。使用方法基本類似。

常用類

比較常用的類(當然有些語言中不叫類,叫對象或者其他什麼,這個不重要,領會精神)請了解其API用法,如:字符串、日期、數學計算等等。

語言特性

語言特性這個特字反映的就是各個編程語言自身的“獨特個性”,這涉及的點比較多,簡單列舉一些。

編程模式

比較流行的編程模式大概有:

面向對象編程,主要是封裝、繼承、多態;函數式編程,主要是應用Lambda;過程式編程,可以理解爲實現需求功能的特定步驟。

每種編程模式都有一定的道理,我從不認爲只有面向對象編程纔是王道。

Java是面嚮對象語言,從Java8開始也支持函數編程(引入Lambda表達式);C++可以算是半面向對象,半面向過程式語言。

語言自身特性

每個語言自身都有一些重要特性需要了解。例如,學習C、C++,你必須瞭解內存的申請和釋放,瞭解指針、引用。

而學習Java,你需要了解JVM,垃圾回收機制。學習Javascript,你需要了解DOM操作等。

代碼組織、模塊加載、庫管理

一個程序一般都有很多個源代碼文件。這就會引入這些問題:如何將代碼文件組織起來?如何根據業務需要,選擇將部分模塊啓動時進行加載,部分模塊使用懶加載(或者熱加載)?

  • 文章版權屬於文章作者所有,轉載請註明 https://xiulifan.com/qinggan/xuexi/94443p.html