零基礎如何自學編程?
高中開始荒廢,畢業後也是渾渾噩噩過了幾年,如今馬上23歲,不想再頹廢下去,捫心自問不願意就這樣度過以後的日子,想選一個自己喜歡不排斥的工作,受得了苦,也不怕孤獨,肯學,那麼,請問如何從零基礎成長為一個程序員? 問題補充: 1.完全零基礎,任何語言都沒有基礎 2.肯學,自認為學習能力不差 3.年前工作之餘,時間不多,年後脫產自學,時間有,傾向於Android開發方面 4.準備三個月的學習時間,之後嘗試尋找offer 5.這份工作有什麼需要注意的地方 6.這份工作,是否發達城市更利於發展 萬望賜教!感激不盡!
本人在這之前自學了大半年的編程,現在還在一直自學,今天就把自學過程中遇到問題和經驗分享出來,希望可以幫其他人可以少走點彎路。
做好心裡準備
自學編程的彎路多得數不完,坑多得踩不完。如果你決定要自學編程,就意味著踏上了一條面對困難、挫折和失敗的無盡之路,要想清楚自己能不能承受這些挫折,自己能不能堅持走到最後。
自學編程過程中總會遇到這樣一些問題:
* 編程環境?不會搭建
* 知識點好多,定義概念,格式規則,缺點優點。。。* 剛學的知識怎麼又忘了,怎麼這也不會那也不會* 這個語法是什麼邏輯,搞不懂* 教程這樣做可以,我這樣做怎麼就不行?* 敲了半天代碼,一運行怎麼全是錯誤?* 錯誤解決不了,想放棄,狗帶* 學了這麼久,感覺還沒入門* 教程內容都是舊的,學起來費力* 技術更新了,舊知識不管用,又要重新學如果沒有一顆能戰勝這些苦惱的勇敢的心,我勸你還是儘早放棄,免得心灰意冷,身負重傷。而如果你喜歡挑戰艱難險阻,能直面失敗,並能在失敗與痛苦中砥礪前行,那麼恭喜你可以踏上編程之路,努力的去追尋自己的夢想吧。
選定方向
編程的世界是多元紛繁的,大的方向就分前端開發、後端開發、移動開發、雲計算、數據處理、智能硬體、物聯網、虛擬現實等等,光編程語言都幾十種。如果沒有做過功課,貿然進入只會分分鐘懵逼。所以最好是根據自己的興趣愛好再結合市場前景,先選定一個方向,再選擇一門語言,然後頭也不回的深深扎進去。
我當初開始自學編程的時候,因為工作時學了點Linux,就準備學Linux。Linux沒學幾天,發現遊戲編程的Unity 3D挺好玩的,就轉學Unity 3D。Unity 3D學了段時間又覺得大數據很火,感覺接下來是大數據的時代,要跟上時代的腳步,然後又去學習Python。後面才意識到自己在移動應用上面有極大的興趣並有一些自己的想法,再加上本人很喜歡Google,遂最終決定好好學習Android移動開發。
如果自己對自己興趣愛好沒有深刻的認識,沒有明確的學習目標,只是一味茫然的去嘗試,最終只會像猴子掰玉米一樣,不但浪費了自己寶貴的時間,還會一無所獲。
####制定學習目標計劃
選定了方向之後,剩下的就是朝著目的努力前進了。自學的過程是枯燥乏味的,也沒有人陪伴督促,所以要想自學有一定成果,除了要有清晰明確的目標計劃,還要有很強的自我約束能力,還要善於自我及激勵。不然很容易自由渙散,三天打魚兩天晒網,看起來花了不少時間,實際上沒學到什麼。我開始的時候就是憑興趣漫無目的的學習,結果發現收效甚微,於是才制定學習計劃,開始系統的學習。我先是學習了JAVA基礎語法,然後將整個Android開發涉及到的所有知識面簡單快速的學習一遍,這樣對整個體系框架有一個全面大概的認識,然後在詳細具體的學習每一部分,盡量搞明白其中的實現邏輯和原理,以達到掌握知識的目的。最後開發練習的時候再根據自己要實現什麼功能,去查相關的資料。
優化學習方式
一、做好筆記,記錄經驗我們大多數人並沒有過目不忘的神技,很多時候我們學了也不一定馬上掌握,需要過後花時間慢慢領悟,而且還有忘掉的風險,所以對於重要的知識點都要做好筆記。
編程的過程中總會遇到各種各樣的問題,比如編程環境的配置,常用的快捷鍵,編程過程中的錯誤、異常,軟體更新問題等等。這些問題往往會不只一次出現,所以我們面對這些問題都是如何解決的,一定要記錄下來,一是增加自己解決問題的經驗,而是以防下次出現。
我做筆記記錄的方式:
* 截圖* 拍照* 思維導圖* 寫Word文檔除了最初用紙質筆記本做過筆記,後面都是用上面的方式。用電子的方式方便快捷易於分享,而且我還能傳到手機上,利用其它時間隨時隨地閱讀。
二、認認真真敲代碼
二、認認真真敲代碼二、認認真真敲代碼
編程沒有捷徑,只有勤奮努力。三、多看官方文檔,外文資料
互聯網是一個更新迭代很快的行業,所有編程語言都會不斷的更新新功能和修復舊Bug,網上查的資料很有可能是舊的解決方案,現在已經不適用了。所以最好最快的方法就是查看官方文檔。畢竟互聯網技術還是國外發展起來的,所以在很多技術問題方面,人家還是有優勢的。有些問題在國內不一定能找到答案就去外網找。
四、進入行業圈子
只有進入行業圈子與其他人交流,你才了解最新的行業動態,才知道自己需要更新哪些技能。最重要的是有了這群人,自己遇到問題解決起來嗖嗖的,那速度才叫「倍爽兒」。進入行業圈子的方式:* 混跡各行業網站論壇個人技術博客一般在搜問題時很容易就搜到這些網站
* 關注各種行業話題和人比如知乎、微博、微信公眾號等* QQ群、微信群交流基地,技術後援團* Github互聯網聖地,行業大圈子就在這。五、動手做項目
我們學習編程的最終目的就是用所學的做出具有一定功能的項目,而做項目又是最好的學習和鞏固知識的方式。如果前期能力不足就先做一些簡單的功能模塊,一步一步慢慢來,不要一開始就要實現各種酷炫炸天功能,遇到不會的就在網上查, 現在互聯網這麼發達,獲取資源也及其方便。而且開發前也最好在網上查一下有沒有已經成型的框架或模板,編程界有一句很流行的話「不要重複造輪子」,什麼都自己做一是很耗費時間,二是自己技術能力不足還可能留下不少坑。收穫回報
自學編程說起來到處都是苦,但也並不是完全一無是處。客觀地看,自學編程還是有很多好處的。
* 培養自學能力* 掌握一門技術* 鍛煉毅力和獨處能力* 提高解決問題能力* 提高面對挫折失敗的承受能力* 改變思維方式* 享受沉浸專註的快樂* 享受創造的快樂資源分享1. 自學視頻網站:
[慕課網](慕課網(IMOOC)-國內最大的IT技能學習平台) 本人主要學習網站,課程全部免費而且視頻比較新,有課程計劃和在線編程。[極客學院](http://www.jikexueyuan.com) 課程全多,部分課程需要VIP,有的課程比較舊。[麥子學院](麥子學院 - 專業IT職業在線教育平台) 大多要報線上培訓班,不過好像有免費入口,反正我看的Android全部免費。[51CTO學院](51CTO學院_專業的IT職業在線教育及實戰培訓平台) 沒用過[網易雲課堂](網易雲課堂 - 領先的實用技能學習平台) 只用過網易公開課,沒用過雲課堂。[咪咕學院](咪咕學堂 - 學海無涯,咪咕一下) 沒用過[MOOC學院](MOOC學院(慕課)) 果殼慕課網,比較雜,沒用過。2. 手機應用[SegmentFault](SegmentFault) 專業互聯網問答,有PC版。[開發者頭條](開發者頭條 - 程序員的首選學習分享平台) 程序員學習分享平台。
[掘金](掘金) 高質量技術分享平台[碼雲](碼雲 - 開源中國代碼託管平台) OSChina旗下雲端開發者服務平台[塗書筆記](塗書筆記官方網站) 有道雲筆記、印象筆記這些大家都知道了,圖書筆記的特點是可以上傳照片並識別照片中文字。主要針對讀書人群。Mindjet Maps 思維導圖,大名鼎鼎MindManager的Android版,免費極品思維導圖 Android版,功能齊全[奇妙清單](奇妙清單 | 待辦事項清單、提醒、事項 、任務、備忘) 待辦事項清單[種子習慣](種子習慣 - 最專業的習慣養成應用) 習慣養成應用3. 翻牆軟體shadowsocks4. 瀏覽器
- Chrome瀏覽器 各種開發工具,各種插件,開發者大多都用Chrome瀏覽器(去廣告,翻譯輕輕鬆鬆)
話不多說,推薦一個網站、兩本書:
How2J 的 Java教程
現在,我正在這個網站中學習,可以說,這是目前為止,國內最好的Java學習網站。
「Java 核心技術」,「Effective Java中文版」。
本文一共分為三個部分,新手入門Java編程的誤區、市面上教材的問題、正確的學習思路是什麼樣的。
一、新手入門編程四大誤區
1.一定要找到最優路線
與上一代程序員相比,我們這一代程序員真是生活在天堂里,隨處可得的都是經驗,教程。但這也給很多新人造成了不少的困擾,哪一個學習路線是最好的呢?好不容易找到一個視頻教程,看了兩天,就看不下去了,又回去搜『怎麼學習Java』、『有哪些適合Java新手看的書』、『最好的Java教材是什麼』。其實,沒有所謂最好的一條路,你走的那條,就是最好的。
2.拿到書,從第一頁開始看,一個字一個字地看
學生思維中,最需要改變的就是這一點。編程書籍浩如煙海,每一本都是大部頭,如果每一本書,都從第一頁開始,一個字一個字的看,沒有三五個月,你是啃不下一本書呢,可以到了三分之一的時候,你可能就已經到了崩潰的邊緣了,放棄,只是早晚的事。
3.眼高手低,不重視練習
認為看懂了就是會了,這是編程新手很容易犯的錯誤,看懂了不算會,理解了不算會,只有你能寫出來了才能算會。很多新人著急趕進度,每個知識點都是囫圇吞棗,看起來會了就過了。xdite老師曾說過,傲慢才是學習路上的天敵。放棄你的傲慢,重視練習,你才能獲得最紮實的基本功。
請記住,慢就是快。
4.編程很難,我學不會
不要神化編程,好像只有古怪的程序員才能看的懂,學得會。編程其實就是和計算機交流,孰能生巧罷了。
二、市面上教材的問題
1.羅列知識點
知識點擺出來,就叫做教材。但這樣的教材還不如讓我直接去看官方的文檔呢,沒有分析講解,類比,再多的文字只能讓人昏昏欲睡。
2.太重視細節和原理
有些國外的教材,又太過啰嗦,沒有重點的講細節。按照這樣的教材去練功,很容易走火入魔,不顧讀者成本和基礎地講解細節和原理,是極其不負責任的,這樣的教材就像一個高手,功德圓滿了,下山來秀花招,中看不中用。
3.缺少練習,練習缺少梯度
我在學習的過程中,就有這樣的困惑,感覺學了很多知識點,卻找不到用武之地,找不到合適的練習題,大部分書上的練習題都是互相抄抄,就像大學考試的題目一樣,不實用,而且最重要的是梯度設置很有問題,要麼太簡單,一看就會,要麼又太難,超過了知識點的範疇。
網上的大部分練習都是針對面試的演算法題,太注重於各種複雜奇怪的演算法,對於語法,編程基礎的練習作用實在有限。
4.沒有項目,無法串連知識點
如果說好練習題少,那可用的練習項目,可以說是幾乎沒有。缺少了實際項目的檢驗,我們所學的知識點就好像都漂浮在空中,沒有落地,沒有辦法得到整合。零散的知識是不容易被大腦記住的,如果能有一個完整的串連項目,那就像在大腦中建立一個圖書館,各類圖書分門別類,整理妥當,工作中真正需要的時候,我們就可以信手拈來了。
三、正確的思路
1.快速突破基礎知識
其實學習Java編程和學習任何其實知識都一樣。
知識點+練習+總結
看知識點,看實例,做練習。這個過程中是以練帶學的過程。不要死記硬背知識點,把知識點用起來,才能記得住、記得准、記得牢。
重點來了,如果你在我推薦的how2j網站學習,做練習的正確思路,一共5步:
java 練習題,共計 194 道
1. 自行完成練習
根據練習目標盡量自己實現代碼效果,期間會碰到疑問,難題,和自己不懂的地方,這些都是必要的過程
2. 帶著疑問查看答案
完成過程中,碰到無法解決的問題,帶著疑問,查看答案,分析答案的解決思路
3. 查看答案講解視頻
依然有不明白的地方,點開視頻講解,帶著疑問,聽視頻講解有問題的部分
4. 再做一遍
理解後,再從頭做一遍,把有疑問的地方都捋清楚
5. 總結
最後再總結一邊,總結思路,總結解決辦法,以後遇到類似的問題,怎麼處理
2.排列組合,搞清框架整合
對於框架學習來講,搞清楚Hibernate、Struts、Spring、Mybatis的使用方法是第一步。
真正工作的時候基本上都是兩個或三個聯合使用。因此,把構架的整合思路理清楚,會為後面的項目學習打下很好的基礎。
整合Struts和Hibernate教程 | 基於實例代碼分步講解 一站式學習Java | how2j.cn
Spring+Hibernate 整合步驟 | 基於實例代碼分步講解 一站式學習Java | how2j.cn
Struts+Spring 整合步驟 | 基於實例代碼分步講解 一站式學習Java | how2j.cn
SSH 整合Struts+Spring+Hibernate 逐一配置的步驟 | 基於實例代碼分步講解 一站式學習Java | how2j.cn
SSM Spring+Sping MVC + Mybatis 三大框架整合詳細步驟
3.結合項目,整合所學知識點與框架
其實在學習Java編程的過程中,這一步不一定是最難的,但是市面上的資料很少,無項目可做,是很多初學者找不到成就感,不能形成正反饋,最終選擇放棄最重要的元兇。
我現在正在學習的就是這個模仿天貓的完整項目。而這個項目一共分為了三個實現版本,一個J2EE版、一個SSH框架版和一個SSM框架版。這樣,一個項目,三種實現,既能完整地複習前面練習的知識點,利用到大部分的知識點,又能前後對比,了解到框架的用法和好處。
JAVA WEB 項目教程-模仿天貓整站 J2EE版
JAVA WEB 項目教程-模仿天貓整站 SSH版
JAVA WEB 項目教程-模仿天貓整站 SSM版
4.結合兩本書,查缺補漏
這個時候,我們才提到最前面提到的兩本書,你應該常備案頭,以備查閱。真正的好書,要像一個朋友,遇到問題的時候,你去問他,他總能幫你解決。但你學習的時候,又好像不需要他的存在,這就是君子之交。
總結
今天我所說的,都是自己的學習過程中的體會和總結。how2j網站中大部分內容都是免費的,但有一部分需要付費購買。如果說學習是一項投資,那金錢絕對不是最大的成本,它需要你的時間,你的耐心和你的決心。
去培訓班,三個月學到的比大學三年還多
你的優勢在於:目標明確,學編程是為了找程序員的工作。因此要多多關注軟體工程師招聘啟事,尤其注意入門級別和實習生級別,了解這些職位所需要的技能,有針對性地去學。再具體一點說:以我的經驗,零基礎三個月不太可能學Android到可以找工作的程度。可能的建議一:放低標準/延長時間。三個月學會java、入門Android,從實習生開始做,用一兩年時間積累技術經驗。可能的建議二:考慮別的方向。相比Android,前端技術(HTML/CSS/JS)入門更快,不僅需要編程技巧也需要美術能力,可以考慮。
看到這個問題,半夜的我一個激靈爬起來,正好身邊也有一些這樣的例子,就發表一些不太專業的看法吧。——————————————————————————————————————————————
我一個高中同學,高考完當兵去了,現在面臨一沒技術二沒學歷三沒靠山的尷尬處境,前段時間跟我聊天說正在武漢報培訓班學Java,然後跟我描述了各種Java程序員的優越待遇,彷彿上完那幾個月的課就能BAT三大家隨便挑,月薪輕鬆20K一樣…我雖然明面上鼓勵他:加油,努力,我看好你!!!心裡卻一聲嘆息——你們啊,naive!網上那些so–called「21天從入門到精通XXX」真的害人不淺啊,以為會了些基本語法,能仿寫幾個小程序,就「精通」了,你們可以問問 @vzch有沒有精通C++,又是用了多長的時間。當一名合格的程序員絕不是靠幾個月的學習所能一勞永逸的,科學系統地學習計算機知識,堅持不懈地coding,一顆熱愛編程的心,缺一不可。 先說說下面這位仁兄吧,喝最烈的酒,日最野的狗,大學四年也是浪的飛起。考研時也是一開始信誓旦旦豪言壯語,結局跟他學Java差不多。順便說一句他是學化工專業的,專業課跟編程也並無交集。在我看來他至少代表了大部分跟計算機專業無關,卻非要擠破頭往互聯網行業鑽,想要分得一杯羹的應屆畢業生。至於為什麼大家這麼樂此不疲,無視互聯網的泡沫和不久前BAT的縮招,已經題外話了,我只是拿我學C++的一點經驗,給大家一點借鑒。 在我看來,無論是學什麼東西,有兩點基本是通用的。一是偉大的馬克思說的方法論;另一個就是態度了。態度決定一切,首先無論是為賺錢還是興趣,你對學習的態度決定了你的付出程度,在我看來,大部分人拼的都是努力程度,因為他們還遠沒到拼天賦的層面。既然決定要學Java(按照題主的要求,暫且假設是Java開發),那就得制定完備的學習計劃,並且持之以恆地堅持下去,建議還是先去找一些相關的教程或公開課看一看,如果確定一條路走到黑,那麼就報班去吧,那應該算是速成的捷徑了。關於培訓班也不多做評價,畢竟也沒報過。但是對於程序語言這些東西,我覺得第一步應該是模仿,通俗來說就是抄代碼。書上課上的常式,自己親自一個個敲一遍,和看一下然後copy-paste是雲泥之別,然後就是一些必要的小練習,也需要一絲不苟地自己完成,切莫依賴答案和百度。另外,熟悉基本的語法以及體系框架之後,可以去online judge類網站創建個賬號刷刷題,這裡給一個leetcode的鏈接https://leetcode.com,另外我認為語言只是載體,演算法才是核心,去買本《演算法導論》,無論是以後學習裝逼都是極好的,暫且寫到這裡,實在沒動力╮(╯▽╰)╭——————————————————————————————————————————————先貼幾張我另一個小夥伴的圖片,手機上實在不方便編輯,先寫到這裡,明天再更新吧,求贊(≧▽≦)/——————————————————————————————————————————————這是一開始的豪言壯語三天後
七天後end謝邀。。。好吧沒人邀請我我自己厚臉皮來了
因為以前給很多和題主類似的同學們聊過相同的話題,我話有些羅嗦麻煩慢慢看了完全零基礎的很正常,我身邊有個哥們,英語6級都過了,想零基礎轉程序猿,聊了一晚上,有了自己的結果,是什麼先不說,咱們來看看我都聊了些啥覺得這裡必須要自我介紹下,誇張點說自學編程開始到現在有10多年了,其中系統學習了4年(大學)其他的都是自我興趣愛好所以做了這麼久...現在還在實習期,嗯沒錯,我還沒畢業,但我還是厚臉皮來給你回答問題了從一開始啥也不會到複製別人的代碼過來一點一點刪除、運行看效果到現在自己能夠獨立完成整個項目的設計、實現、運營、維護和推廣擁有完整的項目開發經驗我完全是實幹出來的,也正因為如此我可能和其他答主大人回答的不太一樣,答案僅供參考...不問廢話,編程目前確實很火,以下我們根據一些問題確信你是否合適做編程
一,樓主覺得編程是什麼?以程序命令為基礎控制計算機做相應的工作...這是標準回答,我想聽你怎麼看這玩意,因為你的看法將會影響你對整個編程行業的認知。確立了自己對這個行業所做事情的認後,那麼你必須具備一定的計算機操作基礎,這是前提好,第二個問題,樓主對抽象概念認知快么?
什麼意思?這麼說吧,我給你講一些天體物理學很複雜的概念的東西,你能有能力硬著頭皮記住他們並自己想辦法尋求認知他們的工具或方法么為嘛搞這麼複雜?因為要學習編程你首先需要了解清楚一個規則那就是,無論什麼語言的編程,必然有一大堆抽象概念等著你,如果你能夠認知踏實的了解清楚這些概念,起碼你的底子沒問題了。目前大多數面向對象編程語言適合去做應用層開發,題主你問的Android開發也是這層的,那麼題主第一個任務來了,什麼是面向對象?三,題主你的毅力如何?
哦哦好吧,你的自述說了的,那麼假設你毅力很強,那麼你能夠堅持下去每天敲代碼練習不停下一天么?不是說不休息啦,而是每天都堅持著自己做些小東西出來,哪怕初學的時候就做個列印9*9乘法表在屏幕上也行。基本問完了,那麼還有些東西需要明確。
一、編程是個長期活,題主你需要能忍受得了複雜枯燥無味的編程語言和知識,這是你成長的必經之路。二、無論什麼語言,沒有最好的。三、學習一門語言要堅持下去,最好的話同時去了解下你做的程序運行平台的運行原理,計算機組成原理,不必把這些書精通,但基本的邏輯得懂。四、明確自己的方向,區分軟體開發都有哪些崗位,需要做什麼事五、(中期)無論做哪方面的工作都有自己蛋疼的地方,也都有優越於其他工作的地方,編程裡邊細分還有很多工作,例如產品經理需要做的原型設計、功能分析,前端需要去實現的界面、後端需要部署伺服器、資料庫編程等等等等...但始終記住一點,不要吃著碗里的看著鍋里是,感覺別人都好輕鬆自己好累什麼的,堅持自己的位置,學習其他位置需要做的事是做軟體開發行業成長的階梯,心態一定要端正六、(後期)無論什麼語言都有自己獨到的地方,歷史發展這麼多年,能活下來的語言必有長人之處,沒有最完美的。要學習其他語言最好學完自己當前的語言,並做到精通,這樣你會發現很多類似的語言都會融會貫通,學起來效率翻倍好吧以上都是經驗所談,我們來說些現實點的
哪門語言最HOT?看題主你想做什麼了?計算機(PC)軟體?網站?還是手機程序?好吧你好像說了的側重Android對吧?那麼我想說什麼呢?無論你選哪個,請參考以下表來選擇最合適的語言:PC(Windows):.net開發(http://VB.net 或 C#、C++,三者難度依次增加)其實還有其他的,但目前最常用的這三種移動平台:iOS:object-c、swift(o-c資源目前較多,sw是最新推薦使用的)Android:Java (還有C++也能做但不適合初學者)嗯哼?題主想做Android的話離不開java哦,那麼題主需要先去學習JAVA編程,完成後才能學習Android開發,路一定要一步一步踏實的走,別想歪路往前跳哦。最後,根據題主的選擇給點相關建議:
做Android開發,目前可用的兩個工具分別是 基於eclipse的ADT和基於IntelliJ IDEA 的Android Studio目前谷歌官方推薦後者,而培訓機構大多選擇前者(因為那群老師習慣前者)要做好Android開發,題主必須具備的另一項技能就是緊跟時代步伐,也就是說,兩者都要學,同時一旦有新的,一定要能儘快完成轉型,因為目前Android時代新東西變更很快,所以一定要能跟得上節奏。其次,需要題主在學習到Android階段的時候能多去了解一些框架,框架開發能大大增強你的開發效率,至於前期java階段,可能會有大量的抽象思想等著你,初學者來說,能否理解這是道門檻。哦,還有,Android開發的軟體是跑在手機上的對吧?這些軟體都有界面對吧?那麼你還得會做界面,不要認為這是美工的活,更多的情況下不要去指望一群不懂程序的美工......嗯,要學的很多,對吧?你需要自行制定計劃,一步一步去實現自己的夢想我能幫你的就到這裡了哦,對了,你還比我大呢,祝你好運哦~------
如果有什麼問題可以問我,如果我有說不對的也歡迎大家指正,咱也剛畢業沒多久,吃過的飯不多,還希望如果有大神,手下留情~題主如果換方向的話咱大概也許似乎也能提供給你一些意見,私信我或者在底下評論都行,也希望能夠互相交流下加油。------------------------
補充:忘了說了抱歉,通過什麼途徑學?其他好多回答,什麼自學啦,網上有資源啦,什麼看看書就會啦,還有報補習班的天啦嚕你們這群有基礎的瘋子哼!安卓雖然很簡單(相對的)但也不是初學者做做夢看看書看看視頻就玩得轉的好么?題主要真的想零基礎學,個人建議報補習班,選擇大型培訓機構靠譜些,咱不會給你推薦哪家啦,又不是來打廣告的......還有,與之相反的是,千萬別選速成班,什麼30天教會Android開發的,扯淡!重要的事情說三遍:編程不是能速成的事情編程不是能速成的事情編程不是能速成的事情做白日夢呢?還有那群混蛋會告訴你的什麼通過俺們30天培訓出去的學員,月薪2萬....扯淡!現在有些培訓機構真是畸形的不擇手段了啊真是所以說,要報培訓班的話一定要認真挑選,認真挑選,認真挑選市場真的很混亂,讓這群見錢眼開的攪合的。慢慢學,急不來,紮實了基礎,以後才能飛得更高同時,在學習編程的時候,可以去看看一些教程、資料、視頻,網上真的很多,但他們僅適合當作參考來用,你可以照著視頻做些自己的小玩意出來玩,初學直接靠視頻?也是扯淡重點推薦下畢向東老師的JAVA視頻,但咱不是推薦他背後的培訓機構哈別搞混了,畢老師講得確實不錯,挺適合新手去看每天多做些練習,不斷的積累,這麼說吧,很大程度上我現在做開發,很多功能之前做過的,拿出代碼複製過來改改直接用了,這樣子才有效率嘛,那有這些代碼前提就是日常的不斷積累。完
-----------
馬丹的跑回去看了下題主的問題,又忍不住多寫點了...嗯,地方的話,軟體開發最好的黃金三點是北上廣,哦,外加深圳來北京的話不要忘了喊我面基啊...呸呸呸,是見面交流,交流!差不多該回答的都完了...吧?對電腦感興趣跟編程可是一點關係都沒有的。。
編程很沒意思很枯燥的針對題主這個問題,我上午看到了 @品雪一年前寫的一篇文章,很不錯,在此強烈推薦給大家,希望對有同樣需求和疑惑的同學有所幫助。
- 原作者:@品雪
- 原鏈接:https://zhuanlan.zhihu.com/p/21475104
- 原出處:知乎
目標決定方法,如果是想轉行做職業程序員,那還是老老實實把基礎概念搞清楚,系統的學一門語言一個平台,雖然風口來時只會點皮毛也能唬住一些外行、混到一個不錯的收入,不過即使努力邊學邊乾熬過去了,有這樣心態的人也很難有長遠的發展,風口總是會過去的,一直在程序員底層混著,不會比其它行業愉快的。
不過,也未必要把四大基礎課程(計算機原理、數據結構與演算法、操作系統原理、編譯原理)都深入學完才算有基礎概念了,基礎不好的程序員剛工作時,挺容易陷進這個坑裡。這些東西遲早是要補回來的,不過開始只要有個最粗略的概念也夠幹活的了。嚴格說來,系統學習與快速出活的矛盾是一個永遠需要面對的問題,需要根據具體情況和個人興趣找到適當的平衡點。在碰到問題時,作為深入系統的學習的契機是很好的,假以時日就會變得非常專業。總是解決過眼前需求就算,出活比較快,但是對個人的長期發展是很不利的,因為水平總是很淺。在這裡,先插一句,對於沒有基礎的初學者來說,學習編程最重要的是保持初心。當初怎麼想起來學編程的呢?是想把自己理想里的網站、移動 App 或者工具應用做出來,還是要求解專業方向上的問題,或者完成一個遊戲、製作一個交互動畫效果,還是別的什麼。學習時,編程語言的諸多規定要記,開發平台的許多細節要熟悉,上手時debug的各種沒頭緒,如果陷到裡邊又沒有搞出什麼成果,太容易上演從入門到放棄。時時記得自己是為什麼來學習編程的,學會一點,就用一用,明明白白感受到每天進步一點點,堅持下來的概率就大很多了。把一門編程語言的細節都學透了,會是一個漫長的征程,你並不需要成為人肉編譯器或解釋器才能運用它,學會流程式控制制語句和基本的程序結構算是入門了,之後就可以開始給自己的項目添磚加瓦了。這樣比較能保持長久的熱情。昔年我還在上大學的時候,有很多同學抱著譚浩強版《C語言程序設計》學編程,基本上都從入門到放棄了。固然有書寫得不好的因素,缺少目的性也是一個很關鍵的因素。那麼語言本身怎麼入門呢?對初學者,我喜歡推薦 https://www.codeschool.com 的教程,這些教程貫徹了小步前進、動手練習的原則,同時又省去了配置環境麻煩。別小看最後一點,軟體開發的環境配置實在是一個比較煩人的事兒,非常容易掉坑裡。所以,零基礎的愛好者盡量選擇解釋型語言學起,用好的集成開發環境( IDE )工作,比如學習 Windows 應用開發用 Visual Studio,學習 PHP 考慮 Zend Studio 或者 PHPStorm,學 Web 開發的 WebStorm/Sublime/Visual Studio Code 等。另一個選擇是越來越多的在線編程環境, @路人甲 整理了一個很不錯的清單:https://zhuanlan.zhihu.com/p/21808087 。對於 JavaScript 的話,http://codepen.io(國內略慢)、http://jsbin.com/、http://jsfiddle.net(國內略慢) 也比較流行。語言選擇是由學習的目的決定的,比如做 Android 應用開發就得學 Java ,IOS 則是 Objective-C 或者 Swift(PS:IOS和安卓藥丸),做網頁當然是 JavaScript,大數據考慮 Python 或者 R,做遊戲 C/C++,所以並不一定由得自己。對於零基礎的愛好者,隨大流才是明智的,聽說 Rust 好或者 haskell 牛就去學,基本上是找虐。程序語言的流行情況隨便在哪個社區論壇逛逛都很容易知道,搞不清楚可以參考 TIOBE 。如果只有泛泛的興趣,我現在一律推薦學 JavaScript,純考慮語言的話 Java 其實更好,學習起來簡單,能儘快上手寫東西才是好語言,不過 JavaScript 拿來做頁面效果,比較容易有成就感,環境依賴也比較小。另外,對於泛興趣的學習者,強烈推薦去https://www.codewars.com 刷題。小步前進就是每步不要學太多東西,練習編寫儘可能簡單的程序;除了個別天賦異稟的,上來就寫個實用大程序那是給自己挖坑,出了問題都不知道從哪下手解決,老老實實從 hello world 開始逐漸寫長一點的程序才是正道。編程是個手藝活,手熟是一切的基礎,所以抱著一本書或者一套視頻啃完是非常不可取的,學一點就要寫寫練手的程序。視頻教程特別具有欺騙性,看老師行雲流水地演示,對著暫停的屏幕自己抄一遍順利出了正確結果,就以為自己也會了;關上視頻看還記得多少?立即就發現記憶里缺很多細節。所以哪新學的語言元素寫練習程序是學會編程的唯一途徑。對於心急的初學者,學到能夠自己不查書寫出在字元串數組裡找到輸入的字元串,基本就有足夠的表達能力去書寫所需要的邏輯了。上面這段話我不是說看視頻不好,看視頻學習其實比單純的看書學習跟好更容易入門,我說這些話的意思是你必須配合自己的實操,必須自己動手去練習並且轉化成自己的東西,關於Java和軟體測試方面的入門學習視頻課程也可以前往http://www.woniuxy.com學習,完全免費的。語言入門之後,就可以試著寫點自己感興趣的東西,語言肯定還不夠熟,所以手邊準備一本語言參考書隨時備查吧。要自己寫點東西,難免碰到一大堆平台、系統相關的背景知識,有時間找本入門本書或者課程系統學一下基本概念最好,比如 O』Reilly 的 up and running 系列就挺好,Lynda 有很多編程方面的入門視頻非常適合建感性認識。有條件報個短期培訓班也是不錯的,未必培訓班能講得多好,有人帶的話,入門比自己亂撞還是容易點兒。剛開始實際寫程序,必然各種出錯,碰到問題不要怕,要學會看出錯信息,看不明白拿著完整的出錯信息去網上查,問別人的時候儘可能提供詳細的信息,盡最大努力不要讓別人猜,這樣得到幫助的可能性會大很多。順便說一聲,查技術問題還是 Google 比較好使。直接上網查你想要實現的代碼抄過來用可能也不錯。最後就是要多交朋友,身邊有高手可以請教是最好的,到網上論壇里混個臉熟也是不錯的,國內的 csdn、v2ex、segmentfault 都不錯,國外的 stackoverflow 找問題很不錯但是對初學者提問非常不友好。總結一下,學編程是為了解決問題,把你的問題分解細化,讓它一步一步驅動你的學習過程,學起來就沒那麼難啦。
註:希望繼續在IT行業突破提升自己的各位朋友,歡迎加群384053806,不管你自我感覺牛不牛B。
當然適合
我差不多也是23歲學的編程(過完年24周歲),大專學歷 文科專業。
2014年1月開始自學找第一份工作也花了很多時間,差點想放棄有的時候每天只吃一頓,覺得自己有點對不起父母2014.7.22
第一份工作 薪水3.5K,試用期3K,三個月轉正。 實際- 兩個月轉正 轉正薪資 5.5K 到2015.1月 8K2015.6.23 跳槽到現在公司 目前稅前15K我自學的是Java
工作期間干過Java、前端、Android、伺服器開發等,什麼都是現學現賣。
學習這個也算是破釜沉舟了
我的計劃是5月份左右開始找工作的 當時自己工作掙的錢也花差不多了。畢竟長大了,也是個男人。也不想厚著臉皮跟家裡人要。2014年的春節都沒回家。說實話真正覺得入門編程的還是工作之後,
自學的那段時間學的東西都很模糊,找工作的時候也是處處碰壁,非本專業的還是自學真的很難有人要你。先把基礎學好,面試的時候多看葵花寶典。先找到工作,薪水底點沒關係,有了實踐了成長才快。這個問題知乎上已經問過很多次了。 作為曾經的關注者,忠告你一句,隨便看個比較靠譜的答案,關掉知乎,行動起來才是正路。
哈哈!我就是一個零基礎自學編程的人!我就講講自己的感受吧!
首先要一點是自學編程要有足夠的興趣。曾經不久傳聞美國監獄試驗讓一些犯人們學習編程,結果學了編程的犯人再次犯罪的概率比一般犯人小了不少,而原因卻是他們再也不想學編程了 ……當然編程其實也沒有那麼痛苦,但編程的確是一件相對比較複雜麻煩的事情,終於能把程序運行起來了輸出想要結果了當然很興奮開心爽,但在這之前你可能需要想一堆複雜的邏輯,寫一大片編程語言,解決一坨稀奇古怪的錯誤………如果沒有足夠的興趣的話真的很難堅持下來。所以在正式如坑編程之前,最好確認自己真的想編程。當然如果自學到一半覺得很痛苦的話再退出也不遲哈!貌似一開頭就說這種喪氣話不太好呵,不過我相信真正有興趣的人應該不會因此就放棄吧!
編程最大的樂趣在於可以自己設計各種邏輯,自己定規則,什麼軟體應用遊戲啦都能自己做。一台電腦(手機)在面前你就可以玩出千百花樣(還能裝B )。 不過因為很多專業化程度比較高的平台都把圖形庫做得比較複雜,導致很多初學者在相當一段時間內只能面對一個黑洞洞的命令行(尤其是學C語言的),看著信息一行一行地輸入和輸出。其實我個人覺得這樣很不爽有木有,用命令行連個貪吃蛇之類的小遊戲都沒法開發(因為不能畫圖呃……),一點都不好玩了。所以我建議初學者要盡量學習一些圖形和UI比較容易調用的語言和平台,請看下一段。 關於自學編程該從什麼開始入門,應該有這麼一些要注意的。 首先不必太注意入門的語言是否厲害是否有用。我深有體會的一點是:入門前後是兩個世界。入門是我最燒腦最難的階段,要啃一堆不知所云的代碼,還要理解,非常痛苦(這就是為什麼我說要有足夠的興趣)……而入門後就會發現這些東西都是小case,那些代碼啥的隨手就寫,編程思維也如泉涌,此時如果再去學其他編程語言的話會感覺比入門學第一門語言時要容易得多,因為不同語言的很多東西都是相通的。 所以我建議,入門就應該先選擇一門又簡單又有趣的語言,能讓你的代碼方便地看得見(不要整天對著黑框框),還要避免各種麻煩,搭建開發環境要盡量簡單。這樣才能減少入門時燒腦的程度,不至於那麼痛苦 。這麼看的話其實有這麼些入門選擇:VB, python, actionscript3(我的入門語言), javascript等。其實說句實話我覺得java不適合初學者入門,因為java的面向對象太複雜,但看你說想做安卓開發,其實學安卓的java倒也可以(我現在就在做安卓開發,有興趣可以@我 ),不過java和android的框架真的很復(惡)雜(心),做好心理準備 ……接下來就講講學習方法吧。
首先對於零基礎的人而言一本書是不可少的,像什麼《xx從入門到精通》、《xx自學筆記》啥的都不錯。因為這種書的知識一般比較系統,有助於學習。建議買一本(電子書也行)。除了這些書以外還有一本必須讀的東西就是API,API就相當於是官方提供的詳細說明書,所有東西的使用方法和注意事項在API里幾乎都有。不過API是要有一定語言基礎才能讀懂的,所以最初期應該用不到。其次就是一定要好好利用搜索引擎(x度你懂的),當你遇到什麼不懂的解決不了的問題時搜索一下八成能找到答案。這對學習非常有幫助。x度知道,某貼吧,csdn等社區也不錯。另外這個就是我自己的學習方法啦。在學習新知識的時候(例如學習了一個類的相關知識),要掌握和記住它最好的方法莫過於寫一個示常式序。就是寫一個程序,在裡面運用了這個新學習的東西,並且運行成功了。這樣等下次你要用這個功能的時候忘了,就可以打開示常式序,一看這些你自己曾經寫的代碼,你全知道該怎麼寫了。該方法屢試不爽,直到現在在我接觸新技術的時候也會趨向於先寫示例文件熟悉熟悉再作用。所以大概就是這麼多了吧,希望你編程快樂啦!培訓班是最快的,但在此之前你首先嘗試著自學三個月。
最近,很多小白問我怎樣學編程,對編程有興趣但無從下手,這是個龐大到讓大神們「無言以對」的命題。我特此整理一些經驗,希望可以讓大家在學編程的路上少走彎路!
1、決定學,要有興趣並且是真正的下定決心
興趣和耐心是老生常談的話題,小編不在此嘮叨,只要記住一點,現在程序員工資差異很大,有能力的程序員享受高薪,但只是略懂的偽程序員可能找不到工作,如果想靠敲代碼生存生活,就在興趣的基礎上認真學習。
2、學什麼,編程語言的選擇也是初學者的困擾
語言只是工具而已,假以時日,每個程序員都能熟練掌握一門甚至多門語言,也會隨著技術的發展學習最新、最方便的新語言,相比語言解決問題的思路和方法更為重要。
但作為初學者,C和Python是最被認可適合初學者的編程語言,但由於它們自身的特點,這兩種語言也有一定程度上的對立性,當然其它語言也有被選擇的理由。
C語言入門門檻較高,學習難度相對較大,但許多語言都受到C的影響,基本概念的東西理念通用,學會了C能打下紮實的編程基礎,也降低了以後學習其他語言的難度,總之學習C語言是先苦後甜,剛開始要對自己狠心。
選擇C的原因:
1、大部分的數據結構、演算法都是C語言寫的;
2、藉助C能夠學習更多的計算機知識,了解計算機,了解底層;
3、C語言是永恆的,門檻高但是以後受用無窮;
4、C 的設計是 Unix 哲學的體現,薄封裝、透明、緊湊、一致等體現得淋漓盡致。
不選擇C的原因:
1. C貼近底層, 所以可能會讓你過早地陷入底層的細節, 但是底層的細節並非普適的這與解決問題的思路學習相悖;
2、難度相對大,不容易看到成效,不利於初學者堅持學習。
Python對初學者比較友好,相對容易,功能也比較全面,容易看到效果,減少初學者的厭煩情緒。
選擇Python的原因:
1、功能很強大拓展很廣,上得web、下得腳本、畫得了gui、當得了伺服器;
2、語法簡單什麼平台都支持;
3、省略了很多細枝末節,更容易理解;
4、Python基於清晰的語法和直觀的問題解決方案,還有其強大的跨平台GUI工具,能激起許多初學者的興趣。
不選Python的原因:
容易造成基礎差,到後面會有很多基礎底層的概念混亂。
3、怎麼學
編程是操作性很強的一門知識,看書少不了,但只有學習和實踐相結合才能起到很好的效果,一種學習方法是看書-&>研究書中例子-&>自己做些東西-&>網上找資料-&>看書。
研究經典教程是學習許多知識的重要方法,但看書一定要看透,學C語言時一直看到所有C的入門書籍都沒有新語法。非科班出生最好先閱讀一些計算機原理和基礎知識方面的書籍,利於以後各種知識的融會貫通。
編程語言的教程各種平台上都有很多介紹,也有各種推薦,我建議多看一些推薦,每個人都推薦的效果應該不錯。
C語言開發入門教程
本書共12章。
第1章主要講解了計算機語言方面的知識以及C語言在未來行業中的眾多用途。
第2~5章主要講解了C語言的基礎知識,包括數據類型、運算符、流程式控制制、函數、數組,學好這些知識對後續的學習至關重要。
第6~11章分別講解了指針、字元串、預處理、結構體和共用體、基本數據結構、文件操作,這些知識是C語言中最核心的內容,熟練掌握這些知識,可以使程序開發更加得心應手。
第12章為項目實戰,結合前面所學的基礎知識,開發一個學生成績管理系統。
Python快速編程入門
本書以Window平台、系統全面的講解了Python3的基礎知識。
第1章主要是帶領大家認識Python;
第2章主要針對Python的基礎語法進行講解;
第3章主要介紹的是Python中的常用語句;
第4~5章主要介紹了字元串、列表、元組、字典等類型;
第6~7章講解了函數的基礎和高級知識。
第8章講解了Python中的文件操作;
第9章講解了Python中異常的相關知識;
第10章講解了Python中的模塊;
第11~12章側重講解了面向對象編程思想;
第13章圍繞著面向對象的編程思想,開發了一個飛機大戰的小遊戲。
有了入門書籍,也只是打怪時準備好了裝備,想要成為一名合格甚至優秀的程序員還有更多的路要走。具體該怎麼學習,學習了初級知識後怎麼擴展、補充、提高,如何提高作為一名程序員的職業修養,都是編程小白們必將面對的問題,感興趣的小夥伴可以關注我,我會在後續為大家分享相關經驗。
文末為大家奉上兩張學習路線圖,跟著此圖一步一步學習,你也一定可以成為大牛的!
Python學習路線圖:
C語言學習路線圖:
想了解更多的IT行業資訊可以關注我哦!
我差不多就是23歲自學的程序。
由於自學,還是先從簡單的學起。html,css,js然後學php。到現在快3年了,基本技術成型了。其實學起來最多的還是靠的自己的興趣,以及來自生活的壓力。學習過程中,不斷的學會新的技能讓我很有成就感。特別是有天遇到一個問題,從晚上9點就開始想各種辦法,等到早上7點解決的時候,心裏面真的是興奮與成就感爆棚。講真,沒有基礎,全自學還給自己定3個月後去尋找offer是比較困難的。我是大學畢業有基本的vb編程基礎後參加了半年的編程培訓班後正式成為程序員的,大學專業也和編程沒有絲毫的關係。&
我想我可以和你說下自學大概會遇到的問題:1.你可能不太清楚你適合的方向,不過你傾向於Android,這也算是個不錯的方向。但是想寫出真正有用的Android代碼JAVA的功底一定要是有的。2.你可能會被開發環境問題困擾好一陣子,學習編碼一定要在自己的電腦上搭好環境,比如Android和JAVA就一定要先裝好JDK,還有最好使用現在企業中流行的IDE來編程,而不是使用記事本。3.自學一定是要有一本起點低的系統的教材,可別聽那些一上來就推薦《演算法導論》什麼的,那種書是以在你入門一兩年後提升自己時閱讀的,有一本合適的書再配上現在網上許多的視頻教程和專題博客可能是你前期解決問題的重要途徑。4.可能你自學的知識點已經是被淘汰的技術,這個真的不好說,現在技術更新換代太快了,之所以IT行業工作相對較高就是因為大家一直需要區學習新的東西。5.三個月時間太短了,當然每個人的學習能力和行動力不一樣,我也相信有人可以在三個月時間就達到可以參加工作的水平。但是也有可能3個月後發現自己掌握的東西太不系統了,這時候你會糾結是按計划去尋找offer還是再學一段時間,我建議如果真時真是這個狀況,那就先去尋找offer,剛開始要求可以低一些,到公司里還保持努力學習的態度會進步很快的。&
在自學期間如果有認識的程序員朋友多問多了解會有很大幫助的。如果經濟情況允許的話參加補習班也是個不錯的選擇,有些門檻別人會幫你跨過去。&
回答一下你最後提到的問題,如果你已經達到了可以參加工作的水平,確實是到大城市有利於發展,畢竟公司格局和薪資水平都不在一個層次。&
最後想說,現在這個社會一個受的了苦,耐得住孤獨,肯學,有學習能力的人一定會成功的。
要學就去做,沒人生下來就會編程。你的努力程度決定你的水平高低。沒有捷徑。資料都在網上。學會Google,找到興趣,編程可以做很多事情,你想做什麼?學習方式,有書,有視頻,有培訓機構。找到合適自己的。加油
我現在,作為從業者,也是和你現在經歷相仿的人,對於這行業外面傳言的幾點謬論做更正,看完後如果你還有興趣,可以考慮入行。 1.忘掉那些多少天就精通的宣言,那種最多能讓你入門,很淺顯的入門。 2.大學關於計算機的課程真的不是擺設,如果你想走深入,那些是你必須要了解的。 3.這行工資不是你想像的那麼高,工作那麼好找,現在已經不是那個會點html就能月薪過萬的年代了。 4.這行的枯燥程度是你無法想像的,如果你沒有十足的興趣,沒辦法全心投入一件事的話,你是無法堅持下來的。 5.編程開發和電腦的關係僅限於:用電腦寫東西和用電腦運行東西,目的是提供便捷的解決方案。6.關於你的問題的答案,3個月培訓找offer的話希望不大,或者會有薪資達不到你的預期。這行的城市越發達的城市,崗位越多,人也越多,看你選擇。
我正在教自家文科妹子學python,經過自己的加工和整理,寫了一個連載,歡迎大家關注和指正:
專欄鏈接:給妹子講python,歡迎大家關注,提意見!
是的,這可能是比如何自學更難的送命題。。。
畢竟文科妹子沒有太多的計算機基礎,因此最開始應避免接觸任何計算機系統層面的知識,只需要簡單的運用一些邏輯知識就可以了,以免徒增學習坡度。應該選擇那些封裝良好,介面豐富,語法難度小的高級語言,最好是覺得自己就像是在寫英文一樣,那自然不用說:
就拿python入手吧!!!
在學習的過程中,我覺得應該採用引導式的情景學習法,不要感覺自己一開始就面對大部頭的語法書在啃,那很快就會扔在一邊。應該時刻都能感受到:
嗯,又學到了一些東西啦,而且馬上能用上~開心
而且,作為一個妹子,情緒往往不穩定,面對「學習」,這個不如逛吃逛吃那般有趣的活動,難免情緒波動,時刻有發生情緒轉移的風險,你懂的。。。。當然很多自學的童鞋也會有此問題,畢竟學習是件苦活。
所以,我想讓學習的過程變得好受一些,於是設置了一種兩人聊天對話的形式,我需要把python切割成一個個小的邏輯獨立的語言點,將他們融入到了一問一答的兩人對話中。一邊聊著天,一邊學編程,還順帶著升華了革命的友誼。一步一步的,既能幹貨滿滿,又能讓妹子始終保持學習熱情,這個是很重要的。
目前,我就在按我的想法教妹子學python,也給大家提供一個自學的思路吧。並作為一個隨筆把這個過程記錄下來,分享在了知乎里,也歡迎大家一起討論進步~~
三個月你只有去報培訓班了,除非你學習能力超強,但是如果學習能力超強你就自學成才了。
編程真心不是:你學了拳法,腿法,膝法,你就能打崑崙決!
編程真心不是:掌握了Abcdefg,就能英文讀寫聽說如魚得水!編程是學會了拳法,腿法,膝法,然後每天揮拳,踢腿,撞膝上萬次的訓練持續多年,方可擂台一戰的!三個月的時間想學會Java?
如果經濟情況允許的話你可以報個培訓班北大青島或者達內,他們每年都會有這種java零基礎速成的培養,,如果你一點基礎都沒有,這個過程會是非常艱辛的過程,樓主一定要做好心理準備。而且,我估計其實三個月的時間也學不到太多。好好學入門應該是沒問題,
學Java之前最好看一些C語言的書,C語言是比較基礎的編程語言,對你學好Java會有幫助。另: 一二線城市對會三種語言以上並且有堅實的演算法基礎的的程序員還是有大量需求的,樓主可以向著這個方向去努力推薦閱讀:
※在人群中高喊 『OK, Google』 是一種怎樣的體驗?
※韓系旗艦 三星S6 系列 和 LG G4,如何對比?是否值得入手?
※自學安卓開發,如何找到第一份工作?
※迄今為止,安卓端畫質最好的遊戲~?