02.28 編程能不能自學?

河南新華1


小時候家裡窮,窮得連大學的學費都是親戚們湊的,而且本人讀的又非軟件開發專業。但是一個偶然的機會,接觸了編程。家裡沒錢買書買電腦,就靠蹭計算機專業同學的光走上了這條不歸路。後來工作了,先後學習了foxpro, powerbuild, asp, c #, php, js …等語言,mysql,mssql, Oracle,sybase, redis 等數據庫系統,從來沒有拜過師,上過培訓班,全是自學。

自學第一靠興趣,沒有由衷的興趣,就一定吃不了苦,受不住寂寞。第二靠動力,我的動力就是錢,才開始靠給別人做網站,辛苦大半月哪怕只有幾百塊心裡也是高興的,不貪心。等水平上去了,收入不就水漲船高了嘛。第三靠耐心,沒有耐心,就不細緻。bug 是不可避免的,不耐心細緻,容易出bug,出了bug 還不容易找。第四要科學,一口吃不成胖子,高手不是一天養成的,先易後難,做自己搞得定的事,容易有成就感。總是做太難的事,容易產生挫敗感,喪失信心。

要說的其實很多,一是說了你沒有體會難以理解,二是我編不下去了,其實我是個搬磚的。


碼農讀史


當然適合,我自己就是一個很好的例子,身邊的這樣自學的例子也很多。

就說說我吧,我在大學期間專業課程基本上都打了醬油,覺得老師講得太慢了,而且學的東西不足夠我去搞想搞的東西。因為從高中就喜歡黑客,大學期間就研究如何攻擊網吧無盤系統免費上網,玩傳奇,做外掛。當時學校裡學的編程語言是c,而我卻在自學c++。

老師領進門,修行在各人

在學校裡開設的計算機課程,基本上只是讓你瞭解、入門一門語言,更多的是關注機器和語言本身的東西,要做到靈活運用基本上需要個人在課下去不斷地練習,要多去運用學到的知識解決問題或去構建信息系統。

我曾在高中學foxpro時,為了練習,驗證自己掌握的知識,編寫了一個打字遊戲給全班同學玩,根據他們需求增加關卡和可玩性。

不管你是自學還是跟著老師,都需要為自己設定任務,通過掌握的知識點去實現。

入了計算機的行,你基本上每天都在學習

互聯網更新迭代太快了,工程師們也要不斷地學習才能應對這個世界的變化,你不僅需要跟上語言升級換代的節奏,還要在社區生態中去學習各種方法,工具,庫,標準等等。這些是每個工程師每天都要做的。

例如,剛開始接觸web編程是在07年,哪個時候JavaScript 執行的標準好象還是es4/5,而現在是es8,新增了很多的特性和api。你忽視,不去學習這些變化,你就沒法在今天還用es5的標準api去工作。


所以,勇敢地去學,先從零到一,再慢慢從一到100。

我是一名軟件架構師,安全研究員。覺得對你有幫助,請點擊關注,我會經常分享一些計算軟件,安全攻防等相關的知識。

空碼


作為一個軟件設計專業,職業是程序員的我來說,在五年的編程生涯中遇見自學編程並勝任工作的同事只有一位,其他的同事要麼本身是計算機專業,要麼是培訓機構學習出來的,這裡說一下他的自學經歷。



我不知道那個自學編程成才的同事是怎樣通過第一次軟件公司面試和描述簡歷的,但是半年的同事關係還是讓我知道了他是怎樣學習的,說實話,過程有點曲折。

這位同事本身是模具設計專業,畢業後在工廠整天面對一堆的鐵疙瘩,很多油並且很髒,於是他才萌生轉編程工作。



於是他上網搜索JAVA編程課程,因為沒人指導,不知道JAVA學習的系統知識,網絡上JAVA編程書籍是很多的,所以搜索得到的第一本書是很厚的那種JAVA語言編程基礎,這本書花了他半年的時間摸索,可是結果不理想,根本不能有效的進行編程,編程思路毫無頭緒,沒有方向感。



無奈之下他只好去培訓機構準備學習,不過學費高昂,只好放棄,但是在諮詢過程中倒是得到了JAVA學習系統的整套書籍名稱,於是回工廠繼續上班並下載了類似的整套學習內容,這點得感謝發達的網絡了,一個人自學是非常枯燥乏味的,而且回到各種不懂的問題,加上工作中偶爾出現的煩惱,這次花了兩年時間才堪堪學完。



學完就得找工作,同事沒有說怎麼進入的第一家軟件公司,但是說了進入公司後遇到很多問題無法解決,因為不是軟件專業,沒有完整的系統的知識,自學得到的東西似似而非,經常是一個小問題就會花上很多時間。所幸工作內容偏向維護,這正好是一個循序漸進的學習過程,在自己不斷花時間學習,並且不懂就問(得感謝遇到一個溫和的團隊)的情況下總算堅持了一年,這才有了對編程的一點點自信。



世界上有自學成才的人,有些人會非常厲害,但畢竟是少數,他們花的時間,經歷的困難不是我們這些在學校系統學習的人可以想像的,如果定下目標要自學,就得一心一意,堅持下去,只憑一時衝動是做不成的。

