日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

新手成功自學編程,4個必須知道的自學方式

 昵稱47445467 2017-09-16

在IT工程師和培訓機構遍地都是的時代,似乎入行并不是那么難,但是市場的魚龍混雜,讓學習的人望而卻步,擔心入坑,所以很多人無從選擇就選擇了自學。至于培訓的話,該如何選擇在《這8招,幫助10余萬初學者看清IT培訓機構內幕,防止入坑》文章中我們也詳細的解說了,今天我們著重給自學編程的朋友一些建議。

1、選擇什么語言

于想要踏入這個行業(yè)的同學而言,第一個問題便是,應該選擇什么語言去學習?

是世界上最好的PHP語言還是語言之母的C?還是堅挺20年左右的Java?選PHP,上個非誠勿擾第一輪就被美女們刷了,選擇C吧,萬一自己太笨學不會怎么辦。

對于初學者而言,在選擇合適的入門語言時至少需要考慮兩點:

(1)是否能適用于構建你想要的應用。如果你的目標是創(chuàng)建一個運行在IPhone上的APP,那么最好選擇 Object C 或者 Swift,學習web開發(fā)可以選擇PHP 或者JAVA。實際上我們仍然可以用匯編做出網頁,但是這樣做成本高昂。

(2)是否容易學習,在滿足第一點的條件下請盡量選擇容易學習的語言。容易不僅僅指語法簡單,包括環(huán)境搭建、部署等都需要考慮在內,以及能不能容易找到好的學習資料,因此盡可能的選擇主流語言。

別忘了非常重要的一點,學習編程語言還包括平臺提供的API,比如Win 32 之于C++/C#/VB,以及周邊的庫和框架(這些庫、框架和工具能在上面說的技術圖譜中找到)。IT歷史上甚至出現(xiàn)框架和庫引領編程語言走向的情況:JQuery 和Angular 改變了前端開發(fā)的思想; Rails 搶走了Ruby的名氣;而SSH三大框架一度代表了Java世界。

編程語言分布占比

其實你的萬般糾結都是自己給自己設定的。首先你要明白你自己的需求,根據(jù)自己的需求去學習相對應的技能。比如需要學習SSH 三大框架和Java的Java技術棧;為服務器web開發(fā)而生的PHP技術棧;在移動開發(fā)領域流行的IOS、安卓技術棧等。當然這里面有一些重合和共用的技術也需要學習,比如版本管理器Git、SVN就是每個合格的工程師需要去學習的。

如果你真的不知語言的作用,可以參考文章《Java壽命僅剩20年?入門究竟該學啥?資深大牛告訴你》,文章中有各種語言詳細的應用。

2、選擇何種學習方式

在這個便捷的網絡時代,自學可選擇的方式非常豐富。除了在網絡上收集資料、閱讀干貨外,還可以向一些前輩咨詢了自學的方法。

網絡上流傳的編程學習方式有:

看書

觀看視頻教程

閱讀官網文檔

讀源碼

觀看視頻教程,市面上雜亂的教程較多,不知該如何篩選有價值的;閱讀官方文檔和源碼,不太適合初學者,適合入門 以后的技能提升??偟膩碚f,只剩下看書這條路了,雖然課本的知識都比較陳舊且基礎,但是也算是比較中肯的方法了,只能先入門再說,咨詢了很多大牛,推薦一些學習的經典之作。

然后直接開啟啃書模式,發(fā)現(xiàn)看完書之后對很多專業(yè)概念有所理解,然后根據(jù)某些教程對環(huán)境進行配置之后,在這個過程中,新手的你可能會碰到很多問題,環(huán)境配置失敗等等,這期間你無數(shù)次想放棄,解決完這些問題之后,自己把例題中的代碼抄上,然后小黑窗成功輸出,成就感滿滿的。

可是新的問題又會出現(xiàn),比如大多數(shù)的Java書籍,教完你基礎語法知識和秋水仙數(shù)的求法后就結束了,并沒告訴你接下來能干什么。為此感到非常困惑,失去了后續(xù)的Java學習方向。

這就是為什么很多人自學,但卻堅持不下來的原因,沒有方向是最令人困惑的,可能到這里你對自己產生懷疑就放棄了,覺得自己做不了,其實不是你做不來,只是這個領域太過龐大,知識量也太過龐大,而初入行業(yè)的你根本看不全,會覺得像一個無頭蒼蠅一樣。實際上,要點在于能否找到合適的入門途徑,再加上一點點堅持和思考。比較可惜的情況是一些人沒能找到適合自己的學習方法,并在糾結和碰壁后失去信心,然后沮喪的認定自己并不適合干這行。學編程很多時候就是一個趟坑的過程,但不是每一個坑都有必要趟,寫這篇文章的目的是希望能夠幫助初學者盡量少趟一些坑。

3、如何規(guī)劃學習

首先初學者要具備一些非?;A的知識,這些知識在你踏上工作崗位后能被實際的用到,比如計算機運行原理、網絡的傳輸、常用數(shù)據(jù)結構和算法等。這部分屬于計算機科學,也是應該被計算機專業(yè)本科課程涵蓋的。

當然每個學校專業(yè)設計都不一樣,甚至采用的教材名字也不一樣,僅供參考。

大學計算機科學課程往往包括:《高等數(shù)學》、《離線數(shù)學》、《電子電路》、《數(shù)據(jù)結構》、《程序設計》、《計算機組成原理》、《編譯原理》、《計算機網絡》、《軟件工程》、《數(shù)據(jù)庫原理》等。有些學校會有一些額外的課程,例如《通信原理》、《匯編語言》、《線性代數(shù)》、《C語言》、《Java 語言》等。

盡管IT行業(yè)知識更迭非??欤腔A知識并不容易過時,因此有大量的資料可以選擇。我見過很多工作之后的朋友,無論是學習什么語言的,大多在工作一年多兩年的時候都會憂桑自己大學不好好學習,正如那句話忘記在哪里看到的話所說,“你所學過的知識,讀過的書,都沉淀在你的生命力,在未來的某一天就會用上”。

學習資料可以選擇從計算機經典叢書系列開始,比如佛羅贊和莫沙拉夫的《計算機科學導論》,甚至可以閱讀一些計算機科普類讀物例如《穿越計算機的迷霧》。另一種直觀的方式是觀看大學精品課和去跟慕課課程。

除此之外,還需要了解實際應用于設計軟件或者開發(fā)網站中的實踐類知識,包括某個特定語言以及周邊的庫、框架和工具等。 我們可以把特定需求中用到的語言、庫和框架以及其他的工具稱為技術棧,在技術選型上通常也是被這樣考慮的,HR常常會根據(jù)技術棧來尋找需要的工程師。

雖然已經聽到不下5個人聲稱是靠閱讀官方文檔或者看源碼學會編程的,而且認為觀看視頻教程見效太慢。但這個思想對初學者很危險,不得不承認閱讀文檔和源碼能更準確找到自己想要的信息,這對深入技術原理非常有用,但視頻能比文字傳達出更豐富的內容,有更直觀的演示和細致的講解,我想沒有比這個更適合初學者了。

最后的建議

非科班出身的工程師入門是有一定痛苦的,沒有機緣遇到高人指點,如何選擇合適自己的學習方式并自我管理是很重要的一方面。學會之后,可以嘗試去實現(xiàn)自己的一些idea,當做一個小項目來開發(fā),有了一些項目實踐后去找一個公司實習會容易的多?!奥斆鳌睆膩聿皇沁@個行業(yè)的門檻。

而且,大學課程主要定位在上面說到的計算機科學基礎知識,而市面上的培訓機構主要是告訴你在怎么在實際工作中運用,所以大學和培訓機構都有他們的價值。存在即是合理,這么多種語言的存在也是合理的,都有各自的價值。

在這個行業(yè)有大量優(yōu)秀的工程師,從他們身上我能看到聰明不是學習編程成功的關鍵,堅持和勤于思考才是。

    本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多