it編程自學
『壹』 想自學it,該怎麼學
想要自學it,得明白以下幾點
1. 應該選擇什麼編程語言
可能困擾編程新手最多的一個問題是【我應該學什麼編程語言】或者【我需要學習哪些課程才能做出一個web、一個app】,很多人一直糾結這個問題,陷入了東學一點、西看一點的死循環,到頭來啥也沒學好,這會很浪費時間。
剛上大一的時候,我也很想知道應該選擇什麼編程語言。我問了很多人,網上各種查資料,但所能得到的答案都很片面,多數對這個問題答非所問,總是回答說「某某編程語言難」,「某某編程語言性能好」。其實作為初學者,我們對計算機體系都不了解,就不要過多地去糾結性能,或者難易等因素,原因我等下再說。
如果你有明確的方向,那麼很好選擇。如果你想做演算法、機器學習方向,那麼python是最好的選擇。如果你想做web開發,java、php等都可以。如果想做一些更底層的工作,那麼就可以選c。當然這是建立在你有明確方向的基礎上。可是,很多人都沒怎麼接觸過計算機行業,特別是和我一樣剛入學就被調劑到計算機專業的人。對這些同學來說,各個編程語言就只是個名字,除了叫法不一樣,你根本不知道它們有什麼差別。所以索性不要糾結了,我替你選一個吧。
如果你是在校大學生,那麼你有大把連續的時間,就先學習c,然後再學c++。我個人是學c入門的,也許很多人不理解我為什麼推薦學c,因為c和c++都很難、很復雜,看起來並不適合入門。然而正是它們的難和復雜才能讓你更好地理解計算機系統【計算機系統不是指操作系統】。學習編程不是學習編程語言,而是學習一個計算機生態,即一個龐大的知識體系。只會編程語言而不理解整個計算機的體系,就像只會寫字而寫不出好文章。了解c/c++和了解計算機系統是極為貼合的,向下可以幫助你更容易地理解操作系統、編譯原理、計算機網路、計算機組成原理,為什麼呢?因為較為底層的東西很多都是用c實現的,和系統的貼合度極高,很多教材源碼甚至教程,在講述這些知識的時候都是用c或c++作為媒介。而向上,c++面向對象的機制,也可以做出一些應用,譬如五子棋游戲等,也不會顯得那麼枯燥。花個小半年時間了解c和c++,之後你就會覺得看書、看資料可以輕松很多。
如果你是一個上班族,但是剛剛學習編程,可能學c和c++對你來說有些復雜和困難,因為學習它們確實是很需要時間。你們不像在校生那樣有大把的連續時間,而零碎的時間去學習一個比較復雜的東西效果不見得有那麼好,所以可以先學一些【更容易見效】的編程語言,從python入手吧,至少能快速做出一些小應用,不至於丟失了興趣,但是真的要入門編程又還得看看與計算機系統相關的書籍,這樣才能更深層次地去編程,譬如【深入理解計算機系統】這一本書可以讀很多遍,這本書把整個計算機系統給串起來了。
2.學習編程,我需要學習哪些課程?
我要學哪些課程?我為什麼要學習如高數、離散數學、線性代數、概率論等課程?
這個問題也是之前困擾了我很久的問題。不過我現在想通了,對於【高數、離散、線性代數、概率論】等課程,很好解釋,做演算法的同學肯定知道為啥要學習這些課程。機器學習中會大量用到上述提到的課程,所以會比較好理解。對在校生而言,學校開設的很多課程我們不知道為什麼要學,我們很疑惑,不知道學它有什麼用,這個時候我們就會很糾結,還會產生抵觸情緒。這很正常,因為我們學習得不夠深入,自然不能理解它們的用處。
在我看來,大學本科課程更多的是面向「面」的教學,即什麼課程都教給你一些,但是又講得不那麼深入;而工作或者讀研,更多的則是面向「點」的學習,用到的知識更專。本科時,學校也不知道你以後是去搞演算法、還是搞架構、還是搞伺服器開發,甚至去搞硬體,所以學校需要你學很多課程,至少有個了解。對學生來說,一方面可以從中選擇自己感興趣的點;一方面也可以對未來的就業方向有些啟發。所以即使像數電、模電等課程,雖然之後可能用不著,但是你也要學,並且會花費大量的時間。雖然你最後不一定去搞硬體,但是這些課程也會讓你更容易去理解一些知識,比如cpu中的邏輯器件。
如果你在大一的時候就有一個明確的定位,知道自己今後想從事哪方面的工作,課程與課程之間是可以調一下優先順序的。不過像大學物理,這種課程確實是對編程沒有幫助,但是像我前面所說的,大學教育更注重廣度,大物等課程可能就是為了給你普及生活常識吧。
其實,大學教育的問題是普遍存在的,我認為我們學習一項技能的時候,應該採取的是項目驅動式學習,即需要用到什麼東西時不會了再去學,而不是先填鴨式的都填進腦子,並且在學習的過程中我們還不知道它這是幹嘛用的,等之後用到了,甚至不記得自己學過,反而查資料才會想起:哦,原來我之前學的xx科目是這個用處啊,可是我當時並沒有好好學。很多時候學生時間的浪費可能還是要怪老師、怪學校,他們一開始沒給我們做好充分的課程介紹。所以,在經過比較多的編程和項目實踐後,我認為一個比較好的學習方式是,改良版的項目驅動學習法。即:
學習一段時間,做個小項目,將做項目遇到的問題記下來,針對性地學習相關知識,然後再實踐,再學一段時間理論,讓知識成網狀發射狀地變大。當然,項目驅動式學習有一個弊端,就是每次學習的知識都是項目所需要的,很零碎、不成體系,所以需要改良,即在採取項目驅動學習法的時候每天抽一段時間去完整地讀一本書,或者一個相關問題的完整介紹,這樣就很容易把一些知識成體系地串起來。這樣一段時間下來,慢慢的,你就知道我們為什麼要學那麼多科目,學這些科目能幹什麼。
談到數據獲取,可能最容易想到的是爬蟲,爬蟲是一個在知乎上被說爛了的話題,所以我不想多說它是什麼。很多時候有人覺得爬蟲簡單,為什麼呢,因為有現成的框架,所以獲取少量的數據就比較容易。但是當你需要爬取的數據很大的時候(比如我之前抓取了知乎500萬用戶的數據,在下班的時間、用自己家裡普通的pc,計算機性能並不是那麼好,比不上伺服器,又要在不被封IP的情況下抓到這么大量的數據,然後對數據進行清洗,最後還要可視化展示),使用現成的爬蟲框架就並不是那麼容易實現了。況且,我需要抓很多數據源,並不是一錘子買賣。所以我選擇去開發一個系統,即在現有的框架下進行二次開發,搭建一個屬於自己的爬蟲系統,並植入一些演算法。我在系統中添加了很多中間件,直到現在,它還可以在10分鍾內就部署一個能抓取大量數據的爬蟲應用。
『貳』 如何自學IT
1、系統性地學
碎片化信息時代,知識往往以細碎的形式呈現,而這種邊角料無法幫你構建起知識體系。就像建房子,你東一塊西一塊地撿一堆磚,是根本搭不起房子來的。學Java也是如此,一開始就得搞清楚整個技術體系,明確具體的學習目標,然後才開始分階段一步步學。
畢竟人的精力有限,知識卻是無窮盡的。如果脫離體系「散學」,費時費力不說,還可能啥都學不好。
2、實踐性地學
很多同學還是保持在學校時的習慣,拚命看書看理論,就是不願意動手,妄想把理論學透之後就能後顧無憂。其實當你真正學的時候就會發現,實操比邏輯能力更重要。成為大牛的必經之路是夜以繼日地敲代碼,而不是只停留在理論和邏輯思維上。
代碼多敲幾遍,其義自見。
3、自覺性地學
學習是場持久戰,重在行動貴在堅持,短時間的突擊是沒有多大效果的。能否自學成功,很大程度上取決你能否堅持學下來。自學前,捫心自問下:我能在接下來的至少半年時間里,每天堅持學習6個小時以上嗎?
如果不能,並且很確定自己沒有這個自控力,那就果斷打消自學的念頭。<自學半個月,從入門到放棄> or <自學小半年,從入門到大牛>,選擇權在你手上。
『叄』 it編程自學網
摘要 親,校外要想學習編程,以下的網站可以參考,oeasy學軟體——oeasy系列互聯網軟體&編程相關教程。
『肆』 如何自學編程
自學編程要做到將編程作為自己的愛好、對自己的電腦了解、確定自己的編程語言、多看書,具體介紹如下:
1、要想真正學習一門知識,就要先盡量保持將其保持為一種愛好,才能一步一步的學習,還要保持耐心,不能為了成果跳躍學習。這兩句話很重要,請在任何時候都要記住,無論那一門課。
2、要對自己家的電腦有一個充分的了解,包括他的位數(64位,32位),內存,型號,和版本,如果要編程的話,一定要對電腦的各個功能有詳細的了解
3、先確定自己要學的編程語言,將其語言環境和編程工具准備好。入門最好使用c-free,或Java(要准備語言環境)入門或是深入都可以使用eclipse,python(要准備語言環境)可以使用editplus。
4、多在當地書城或是網上購買一些所學習的語言的書,可以輕松自學,當然如果你認為僅僅是文字並不夠生動,可以看看一些優秀的教學視頻,但千萬不要放棄書本。
注意事項:
1、明確學習目的 學習編程對大多數IT業人員來說都是非常有用的。
2、邏輯思維能力的培養,學程序設計要有一定的邏輯思維能力,「邏思力」的培養要長時間的實踐鍛煉。要想成為一名優秀的程序員,最重要的是掌握編程思想。
『伍』 零基礎學IT難不難
其實零基礎學百IT入門並不難,難的是堅持.有部分學生剛開始學的還不錯,隨著知識的深入,感覺越來越難,就沒有堅持努力下去,結果半途而廢度.還有同學以為報個培訓班,就可以高枕無憂了,上課不認真聽課,課下又不努力練習,結果只是學到皮毛,等就業的時候後悔不已.殊不知不管是高等院校還是培訓機構,老師教的是一種學習基礎和學習思維,真正的技能還是要靠自己去掌握.而且現在有很多程序員並非版科班出身,他們也是零基礎半路出家,隨著時間的積累,不斷總結工作經驗,才有了今天的成權功.因此零基礎學IT,並不難,只要我們堅定信念,腳踏實地的去努力學習,不斷積累經驗,相信我們的未來一定不會差.
『陸』 自學編程好還是專業老師指導的好
這個看個人能力了,如果你沒有基礎最好還是先學學再說吧有些東西不是你想學就能學的了的,還要有一定的機緣的,有些人學可能很感興趣,越是復雜自己越感興趣,甚至覺得有趣。
但是有些人可剛了解就感覺難,自己理解不了其中的邏輯性,基本入門都很難,就容易放棄自己的初衷,堅持是一個很重要的事情。
個人覺得前期入門你可以先自學一段時間,一段時間如果你理解不透了,而且還想繼續,個人建議你還是找個輔導班速成,可能有個老師一點你,你可能就懂了,但是自己去理解可能就比較費勁了。
為了節省時間,加速入門,個人條件允許的情況下個人還是建議你報班,你入門之後,提升學習能力,以後需要在不斷實踐中過得東西才可以。
以後也就知道如何學習了。後面提高就主要依靠自己的自學能力了。正所謂的師傅領進門,修行在個人了。
沒必要說單獨找老師指導,除非你有那樣的條件,否則個人建議還是報個人多的班,相對更合理一些。
『柒』 it培訓自學還是培訓
每個人有適合自己的學習方式,因人而異,自學和培訓各有各的優劣勢。考慮你想要學習的目的是什麼,只是作為一個興趣愛好,還是想進入IT行業。
一、自學:
①考慮下自己的學習理解能力如何?自律性高嗎?優勢是金錢成本較低,能夠按照自己設定的學習計劃進行學習,時間安排也比較自由;
②不足的地方也很明顯,自學消耗的時間較長,一般都是空閑之餘利用碎片化的時間來進行學習;缺乏實踐項目經驗。
③自學需要強大的自製力,遇到困難很容易導致半途而廢。
二、線下培訓:
①學習時間相對較短,整體學習比較全面,學習內容也比較集中。專業老師按照大綱進行系統授課,在學習中遇到技術問題能夠快速得到解決,同時還有專項的練習。
②相對於自學,學習氣氛更加濃厚,跟同期學員對問題的探討,對拓展思路有很大的幫助。並且像一些專業的培訓機構,培訓完後有相應的就業課程和就業指導,比起自學來說求職勝算更大。
③劣勢:培訓是需要金錢成本,還要加上學習期間的生活費,學習成本比較高。
IT技術雖然沒有想像中那麼難,但是也絕對不是那麼的容易,如果是對於一個0基礎沒有計算機功底的人,選擇培訓是一個比較快捷有效的途徑。
『捌』 怎麼學習IT
一、深入學習一門編程語言
沒有掌握任何一門編程語言,就不可能成為一名編程人員。許多程序員試圖在學習之初一次學習幾種編程語言,以便應對他們第一份軟體開發工作的需要,但建議不要在開始時這樣做。同時學習多種語言只會導致混亂,也會分散學習其它技能的精力。
二、學習組織代碼
新手程序員在完成編程語言的學習之後,或者最好在學習編程語言的同時,需要掌握的是如何正確的組織代碼。對於新手程序員來說,簡潔清晰且含義明確的代碼,能讓你輕松地通過面試。提升代碼結構已經成為了軟體開發的重要部分,但是提升的過程卻是十分嚴格的。在這個過程中,雖然不需要編寫新的代碼,但是卻需要和團隊成員一起花費大量時間來維護現有的代碼。
三、開發平台與相關技術
應該至少對一個開發平台以及與之相關的技術或框架有一定的經驗。具備某個特定平台的專業知識,不僅僅意味著需要熟悉平台本身,還需要掌握開發平台常用的開發工具、模式和通用框架。
『玖』 零基礎轉行IT編程應該怎麼學
在IT行業里,基本的幾個技術類職位分別是開發、設計、產品。至於管理崗,它不是一個職位,它是一個級別,任何一個崗位做到一定程度都是管理崗。首先要選擇一個適合自己的方向,比較好入門web前端開發、UI設計,市場對這些崗位的需求量都很大,而且像web這門技術語言,本身就具備入門快、上手容易、應用廣的特點,所以很適合轉行和零基礎的人學習。覺得自己智商高,邏輯能力強的小夥伴,可以考慮學游戲開發、Java大數據開發和分析、VR。
掌握正確的學習方法,零基礎學習IT技術是有技巧的,從模仿開始,建議不要只是看書,多進行操作演練,看到自己的成果,這樣會提升自信心,有些內容一時的不理解,可以記下來,在後面練習的時候就會迎刃而解。
如果想要快速轉行,通時有沒有很強的自製力,那麼一個靠譜的培訓機構將是不錯的選擇,短期的快速實訓能夠培養系統的開發思維,推薦u 就業。
『拾』 想自學編程,從事互聯網,IT方向的工作,可行性如何
可行!
IT行業可以說是相對而言門檻較低,薪資較高的行業之一,目前薪資最高的金融,IT,但是金融的門檻太高,基本上需要碩士以上學歷,而IT一般專科以上學歷即可。
你學習之後有沒有出路這個也只能看你自己,你也說了不要舉有天賦或者沒有天賦的例子,那麼你到底是什麼情況也只有自己最清楚。我也只有給你一些建議吧:
你自學需要有一個良好的規劃:
首先是對於行業的認知
目前很多人轉IT,但是IT也有很多的崗位,你需要對崗位的工作內容,工作環境,薪資,發展,入職要求等做好相應的了解。
其次給自己規劃適合的路線
前者提到IT崗位很多,那麼你自己想要從事什麼崗位,能從事什麼崗位,適合什麼崗位,以後你想要得到什麼,後續的發展路線是怎麼樣做好提前規劃。
時間安排
學習是持續性的,如果你太隨意那麼最終的學習效果也會很隨意。建議你可以提前規劃每天花多少時間用於學習,每天的學習內容是什麼,需要達到什麼樣的效果。
學習內容
可以參考各個培訓機構的學習路線,(基本上各個培訓機構官網都可以查到,你可以參考學習),如果沒找到滿意也可以私聊我給你一份我們蝸牛學院的學習大綱
學習資源
各大視頻網站:騰訊課堂,B站等實在找不到淘寶上面去買一套也行,價格不高。
學習方式
視頻+訓練+書籍的方式進行,期間可以加一些技術交流群,多逛逛技術論壇,如果能找到一些在從事行業能幫你解決問題的是最好。
學習過程是比較辛苦的,有很多從入門到放棄只需要幾天。希望你可以堅持下來,你也可以找幾個一起自學的夥伴相互監督(一定要是有正能量的),每天任務指標一定要完成一旦懈怠了那離放棄也不遠了