首頁 > 健康生活 > 職場 > 程式設計入門怎麼學

程式設計入門怎麼學

來源:時尚達人圈    閱讀: 1.64W 次
字號:

用手機掃描二維碼 在手機上繼續觀看

手機檢視

程式設計入門怎麼學,學程式設計要從根本出發,從理論上來說,需要廣泛的閱讀,程式設計從來不是一件無趣的事情,相反,它會帶給你無窮無盡的快樂,技術路線是一條通往該行業的道路,下面我們來了解下程式設計入門怎麼學?

程式設計入門怎麼學1

一、技術路線介紹

本節只介紹純IT領域的技術路線,而對於更高階的技術(例如計算機視覺、機器學習、人工智慧等等)不予考慮。

技術路線是一條通往該行業的道路,掌握了處於這條路上的所有技術,就具備了該行業的從業能力。因此,我們可以從各個公司的招聘職位中找到技術路線的分類。

目前,軟體開發技術路線主要有:Web後端、Web前端、Android、iOS、Windows客戶端、資料庫、嵌入式等。本節我們將依次對這些技術路線作簡要介紹,具體的學習內容會放到後面章節細講。

1、Web後端

這是當今網際網路浪潮中軟體開發的主力軍。幾乎所有網際網路公司都要提供基於Web的服務(相對於基於客戶端的服務),這些服務的核心就在於Web後端,或稱為伺服器端。

與Web前端相比,後端程式執行在伺服器上,看不見摸不著,但卻扮演著至關重要的角色。日常生活中我們用百度搜索、發新浪微博、看騰訊視訊、在淘寶購物,這些功能都由後端程式來實現。

Web後端程式設計又可以根據程式語言的不同分為幾大類:Java、PHP、。

Java是種古老的程式語言,在Web後端的應用也足夠久,由於Java程式碼通常架構清晰、可擴充套件性強,因此適用於大型Web專案,比如淘寶網就是用Java開發的。

PHP是一種專門用於Web後端的指令碼語言,簡單易用,適用於小型Web專案。

是一項新興技術,採用JavaScript語言開發後端,輕量高效,效能好。

除了這三種主流技術外,使用Ruby on Rails、Python、也可以做後端開發,但並不常用,本文就不予考慮了。

2、Web前端

Web前端是個大一統的世界,就是我們常說的 HTML+CSS+JavaScript,最新的版本是HTML5+CSS3+JavaScript。所以前端程式設計師只要學好了這三門語言,就可以大有作為了。

程式設計入門怎麼學
  

3、Android

在移動網際網路時代,Android成為最廣泛使用的移動端作業系統,自然需要大量的開發人員。與Java Web類似,Android開發同樣使用Java語言。

4、iOS

iOS是蘋果手機的作業系統,由於iPhone推出之後在全球市場備受追捧,iOS開發的需求量也很高,而且通常薪資水平高於Android。iOS過去使用Objective-C開發,近年來蘋果公司釋出了新的程式語言Swift,開始逐漸替代Objective-C,成為iOS系統的主流開發語言。

5、Windows客戶端

Windows作業系統幾乎佔領了個人電腦的絕大部分市場,而Windows客戶端程式設計就是為你的個人電腦編寫桌面應用程式,我們日常使用的Office、電腦版QQ、迅雷影音、Photoshop等等都屬於這個範疇。

雖然我們每天都在用Windows客戶端程式,但在雲端計算日益發達的今天,客戶端已經不再是各個網際網路公司首先考慮的平臺。與Web相比,客戶端顯得太笨重,而且無法及時更新。只要是能夠通過瀏覽器提供的服務,就不必考慮開發客戶端軟體,只有那些運算量、資料量非常大的軟體,才需要開發客戶端版本。因此Windows客戶端開發的崗位需求並不大,主要集中在專業軟體領域,比如Adobe公司開發的各種影象處理軟體、軟體程式設計IDE、大型企業內部的管理系統等等。

Windows客戶端開發的常用技術有:WinForm,Qt。

WinForm是微軟官方提供的Windows客戶端軟體開發框架,採用C#語言,屬於框架的一部分。使用Visual Studio開發WinForm程式非常方便、快捷。

Qt是一個跨平臺的軟體開發框架,一套程式可以同時執行在Windows、Linux、Android、iOS、Windows Phone等主流作業系統上,功能非常強大。對於想開發跨平臺客戶端的公司來說,使用Qt的確可以節約很多成本。Qt主要使用C++語言實現功能,同時可以選擇使用QML語言描述介面。

除了這兩種技術,還有MFC、WPF。MFC是微軟早期的客戶端框架,由於年代久遠,開發效率低,現在用的不多了。WPF則是微軟推出的比WinForm更優秀的客戶端框架,但由於推廣不利,至今沒有得到廣泛使用。因此本文不再考慮這兩項技術。