如果自學就做好心裡準備吧,努力了就不後悔。


小城的人


編程能不能自學?答案是肯定的,因為我就是自學出身的。

我是一個轉行進入編程行業的人,當然進入這個行業的原因大家不言自明瞭,我報名的時培訓的線下班,就是完全在家裡自學,等全部學完了在去考核,我是一邊工作一邊自學的,因為條件不允許我全職去學習,我學習基本上都是利用晚上下班時間學習,通過視頻和自己擼代碼一點點學習起來,學習的過程中問題都是會有的,我都是通過在度娘和同行的一些技術博客來解決問題的,學習是一件孤獨的事情,你需要能夠抵抗外面花花世界的誘惑,在家專心學習,只有這樣編程才是可以自學的,其實能不能自己自己的決心真的很關鍵,三天打魚兩天曬網是幹不好一件事情的,我現在雖然已經入職了,但是有時間我還是會不斷的在自學編程知識,一是因為真的有興趣,一是因為這個行業技術更新迭代的很快,你的止步不前只會讓你死在沙灘上。最後送大家一句話,我有次坐公交的時候偶然聽到的,一直縈繞在我腦海裡:“種一棵樹最好的時間是10年前,其次是現在”。


某內出身程序員


別的不敢說java網上太多教學視頻了。都是一套一套的。有點基礎自學真不難。沒基礎個人感覺只要數學沒啥問題。基本也就沒問題了。我當初上培訓班的時候的確遇到過怎麼教都不會的。而且筆記啥的記得最認真。沒事就去機房練習。但是他就是不會。理解不了。只死記硬背。。。


加瓦程序員


其實這要看你對編程會不會產生興趣,如果學了幾天感覺對編程有興趣,那麼,你一定能夠學好,而且會主動去鑽石,但是,如果你感覺到很枯燥,那麼恭喜你,你可以不用學了,因為這條路對於你走不長。但是話又說回來,興趣也是可以培養的,主要看你有沒有這方面的天賦和毅力,兩者共同決定了你的編程路有多寬和長。有些沒有接觸到計算機程序的同志,一聽到“編程”二字,兩眼發直,一臉懵懂,頓時四肢無力,口吐白沫,仰天長嘆:我太難了!其實編程沒有那麼可怕,也沒有那麼艱難,任何知識和技能只要認真去學,一切都是紙老虎,所以即使沒有接觸過程序代碼,大家也不要驚慌,只要堅持下去,終會有成功的一天。下面先簡單介紹幾款常用而且好用的編程軟件,大家可以根據自己的自身情況和平時工作的需要選擇適合自己的工具和編程語言。\r一、Microsoft Visual Basic 6.0\rVB可以高效、快速地開發Windows環境下功能強大、圖形界面豐富的軟件,該編程工具備受“非計算機專業人士”的青睞,語法簡單,窗體界面簡潔,容易學習和接受,通過自學完全沒問題,學編程就要從簡單學起,零基礎的同學可以先入門Visual Basic 6.0,而後再逐漸擴大自己的戰果。\r \r二、VB.NET\r在VB6.0的基礎上可以學習VB.NET,初學者會感到吃力,因為它雖然繼承了VB6.0的語法,但是很多函數已經讓你認不清它們。有VB基礎的可以學習VB.NET,畢竟它的後續力量要比VB6.0更有底氣。\r \r三、Microsoft Visual C#\rC#是兼顧系統開發和應用開發的最佳實用語言,有C++語言基礎的程序愛好者更加偏愛C#,因為C#綜合了VB簡單的可視化環境和高效的C++運行效率,無論做web開發,又或者是做客戶端開發,都比較方便,有許多大型網遊和遊戲都是它開發的。\r \r四、Microsoft Visual C++6.0\rVC++是微軟公司的C++編譯環境,用的是C++語言,它是一個功能強大但是不便使用的一種工具,支持可視化操作,使用它可以極大的提高編程速度,它的執行效率比C#要高,性能更好,它在網絡開發和多媒體開發表現突出,更適合做大型遊戲開發後臺。\r \r五、Delphi 7.0\rDelphi是一款可視化軟件開發工具。它使用的是Object Pascal語言,由傳統Pascal語言發展而來,但酷愛它的程序員更習慣把Object Pascal語言改稱為Delphi語言,和VC相比,Delphi更簡單、更易於掌握,而在功能上卻絲毫不遜色;和VB相比,Delphi功能更強大、更實用。\r \r六、JBuilder9.0\rJBuilder是針對java的開發工具,使用JBuilder將可以快速,有效的開發各類java應用,在可視化上做得到位簡潔。Java本身語言的特點使得他們在網絡開發中具有高人一等的表現,而且面向對象特性高,支持的組件技術也非常多,跨平臺的特性也使得它在現在和未來的開發中佔據越來越重要的地位。





懶豬學編程


自學編程非常靠譜。

但是不知道題主學習編程的用意何在,是為了轉行做程序開發工作,還是為了興趣呢?如果學習編程是為了更好地做好本職工作,這個出發點就太讚了。

