聊聊如何从零开始自学编程
閱讀本文大概需要 6.6 分鐘。
編程門檻其實(shí)并不高,自學(xué)幾個(gè)月就可以入門,但是初級(jí)程序員進(jìn)階卻很難,需要學(xué)的知識(shí)很多很多。所以自學(xué)編程想入門,很簡(jiǎn)單,只要自己能努力,能堅(jiān)持,幾個(gè)月以后你就已經(jīng)在路上了。盡管這個(gè)過(guò)程很難,你會(huì)迷茫、困惑,但是你要堅(jiān)信努力必將有結(jié)果。
掌握基礎(chǔ)的語(yǔ)法
我們最終目的是盡快的學(xué)完相關(guān)知識(shí),然后找到一份工作,進(jìn)入這個(gè)行業(yè)。我們這里的方法就是快速掌握知識(shí)運(yùn)用。但是開(kāi)發(fā)的這個(gè)行業(yè)你其實(shí)需要學(xué)習(xí)的知識(shí)實(shí)在太多太多,但是普通公司的一個(gè)初級(jí)工程師只要能保證會(huì)用業(yè)內(nèi)通用的框架,能解決的基本的業(yè)務(wù)問(wèn)題就好。所以我們這里學(xué)習(xí)過(guò)程必須的先做減法。這個(gè)過(guò)程中我們先不用去學(xué)習(xí)算法,框架源碼什么的,先去學(xué)習(xí)工作中需要用到的知識(shí),等我們進(jìn)入行業(yè)再去學(xué)習(xí)。
自學(xué)的第一步,我們先掌握語(yǔ)言的基本知識(shí)點(diǎn)。我們下面拿 Java 舉例。
學(xué)習(xí) Java,推薦使用視頻加書籍學(xué)習(xí)。視頻資源可以去慕課網(wǎng),網(wǎng)易云課堂尋找,這個(gè)不展開(kāi)敘述。至于書籍,這里推薦 「Java核心技術(shù)(卷1):基礎(chǔ)知識(shí)」,「Java編程思想」。兩本書都是經(jīng)典好書,尤其后面一本更是經(jīng)典中經(jīng)典。這里切記一點(diǎn),切勿買 「xx 入門到精通」、「21 天帶你學(xué)會(huì) xx」 系列書籍,盡管這類書籍銷量很好。
不推薦直接看書學(xué)習(xí)。因?yàn)槟闳绻麊渭兛磿?#xff0c;你很容易會(huì)困乏,而且很容易抓不住重點(diǎn)。這個(gè)過(guò)程很容易會(huì)讓你失去興趣。而結(jié)合視頻學(xué)習(xí),你可以跟視頻進(jìn)度學(xué)習(xí),進(jìn)而能掌握自己大概學(xué)習(xí)進(jìn)度。這個(gè)學(xué)習(xí)過(guò)程中,你先看完視頻,然后動(dòng)手練習(xí)視頻中的代碼。
一定要?jiǎng)邮志毩?xí)!
一定要?jiǎng)邮志毩?xí)!
一定要?jiǎng)邮志毩?xí)!
代碼是需要?jiǎng)邮志毩?xí),才能孰生巧。
學(xué)完 Java 基礎(chǔ),用學(xué)的知識(shí)去完成一個(gè)小項(xiàng)目,這里會(huì)讓自己有些小成就,這樣能更好學(xué)下去。
Java 基礎(chǔ)知識(shí)不用去學(xué) awt,swing 等圖形化編程。
如果這第一步都堅(jiān)持不下來(lái),那其實(shí)真的放棄吧。后面你只會(huì)越學(xué)越困難
聊聊選擇的問(wèn)題
自學(xué)第二步,選擇從事的方向。
學(xué)完 Java 基礎(chǔ),你就面臨自己以后需要從事開(kāi)發(fā)的方向。如 Java 來(lái)說(shuō),一般分為服務(wù)段開(kāi)發(fā)與客戶端開(kāi)發(fā),方向不同,接下去學(xué)的知識(shí)點(diǎn)就會(huì)不同。所以這里選擇需要慎重思考。
這里可以使用一個(gè)方法,我們從事件的價(jià)值出發(fā),列出一個(gè)優(yōu)缺清單表。比如你要選擇服務(wù)端開(kāi)發(fā)還是客戶端開(kāi)發(fā),你先去充分了解這兩個(gè)方向,然后列一分優(yōu)缺清單表格,把了解到每一個(gè)點(diǎn)都寫上去,打一個(gè)分?jǐn)?shù),分?jǐn)?shù)分為 -10 到 10 分。最后我們統(tǒng)計(jì)一個(gè)總分,然后那個(gè)分?jǐn)?shù)較高的方向。
掌握數(shù)據(jù)庫(kù)
由于本人從事服務(wù)端開(kāi)發(fā),下面說(shuō)說(shuō)服務(wù)端開(kāi)發(fā)學(xué)習(xí)的過(guò)程。
服務(wù)端開(kāi)發(fā),需要學(xué)習(xí)的東西會(huì)很多,不過(guò)不用擔(dān)心,我們一個(gè)個(gè)說(shuō)。
首先我們先說(shuō)數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)對(duì)于服務(wù)端開(kāi)發(fā),一定要學(xué)會(huì)的技術(shù),所以這個(gè)我們需要著重學(xué)習(xí)。
首先按照網(wǎng)上教程,自己在電腦上搭建一個(gè)數(shù)據(jù)庫(kù),這里推薦 MySQL。搭建之后,再下載一個(gè)數(shù)據(jù)庫(kù)客戶端管理工具,如 Navicat,DataGrip。弄完這些基礎(chǔ)設(shè)施之后,我們這里接著去學(xué)會(huì) SQL 的語(yǔ)法。這里著重學(xué)習(xí)單表增刪改查的語(yǔ)法,跨表的連接查詢等。網(wǎng)上找一個(gè)例子,如可以自己構(gòu)建一個(gè)學(xué)生課程信息表,做到可以用以上學(xué)習(xí)到的語(yǔ)法。
學(xué)習(xí)完數(shù)據(jù)庫(kù),接著我們就需要學(xué)習(xí)Java JDBC 的知識(shí)。學(xué)習(xí)的 JDBC 就是讓我們了解,如何使用 Java 操作數(shù)據(jù)庫(kù),運(yùn)行 Mybatis的增刪改查的語(yǔ)句。
接著我們可以去學(xué)習(xí)相關(guān) ORM 的框架,如 Hibernate 或 Mybatis,這里推薦 Mybatis。學(xué)習(xí)框架,我們要做到掌握框架的使用技巧就可以。
這個(gè)過(guò)程你可能會(huì)發(fā)現(xiàn),Mybatis 這類框架這么如此簡(jiǎn)化開(kāi)發(fā),為什么我們不直接學(xué)習(xí) Mybatis ?
學(xué)習(xí) JDBC 的目的,其實(shí)就是讓你了解這些 ORM 的基礎(chǔ)。
學(xué)完這個(gè)階段,我們接下去就要進(jìn)入 WEB 開(kāi)發(fā)。
WEB 開(kāi)發(fā)
這個(gè)過(guò)程我們首先學(xué)習(xí)一些前端知識(shí),如 HTML,CSS,JavaScript,然后再去 Jquery 等前端框架,做到能實(shí)現(xiàn)一些簡(jiǎn)單的功能。我們不需要跟你上面一樣精通,我們只要了解一些概念即可。
接下去我們學(xué)習(xí) Servlet,做到能使用原生 Servlet + Jsp 能運(yùn)行一個(gè) WEB 程序。
后面我們?cè)偃W(xué)習(xí) Spring 框架,使用 SpringMVC 了解 MVC 的概念。最后用 SpringMVC+Spring+Mybatis+MySQL 完成一個(gè)簡(jiǎn)單的管理系統(tǒng)。
其他
學(xué)完以上內(nèi)容,基本上已經(jīng)學(xué)習(xí)完工作中學(xué)習(xí)到的技術(shù)棧。這個(gè)過(guò)程你還需要額外學(xué)習(xí)一些工作中用到其他知識(shí)。
你需要去學(xué)習(xí)協(xié)同開(kāi)發(fā)的工具,如 Git,SVN。做到了解如何新建分支,如何拉取代碼,如何合并代碼即可。
你還需要去學(xué)習(xí)一些 Linux 的命令。
總結(jié)
學(xué)完上述內(nèi)容,你實(shí)際就已經(jīng)掌握初級(jí)開(kāi)發(fā)所需要的技術(shù),已經(jīng)基本上可以從事一個(gè)初級(jí)開(kāi)發(fā)的崗位。我們上面講的都是使用技巧,但是面試的時(shí)候可能會(huì)問(wèn)你一些原理性的內(nèi)容,所以在我們?nèi)フ夜ぷ髦拔覀冞€需要去了解一些原理性知識(shí)。這方面的內(nèi)容通過(guò)搜索引擎搜索即可。
這個(gè)過(guò)程你可能會(huì)碰到很多問(wèn)題,這個(gè)過(guò)程一定善于使用搜索引擎。
總結(jié)
以上是生活随笔為你收集整理的聊聊如何从零开始自学编程的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Readhat中作安全基线
- 下一篇: Flask爱家租房--房屋管理(获取房东