6、資料庫

資料庫開發作為單獨的一條技術路線,似乎有些單薄。但鑑於各大網際網路公司都有資料庫工程師這一職位,所以也把它單獨列出來比較好。

實話講,資料庫這一技術路線我不太熟悉,按照我的理解,應該就是針對公司使用某一款資料庫系統,比如Oracle,做相關開發和效能優化。

7、嵌入式

嵌入式開發更偏底層,似乎離IT越來越遠了。但結合現在日益火熱的物聯網來看,嵌入式將迎來新的高潮。

如果有一些名詞你不瞭解它的意思,請在評論區提問,或自行百度,或者先放著也行。畢竟作為一個程式設計初學者,這些技術路線恐怕也不太好理解。所以繼續往下看吧,等知識積累到一定程度這些概念就自然明白了。

本節只對這些技術路線做了大概的介紹,下一節讓我們開始踏上學習的道路。

二、程式語言

作為一個什麼都不懂的小白,學習程式設計的第一步當然是掌握一門程式語言。本節就來介紹常見的程式語言的學習路線。

首先,先明確一個觀點,作為一個程式設計師,只會一種程式語言是遠遠不夠的。最好精通1~2門語言,基本掌握其它所有常見的語言。這聽起來有些嚇人,但其實沒那麼困難。因為大部分程式語言都是很相似的,比如C語言、C++、C#、Java可以稱為類C語言,它們都是從C語言開始一步步擴充套件得到的`,掌握了其中一種,其它的可以觸類旁通。

1、C語言

資訊類專業的大學生通常都會在一年級上C語言這門課,也很可能是大學期間唯一的一門程式語言課。所謂師傅領進門,修行在個人,通過學習C語言邁入程式設計世界的大門是再合適不過了。雖然也有人提倡學習Python作為第一門程式語言,可我覺得那未免太浮躁了。剛開始應該打好基礎,而不是追求炫酷的效果。

C語言是一門高階語言,又與計算機硬體息息相關,通過指標操作可以真切感受到資料的流動,這是Python無法做到的。

2、C#

學完C語言很多人會產生疑問,不知道C語言能幹什麼。如果不及時消除這一顧慮,恐怕會讓大部分人喪失學下去的信心。然而C語言的用途對於初學者來說很難體現出來,所以下一步我們轉向C語言的增強版本——C#語言(讀音:C sharp)。

C#語言是微軟推出的面向物件程式語言。“面向物件”將是一個伴隨程式設計師一生的詞彙,因此從此刻開始,我們要隨時嘗試理解:什麼是面向物件。

簡單來說,面向物件是相對於面向過程而言的。C語言是一個典型的面向過程語言,因為C程式的執行流程可以很容易地畫一張流程框圖來表示,它強調程式設計師編寫程式時是面向程式執行過程考慮的。

而C#則是一個典型的面嚮物件語言,C#程式的執行流程通常很難用流程圖表示,這是因為程式設計師編寫C#程式時考慮的不是一個完整的從頭到尾的執行流程,而是各個物件之間的呼叫關係。

雖然我已經盡力了,但上面這段話肯定無法讓初學者真正理解面向過程和麵向物件的關係。不過不要緊,程式設計思想從來不是紙上談兵得來的,必須經過充分的實踐才能領悟。

幸運的是我收集到了一套完整的C#視訊教程,以及後續的WinForm視訊教程。學完這兩個,就會對面向物件程式設計有一定的理解。雖然今後並不一定從事Windows客戶端的開發,但學習這兩個內容可以幫助更好地理解後續更深層次的Java Web和Android。看視訊的同時一定要照著在自己電腦上寫一遍,這樣才能印象深刻。

程式設計入門怎麼學2

1、打好基礎:

快速閱讀一些程式設計入門的書籍,學習一門程式語言和相應的基礎庫。閱讀庫的文件和示例,原始碼。比如學習android開發語言或者ios開發語言,熟悉官方API很重要,很多細節只有在實際操作中才會發現,好記性不如爛筆頭,這時候做好筆記很關鍵。

學習程式設計的首要任務是掌握電腦的基本操作,熟悉鍵盤,讓自己對電腦有一個初步的瞭解。

至於理工科的學生,估計大一會教《電腦科學導論》之類的計算機理論課。如果想盡快學習程式設計,就要儘快看完這本書,讓自己對計算機有一個整體的.瞭解。

程式設計入門怎麼學 第2張
  

2、不要死摳語法:

初學者最容易犯的錯誤就就是死抱著一本大書死記硬背語法,結果語法熟悉了,程式碼一行都寫不出來,大大影響了學習的積極主動性。程式設計語法最不重要,思維最重要。

建議儘早接觸標準庫,越早接觸標準庫的概念越好。為了把使用標準庫視為理所當然,並作為一種程式設計習慣,你必須儘可能地使用它。

3、專案實戰:

另外,通過專案實戰的練習,你會找到完成這個專案所需的整體思維,培養大局感,連結所有知識系統。在程式設計專案實戰的過程中,把遇到的問題記錄下來,然後學習相關知識等等。通過一個知識點,然後繼續向外延伸,這樣學習效率更高,也更實用。

當然,程式設計開發是一門系統的學科,單是程式語言就分為好幾類。

比如機器語言、組合語言、高階程式語言(比如java、C語言、python、C++、PHP、Java)。另外還需掌握:資料庫、演算法、計算機網路協議、作業系統、伺服器、軟體開發框架等知識。需要花費較長的時間,循序漸進地去學習。

程式設計入門怎麼學3

一、瞭解方向

自學程式設計無論是出於興趣,還是為了就業,我們首先要了解的就是就業方向:

前端開發:也就是使用者端開到的介面,比如我們看到的百度首頁、購物平臺頁面,甚至是各種APP能看到的介面。都屬於前端範疇,所以前端的工作更偏重於與使用者的互動。前端基礎是HTML+CSS+JavaScript,由於框架相對較多,技術更新較快,所以需要一定的學習能力。

不同的後臺應用的語言不同,如果說前端更在乎使用者的.體驗感,那麼後端就是更偏重於邏輯。這裡建議學習的程式語言是Java,畢竟現在國內市場需求量依舊是第一。不

同的後臺應用的語言不同,如果說前端更在乎使用者的體驗感,那麼後端就是更偏重於邏輯。這裡建議學習的程式語言是Java,畢竟現在國內市場需求量依舊是第一。

資料庫開發:也稱之為DBA,之前阿里培養過一批DBA,主要工作就是維護資料庫,針對資料庫進行設計和開發。常用MySQL、Oracle、SqlServer等。

大資料是後臺技術加上資料庫操作,可以來處理海量資料。大資料用Python/Java多一點。

大資料是後臺技術加上資料庫操作,可以來處理海量資料。大資料用Python/Java多一點。

嵌入式:大家對自動化駕駛或者是機器人有興趣的話,可以瞭解下嵌入式開發。更適合科班生,主要用C/C++;

機器學習:這都是人工智慧方向的內容,也是比較適合科班生,很綜合的學科。所涉及的學習內容就不光是程式語言這麼簡單了。

自動化測試和自動化運維:這兩個方向都需要測試或者是運維的基礎,學Python比較合適。

程式設計入門怎麼學 第3張
  

二、各類程式語言

上面討論了,不同就業方向需要重點掌握的程式語言不一樣。下面一起來看看各類程式語言:

機器語言:是一種指令集的體系,二進位制程式碼語言,是計算機可以直接識別和執行的語言。但是直觀性差,非常容易出錯。

組合語言:是面向機器的程式設計語言,為了解決機器語言難以記憶和理解的問題。組合語言,機器不能直接識別,需要一種程式將組合語言翻譯成機器語言。

高階語言:遮蔽了底層許多細節,高階語言和組合語言同樣完成一項工作,但是效率確實組合語言的3-6倍。

指令碼語言:多為無型別的,比如一個變數可能現在為字串,下一刻變為整型。

難易程度按照圖片由高到低,一層比一層難。

三、如何自學

(1)選定方向

按照第一個分類,大家找到自己感興趣的方向,進行學習。找到你要選擇的行業,它所需要的技術是什麼?然後抽絲剝繭,找到對應的學習資料。

(2)基礎學習

我們以Java舉例,基礎所需要掌握的知識為:

需要高清圖請到黑馬程式設計師官網檢視

要學習的第一步就是基礎語法,那什麼標準才是學會了呢?做出Demo,從輸出第一個hello world,到完成一個學員管理系統。這就說明已經是入門了,不斷地輸出會增加學習動力。

(3)做出專案

現在網路上很多培訓機構也有公開的免費專案,可以跟著課程進行一個簡單專案的學習。按照老師的思路,有一個完整專案學習的思路。之後我們可以到GitHub上找到開源專案,篩選出自己感興趣的進行實踐。

先看課的好處就在於,老師會帶著大家瞭解解決問題的思路,有整體的專案架構瞭解。比如這個專案採用了什麼最新技術?這些技術點面向市場的價值是什麼?

健康養生
生活保健
常見疾病
女性健康
單身
戀愛
婚姻
話題