學習程序,對工作最大的幫助就是可以減少重複的體力勞動。因為不知道題主的本職工作是做什麼的,所以我只能想到什麼說什麼了。

大多數職位都用到excel這個工具,很多人也應該知道里面會有很多內置的函數。如果自帶的函數滿足不了你,甚至可以編輯器寫自己的命令。這個用好了,再加上漂亮的模板,一定可以快速地出一份漂亮的報表。


如果你工作中需要做一些信息收集的工作,比如你是個獵頭,領導每天讓你收集100個軟件開發相關的崗位(我瞎想的例子,不一定準確)。你一個一個搜,然後在複製粘貼其實也很快,但是再快,這也是機械化的工作。這時候你只需要寫一個爬蟲,當然最好要會一些python啦。



和數據相關的話,當然也離不開數據庫了。所以數據庫最好也要了解一下,會寫點兒sql更好了。


現在互聯網這麼發達,沒必要去參加什麼培訓班,在網上查找一些視頻資料就可以了。如果可以接收花點兒小錢,也可以找一些付費的課程,但是太多資金的投入沒有必要。

祝你學習順利ヾノ≧∀≦)o


會點代碼的大叔


怎樣自學編程?且看:(文末贈送免費資源)

1.有決心

萬事開頭難,一開始下定決心學開發,肯定會怕失敗,怕浪費時間,記住,如果你想好了,一定要下定決心堅持下去!

2.學會上網搜索學習

自學程序開發的好處,就是IT資料在網上隨處可以搜到,自學起來很方便,比其他行業都要方便多了,記得時刻上網多查資料學習。

3.多看開源項目

編程,開源項目是非常重要的,可以從中得到很多知識,去GitHub或者碼雲上多搜搜相關的開源項目,看別人是怎麼寫的,自己學習一下,這樣進步是非常大的。

4.多做實際項目

開發來說,實際項目也是非常重要的,只有自己做實際項目,把所學的知識運用到實際項目中,才會越學越簡單,才會不容易忘記。

5.對開發有興趣

這一點是非常重要的,興趣是學習的動力,如果你本身對開發很感興趣,那麼相信自己,你學習起來肯定是事半功倍的!

6.要有自信

這一點,是最重要的,很多自學的小夥伴總覺得自己是自學的,基礎不紮實,不專業,最後找工作也心虛,自卑。其實完全不用這樣想!自學的,對於其他途徑的來說,最大的優點就是自己解決問題的能力和自我學習能力,如果你堅持下去,最後完全可以超越專業途徑學習的人。

7.給自學編程的夥伴提供一些學習資源 715集java+python學習教程

2019年最新Python400集教程

2019年最新java300集教程



轉發+好評後,私信小編:資料,系統即可自動回覆


編程界ET


首先答案是肯定的!!!

但是對應的還有一個答案是,自學編程和找培訓機構學習編程的難度肯定是不一樣的。

1.自學編程的心理準備

環境不會搭建,知識點太多,定義概念,語句格式,語法邏輯搞不懂,按照代碼敲完報錯,刪改半天的代碼一運行就報紅,學了很久還覺得沒入門,錯誤解決不了想要放棄。“孤獨”

2.對於自學編程的一點建議(選擇培訓班也需要注意這些問題)

①代碼一定要多敲,代碼一定要多敲,代碼一定要多敲!!!(重要的事說三遍)剛學編程有個很常見的問題,很多東西敲完就忘,下次遇到還得翻資料

②多看官方文檔,別拿英語不行當藉口,編程多少得會點英語,至少以後命名變量不會再用abcd。

③多做筆記積累經驗,做好思維導圖,理清邏輯。

④多做項目實例,理論是實踐的基石,做好了理論的訓練,就可以在實戰中積累經驗,發現一些理論中難以遇到的問題。

⑤選好方向,初入編程時常迷茫的就是編程能做什麼,許多方向,網站建設,網絡安全,全棧…往一個方向努力,才不至於過早的放棄。


info南


你好,本人目前是一名專業的開發,大學專業也是對口的軟件工程,從開始學習到現在工作也已經四五年了,在編程路上也算是各種問題都遇到了,也看過很多人學編程的歷程和結果。

自學編程不是不可以,但是還是要有一些前提。首先是學歷,最低都要高中以上,因為編程本身對英語有要求,同時也對數學有要求,要是沒有達到這個要求,勸你還是放棄吧。

另外你大學本身如果不再計算機相關的專業,學習編程也是一件比較難的事情,我不知道題主你現在的狀態,要是是在校學生,建議轉專業到計算機,或者自行苦力研究,打好語言基礎,還是很有機會學好編程的。如果是已經在工作的人員,這種轉型對你的挑戰很大。

另外如果你身就是計算機界,或者計算機專業的人,那麼恭喜你,你自學編程應該不難,因為你一定有了c語言、計算機網絡、算法數據結構等基礎,又接觸不少的計算機同學或者同事,只要勤於編碼,重視理論,終會學好編程的!

回答都在這裡了,看你選擇吧,謝謝!


分享到:


相關文章: