計算機小白學什么計算機語言好?
今天我就從兩方面聊聊:
1)怎么選,選什么,怎么學,學什么
2)計算機專業通用學習流程和職業發展方向
第一部分:怎么選,選什么,怎么學,學什么1.1 前期準備:收集信息,做調研
首先,建議平時多去各大招聘站上逛逛(越早越好最好從大一開始),比如boss直聘,獵聘,拉鉤,各大公司官網招聘啟事,各種技術論壇招聘版塊等。
我那會開始找實習,用了差不多一個月,去了一家做ERP的公司的IT部門,其實就是一網管,修電腦拉網線裝各種軟件等,這種肯定不喜歡啊,主要還不掙錢,然后沒事干的時候就各種網上搜,逛招聘網站,學校論壇等,除了讓我大開眼界,然后就是各種追悔莫及,所以啊,真心建議,平時除了打游戲看片外,多去主動搜搜這些東西,比如2020技術發展,2020計算機專業應屆生,怎么進大廠等等,對你以后有真有幫助。
逛這些網站干什么:收集信息,做調研
看需求。看看那些互聯網大廠或者自己想去的公司,都在招哪些技術方向?看發展。哪些技術方向需求量大,或者給的工資高,那這個方向目前肯定火熱?看自己。這些技術方向有沒有你感興趣的,或者愿意為之“奮斗終身”的?看要求。這些技術招聘對應屆生的技術能力都有哪些要求?(要具體詳細)定計劃。搜集和整理好招聘要求后,然后明確具體要掌握哪些東西,具體要到什么程度?1.2 具體了解:是什么?(以web前端為例)
前端開發工程師是Web前端開發工程師的簡稱,2007年才真正開始受到重視的一個新興職業。Web前端開發技術是一個先易后難的過程,主要包括三個要素:HTML(標準通用標記語言下的一個應用)、級聯樣式表和JavaScript。
也就是說,前端開發主要包括三個方面,HTML,CSS,JS。然后不知道的繼續搜,比如什么是CSS,直到全部都搞明白為止。
1.3 開發前景如何?
2020前端開發全國平均薪資12K左右,北上廣深更高。
前端開發的發展路線:C/S模式,PC端,移動端,混合開發(H5),APP,小程序/公眾號。
以后發展方向:VR、智能設備交互界面、物聯網交互、5G應用等。
我的初步認識,前端像是在做展現給用戶看的各種“界面”,那這種東西永遠不會淘汰啊,什么東西沒這個可以?嗯,這個方向有前途。
1.4 都要學什么?
前端開發包括,web前端,小程序,跨端開發(PC/移動),前端工程化。
前端技能需要:
a. 精通HTML、CSS、JS。
b. 熟悉常用前端框架,如bootstrap,jQuery等。
c. 熟悉前后端分離,HTTP,AJAX等技術。
d. 熟悉NodeJS,包括Grunt,Gulp,Webpack等。
c. 熟悉MVVM思想,如React、VueJS,AngularJS等。
AJAX什么鬼?Grunt,Gulp,Webpack什么東西?MVVM又是什么?然后一個個查一個個學。
1.5 如何開始學?
a. 從HTML、CSS開始學起,學會如何布局,如何實現設計稿樣式等。
b. 學習JS語法基礎,還有如何操作DOM,XHR技術,AJAX怎么用,JS高級特性閉包,回調,異步等,ES6新特性
c. 學習各種框架,前端組件,比如bootstrap,jQuery等等
d. 學習NodeJS
c. 看各種開源項目,源代碼,然后自己實踐做小項目
前端框架好多啊,看的我暈
1.6 學習到什么程度可以進大廠呢?
a. 基礎扎實,HTML、CSS、JS。
b. 熟練主流框架和常用框架,比如國內比較流行Vue,國外流行react。
c. 會一門后端語言,如Nodejs。
d. 熟練掌握前端工程化。
e. 熟悉當瀏覽器輸入域名到網頁內容展示整個技術過程,越詳細越好。
基礎扎實,就是基本問的知識點都非常清楚;熟練呢,就是能輕松使用不依靠文檔之類的,最好能看看源碼,了解下實現邏輯;學前端如果要掌握后端語言首推nodejs,什么JAVA,Python有時間可以學;
最后,就是找各種大廠面試筆試題,各種刷題,各種惡補基礎知識,如網絡,系統,算法等。
OK,以上這些,從今天開始,埋頭苦練吧,希望有朝一日,從菜鳥,到初級前端,到高級前端,到前端架構,到前端專家,到。。。
第二部分:計算機專業通用學習流程和職業發展方向這里,我想再說一下一般計算機專業的學習路徑和職業發展方向(尤其是不打算考研考博做研究的):
2.1 計算機基礎:(這些一定要啃,持續啃,無論什么方向,即使現在一知半解)
1)計算機組成(硬件組成和如何協同工作)
2)操作系統(如何操控硬件,推薦Unix/Linux)
3)計算機網絡(數據如何傳輸)
4)數據庫實現(數據如何存儲)
5)C/C++語言(人類如何與計算機溝通)
6)數據結構及算法(如何轉化和解決現實問題)
2.2 計算機進階:(擁有一定計算機基礎后,選擇好方向,重點學習和進階)
【以web開發為例】:
1)從零開始。找一本入門級編程書籍,如PHP開發入門,瘋狂Java等,按照書本內容,從搭建開發運行環境,寫第一行代碼Hello world,到寫一個留言板,開發一個blog,開發一個電商網站。
2)開始實踐。找第一份工作進行實踐學習,分析需求,設計功能,完成開發,測試和上線發布。
3)技術擴展。打造自己的技術技能圖譜,學習其他開發語言,學習系統,網絡,運維,數據庫,算法等,并在工作中實踐運用,解決各種遇到的技術問題。
4)技術升級。學習并解決更復雜的技術問題,如高并發,高可用,中間件,大數據,系統架構,分布式等,當然還包括軟技能,如技術管理、相互協作、高效溝通等等。
5)技術轉型。1 技術管理 2 技術架構 3 技術專家 4 開始創業
2.3 計算機常見職業發展方向:(全面了解,選擇適合自己的,感興趣的,并作為終極目標,持續深入,然后再橫向擴展,成為大拿)
1)網絡方向(網絡工程師)
2)運維方向(系統運維,開發運維,DEVOPS,云計算)
3)數據庫方向(DBA,數據庫開發)
4)開發方向(硬件研發,嵌入式開發,系統開發,游戲開發,算法工程師,web開發,前端開發,移動開發,Android,IOS,全棧工程師,圖像,聲音等)
5)數據方向(大數據開發,數據挖掘和分析,商務智能)
6)測試方向(測試工程師,自動化測試,持續集成)
7)項目產品方向(產品經理,PM經理,敏捷教練,DEVOPS)
8)安全方向(安全工程師)
9)新型產業(物聯網,區塊鏈,AR/VR,人工智能,機器學習)
10)技術管理和架構(架構師,技術Leader,技術經理,CTO)
11)獨立開發者,自由職業者
目前有Java、Python、大數據、人工智能、web前端、軟件測試、PHP、C語言等等方向,你可以根據自己的興趣按照以上步驟去了解,選擇,決定。
以上,聊了這么多,如果還有其他困惑,可以關注百戰程序員,更多難題專業老師幫你答疑。