非科班·零基础的自学前端之路

https://zhuanlan.zhihu.com/p/27113349

写在最前面的话:

历时八个月的学习,终于找到了第一份前端的工作。在此我满怀着感激与激动的心情,感激这一路上帮助过我的每一位引路人。

2017/07/27 工作后感悟和补充:

很多人,包括我自己在接触编程的前夕都有考虑是否要去报个培训班。

直到现在我想说的是,我们的终点都是差不太多的,我们只是选择走什么路线达到终点。

能不能达到终点不是取决于选了什么路线,而是取决于自己。

我们将学习拆解为内外条件:

外部条件即资源、学习方式、方法、机遇......

内部条件即自我驱动、总结归纳知识、理解力、专注度、自我解决问题、独立思考......

当你的内部条件不充分的时候,哪怕是给人在背后用皮鞭鞭挞,大神360度24小时无死角环绕式洗脑教学。你仍然不具备一个程序员应该有的基础素养,脱离了有答案的日子后,那你的答案又该从何处寻找?

所以在学习过程中,经验和知识固然很重要,但这伴随着你学习获得的能力,是决定了你成就高度的因素。我不是鄙视培训,我只是觉得,如果你拥有这些能力,那500块就能学到的知识,为什么还要去花20000+呢?

最后套用一句老话,“练拳不练功,到老一场空”。

正文开始:

静心学习,抵制浮夸。 ——Victor.Chan-278

我工商管理毕业的,之前没有接触过半点编程知识。对编程的理解就停留大学买了本C语言的教科书然后,嗯,看了几页吧。工作了几年,经历了很多后,最后还是踏上了程序员这条大路上,原因不细表,每个人的选择都有自己的理由。以下为我的从0基础自学以来的所思所想,希望可以给各位同样挣扎在这个阶段的朋友们带来一点参考。

1、开始学习前端的前夕:

1)首先我列举了开发人员的需要的特性:

①对新事物,新知识保持高度的热诚;

②热爱开发,热爱计算机(不只是玩游戏);

③足够的专注力;

④清晰的逻辑思路,擅长总结分析;

⑤自我独立解决和思考问题的能力;

2)然后我要将开发人员需要的特性与自身的特性作比较;

①真诚的分析自己,是不是符合上述的条件;

②如果自己有不符合的地方,自己是否有足够的毅力和决心能克服和改变;

③自己克服和改变需要耗费的时长,付出和投入的比例;

3)选择一门语言

①去了解市面上的语言;

②每一门语言的用途,特点;

③选择自己喜欢的;

4)制定好学习的计划,细化:

①制定好阶段性的学习进度。我规划自己大概需要一年的时间完成初级前端的学习。

列举知识列表:

基础知识:HTML、CSS、JavaScript;

进阶:JQuery,HTML5,CSS3,ES6,框架;

附带的知识:HTTP协议,AJAX;

首先初步制定自己每一块知识大概耗时需要多久:

举个例子HTML+CSS我规定自己2个月内要初步掌握布局,样式的编写,能独立制作或仿制网站。后续的知识如果暂不知道是什么,需要多久,可以暂时不制定,可以了解后再制定。

②制定每一天的学习进度(个人计划,仅供参考):

06:00~06:10:洗漱,放空

06:10~06:15:做一下俯卧撑

06:15~07:00:阅读书籍

07:00~08:30:去上班的路上看书

18:00~19:00:回家的路上看书

19:00~19:30:吃晚饭,加收拾

19:30~20:30:阅读书籍

20:30~22:30:敲代码

22:30~23:00:洗澡,玩手机

23:00~23:30:睡觉

③坚定不移的执行,如果有意外了就随时灵活的调整,边工作边自学本来时间就会很少,只能去挤自己一切可能的时间去完成自己的计划。

2.学习前端进行时:

1)学习基础阶段:

①HTML+CSS:

阅读书籍《Head First HTML与CSS》。虽然书本的征订,出版会导致技术书籍没办法得到第一时间的更新。但是书本是系统获取知识的最佳途径,因为经过严格的编排,才能让你在阅读的过程中去逐渐的掌握知识的每一个细节。基础知识很杂、很多、很细,一个视频所容纳的信息量是有限的,它没有办法将很零碎的知识全部都讲解一遍。在没有基础的情况下,这些零碎的知识恰恰是非常非常重要。

