知乎上總看到有人提這個問題, 我想轉行,我要學多久才能學會,分享下我到經歷,以便你評估一下自身來不來得及,別人是沒辦法幫你評估的。
我是科班出身,大學四年幾乎沒學習,有一丟丟基礎,畢業一年後幾乎和小白一樣了。
樓主畢業選擇了在讀書城市聯通公司上班,一個月兩千塊的月薪,我堅持了兩年,實在太沒意思了,聯通公司經常和領導鬧彆扭,一個大姐跟我說:你不像聯通的人,你像樓下華為的程序員。那個時候我只是當個笑話聽了。沒想到兩年後我真的走上了這條路。
2013年底,25歲的我辭掉了聯通的工作,一個人揹著一個雙肩包有一本書和一個電腦來到了北京,沒想到這一來就再沒回去。
兜裡僅剩1400元,我在北京找了一個床位,一個月400塊,就這樣,我每天晚上回去睡覺,白天就找個能上網的肯德基帶著電腦去學習,用了30天時間把Java基礎看了一遍,ssh瞭解了一點,jsp瞭解一下。
迫於壓力,我沒錢了,我必須出去找工作,我簡歷編造了一年工作經驗,先騙到了一些初創公司的面試機會。因為我怕我寫上中國聯通的工作經驗連面試機會都沒有。
就這樣,我陸陸續續面了十幾家公司,帶上錄音筆。把所有面試題目都記下來。開始背,慢慢的總能覆蓋其他面試官的問題,功夫不負有心人,我終於找到了一份外包公司Java開發工作,工資4000,試用期3200三個月,整整45天,來北京45天,那個時候,吃一頓蓋澆飯都覺得挺奢侈了,大部分時候都是路邊攤買。
我翻出了當年學習記錄,如果你還比較困惑到底能不能成,可以參考。
一個月時間充裕,保持每天可以花費6-8小時,那就可以在一個月內完成很多工作。
月目標:
作為初學者,第一階段目標
- 熟悉基本概念(變量,循環,條件,函數)
- 練習30個編碼問題
- build 2個項目練習使用基本語法
- 熟悉至少2個框架,如Spring,Mybaitis
- 學會使用IDE,Github
這將使您成為初級Java開發人員,同樣使用其它所有語言。
詳細規劃:
現在,我將為您分解每週計劃。
。
第一週:熟悉Java
只是好奇,看看如何用Java完成事情,哪怕一個加減乘除
- 第一天:4個基本概念(3個小時):print,變量,if,else
- 第2天:4個基本概念(5小時):列表,for循環,while循環,函數,import
- 第3天:簡單的編碼問題:(4小時):交換兩個變量,將攝氏溫度轉換為華氏溫度,將數字中所有數字的總和,檢查質數,生成隨機數,從列表中刪除重複項,等等。
- 第4天:中等編碼問題(5小時):反轉字符串(檢查迴文),計算GCD,合併兩個排序的數組,猜數字遊戲,計算年齡等。
- 第5天:數據結構(4小時):堆棧,隊列,字典,元組,樹,鏈表。
- 第6天:OOP(5小時):對象,類,方法和構造函數,OOP繼承
- 第7天:算法(5小時):搜索(線性和二進制搜索),排序(氣泡排序,選擇排序),遞歸函數(階乘,斐波那契數列),時間複雜度(線性,二次和常數),不要求你會寫,知道Java能幹這些事兒,如果能寫出幾個那非常棒了。
。
要不要使用IDE
有些人到這是矛盾的,但是請相信我。我認識一些朋友,他們沒有安裝IDE,效率大打折扣,別拽,快速入門,快速動手。
第二週:開始練習(構建項目)
進行軟件開發。一起嘗試這些東西,以製作一個真實的項目。
- 第1天:熟悉IDE(4小時): IDE是一個遊樂場,今後你要在用它編寫大型項目的代碼。你需要精通一個IDE,idea or vs code 都行。
- 第二天:Github(5小時):Github創建一個存儲庫。試用Commit,diff和Push代碼。另外,學習分支,合併和拉取請求
- 第3天:第一個項目:簡單計算器(4小時):寫一個簡單的計算器。
- 第4 、5、6天:個人項目(每天5個小時):選擇其中一個項目並開始進行工作。如果您不知道可以從事哪個項目。查看以下列表:。
- 第7天:上傳到服務器(5小時):學習服務器和託管創建一個Heroku設置並部署您構建的應用程序。
第三週:熟練掌握程序
第3周的目標是獲得軟件開發過程的整體過程。無需掌握所有這些知識。但是您應該瞭解一些基本部分,因為它們會影響您的日常工作。
- 第1天:數據庫基礎(4小時):基本SQL查詢(創建表,選擇,位置,更新),SQL函數(平均,最大值,計數),關係數據庫(規範化),內部聯接,外部聯接等
- 第2天:通過Java使用數據庫:(5小時):使用數據庫框架(SQLite/mysql),連接到數據庫,在多個表中創建和插入數據,從表中讀取數據。
- 第3,4天:API(5小時):如何調用API。瞭解JSON,微服務,Rest API。
- 第5天,第6天:練習搭建一個開源博客。wordpress or hexo都行。
- 第7天:學習run一個單元測試,debug日誌記錄,IDE中調試方法(4小時):如何設置和檢查日誌以及使用斷點。
機密:
如果你超級瘋狂且超級敬業,則可以在一個月內達成目標,你必須像在全職工作一樣工作。並手機斷網。
老實說,你肯定會分心和困惑。
第4周:認真找工作
你的第4周目標是認真考慮被錄用,這個探索過程可以學到很多東西。
- 第一天:簡歷:(5小時):建立一頁簡歷。將你的技能摘要放在頂部。必要時帶有Github鏈接的項目列表。
- 第2,3,4天:面試準備:網上搜一些面試題,心裡要有譜面試會問什麼。
- 第五天:建立上傳到招聘網站。
- 第六天:海投一些技術崗位,最低要求就好,無需考慮公司怎麼樣。
- 第7天:從拒絕中學習: 海投沒有回應很正常,耐心等待,複習面試題。
最後:屢戰屢敗,使勁折磨自己。
最後!只要你轉發文章+私信小編(學習)即可獲得一套2020年最新的Python學習七大階段路線和400集python學習教程!
階段一:Python基礎知識和高級特性
1、Python語法基礎
2、Python字符串解析
3、Python時間和日曆
4、Python文件操作
5、Python面向對象
6、併發編程
7、函數式編程
8、正則表達式
9、設計模式
10、排序算法
11、異常
12、模塊
階段二:Linux基礎
1、shell操作
2、系統管理
3、常用Linux命令
4、常見Linux系統
5、HDFS搭建
階段三:數據庫原理和sql優化
1、Linux下MySQL數據庫
2、數據庫設計和SQL標準
3、Python數據庫操作的庫
4、Linux下MongoDB非關係型數據庫
5、SQL優化和數據庫優化
6、ORM對象關係映射基本思想
階段四:前端web開發
1、Html
2、CSS
3、PC端頁面開發實戰流程
4、Bootstrap
5、html5和css3
6、JQuery
階段五:Python Web後端開發
1、Django 框架開發
2、Nginx配置和uWSGI部署
3、RESTful接口開發
4、Flask框架開發
5、電商平臺項目
6、BBS論壇系統
階段六:爬蟲和數據分析
1、第一個Python網絡爬蟲
2、專業HTTP分析工具Fiddler的使用
3、實際爬蟲Python編碼問題
4、urllib2 的使用TesseractOCR語言模型爬取使用帶驗證碼登錄的網站
5、Beautiful Soup
6、XPath & CSS選擇器
7、PhantomJS
8、SeleniumWebdriver
9、Scrapy大型框架使用代理服務器爬取
10、Scrapy分佈式集群多代理爬蟲Redis
11、分佈式集群Redis MongoDB在爬蟲裡的應用
12、數據分析工具與模塊
階段七:Python人工智能
1、機器學習
3、深度學習
獲取方式:請大家轉發本文+關注並私信小編:“學習”,即可獲取。
閱讀更多 編程屆控制師 的文章