登录FreecodeCamp进行攻略页面的题目以及对知识进行梳理;

登录百度IFE来进行前端页面的Demo练手;

理解浮动的原理;

理解定位的方式和原理;

理解语义化,表现和结构分离,养成良好的代码习惯;

掌握双飞翼布局、圣杯布局、响应式布局、Flex;

做好每日学习笔记总结;

②JavaScript:

阅读书籍《JavaScript高级程序设计第三版》、

《JavaScript权威指南》、

《你所不知道的JavaScript》上卷、

《JavaScript DOM编程艺术》

登录FreecodeCamp进行攻略JS的题目以及对知识进行梳理;

登录百度IFE来进行JS的Demo练手;

理解作用域,原型,闭包,DOM操作;

学会自己打断点调试,查错;

③学习中的细节:

遇到难题:

遇到难题,自己要先思考,想大概要用什么知识,然后去有针对性的查询这些知识是怎么用的,然后回顾过来再想如何解决我现在面对的难题。如果想不到,再去百度、谷歌,看答案的时候也需要思考,为什么可以解决,通过什么方法。然后去学习,去总结。

**千万不要直接问人这个应该怎么做,学习提问的艺术?

学会改良,拒绝妥协:拒接一切耦合的代码,学会不断学习新知识后去改良以前写的代码;

其实到这里我真的不知道写什么好了,就像小说里说的一样,学剑很难吗?你砍个一千遍一万遍不就会了。编程也一样,不会,你写个一千遍一万遍,思考个一万遍,再难都给你学会了。

原文发布于微信公众号 - 程序员宝库(chengxuyuanbaoku)

原文发表时间:2018-07-06

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏新智元

Guido 转身离去,Python 何去何从?

【新智元导读】Python之父Guido van Rossum因最近的“PEP 572”事件宣布放弃他在Python社区“仁慈大君”的称号,且没有任命继任者,并...

864
来自专栏大数据钻研

不懂技术的人不要对懂技术的人说这很容易实现

“这个网站相当简单,所有你需要做的就是完成X,Y,Z。你看起来应该是技术很好,所以,我相信,你不需要花费太多时间就能把它搭建起来。” 我时不时的就会收到这样的...

2938
来自专栏WeaponZhi

自我救赎的面试经历——小米篇

为什么我将文章定义为一次自我救赎的面试经历,实际上和我在16年底的一次小米面试经历有关。

5.3K1
来自专栏玉树芝兰

我的MOOC之路(二)——七周学会做搜索引擎

2013年秋天,我开始学习Python。一个转了专业的程序员,干嘛30多岁还要去学一门新的编程语言呢?因为看到了痛点,学生的痛点。

1462
来自专栏程序员互动联盟

编程小白喜欢走的几条弯路

经常有小伙伴通过小编微信号问一些编程的常识,语言基础或者是职业方向之类的问题,小编归纳了以下四点供大家参考 第一:盯住一个问题牢牢不放,不搞定这个问题,绝不向下...

36711
来自专栏一个会写诗的程序员的博客

Peter Norvig:十年学会编程

作者 Peter Norvig 是计算机科学家,Google 的研究总监。 在本文中,Peter Norvig会告诉你:为什么急功近利地学习软件开发技术是没效...

955
来自专栏程序员互动联盟

如何写出漂亮的代码?

疑惑一 程序员如何戒掉二指禅 这个问题一般是对初级人员才有的问题,老手都一练出来了。新手程序员如和戒掉二指禅?咋在学校的时候lol撸多了,哪去些什么代码。短时间...

3807
来自专栏CDA数据分析师

写给程序员的新技术学习指南,数据分析师也能用

因为公司缺一个系 Web 管理系统的开发,我决定挑一个技术栈来学习一下,然后自己来写。我选择了 Node.js+Express+AngulaJS+MongoDB...

2126
来自专栏VRPinea

所想即所得,StoryUP脑电波VR项目拯救懒癌晚期的你

2817
来自专栏Crossin的编程教室

编程学习中的瓶颈

刚学习编程的时候,几乎每天都会有收获,昨天会用 if 了,今天会调用函数了,明天又会 get 到新的技能。这时候也许你会觉得自己正在快速成长势不可挡。然而过了一...

32111

扫码关注云+社区

领取腾讯云代金券