Web开发如今是如日中天,热的发烫。那我们应该怎么学习呢?这不光是初学者,很多学了几年的人也会有些迷茫或者彷徨,大家也都知道不断学习是不可避免的,不学习肯定要掉队;那怎么学效率更高,那些是坑,那些是路,每个人可能都有自己的简介。作为一个程序猿,从两个方面说说我的想法:
学习方面
1.基础部分,主要就是html、css、JavaScript。
这个其实不用多讲,这些个基础不学扎实了啥也干不了,可以直接从html5、css3、ES5来学习。学习的方法很多,最方便的方法是像w3cschool、汇智网这种边学边练的,类似之前微软的所见即所得,喜欢读纸质书的可以买几本书来看看。
2.几个边界,是说与美工相关、后端开发、设计相关。
想做好Web前端,一定搞清楚自己的工作界面在什么地方,这对你有很大帮助。每个公司可能都不一样,所以了解边界相关的知识就很重要。
-
美工相关
主要是说ps、切图之类的东西,photoshop还是需要会用的,至于说你能不能搞出漂亮的图片来那倒不是重点,关键点是体会美工的工作过程。如果你在公司兼了这件事,那你就得深入的学习了,别不以为然,前端的美术有修养还是挺重要的。
-
后端开发
虽说一般情况下,前端开发和后端开发是分开的,不过二般情况也很多。这个时候就需要你在后端中选择一条主线,很多人都在比较PHP、Python、Node.js哪种好,其实都差不多,不过从市场上的热度来说视乎Node.js更热一些,当然Node.js对js熟悉的前端来说也更容易上手。我的建议还是先从Node.js来吧,如果公司有选择或者有余力可以学学其他两个。数据库似乎mysql和mongodb都可以试试。
3.相关标准,标准这个东西很多人都不屑的很。
其实很重要,越大的团队越重要。还是熟悉熟悉养成好的习惯微妙。这在初期至少涉及到很多兼容性问题,所以W3C的标准是必须了解和掌握的。
4.各种框架类库,jquery,bootstrap等,
现在的框架比较多,但是jquery和bootstrap这样级别的必须得熟练掌握,要不很多公司都没法干活。一般类库和框架都有垂直的网站可以学习,如bootstrap中文网之类的都很不错。
5.工具,这个有很多如Git、webpack、Gulp、github、Nginx 等等。
工具本身实际上不学也能干活,从学习的角度来说,这个时间的分配上可以少一点儿,但是从工作的角度来说,如果需要的话要尽快上手,逐步熟悉。工具类的东西都不是特别难上手,几天可能就差不多了,但是想玩的透,极大的提高效率这个还是需要投入不少时间的。
学习其实本身没有那么多的规矩,还是看个人的情况,但是上面这些范围是大家都绕不开的,如何合理有效的利用时间就是最最重要的。
书籍方面
基础部分
HTML和css还有Java是基础知识但是相比较来讲HTML和css比较简单,而Java涉及内容之广泛超乎大家的想象
这个是有人推荐学习Java要看到书此书据说能够帮助你区分哪些是语言的精华,哪些是糟粕,对于语言精华,应该深入学习。还有一个《入门到精通》实在不信你可以百度百科一下Java的长度和HTML的长度,你就知道。
进阶部分
上面的知道了基本就能做出静态页面了,毕竟web前端就是干这个的,但是对于现在越来越重要的用户体验,大家已经越来越不满足简简单单的静态页面了,而是需要各种交互(UI还得设计的好,要不用户打开觉得丑早就给你关了)
进阶的css《精通css》
看完这本书你应该对:盒子模型,流动,Block,inline,层叠,样式优先级,等概念非常了解了。在进阶,关于js框架,有兴趣的同学可以抓紧时间看一看,框架语言大多是jQuery(框架的重要性屏蔽浏览器的差异性),兼容和响应式是大多数web前端需要考虑的事情,大多数的人最讨厌看见的英文单词应该就是bug但是解决bug又是他们存在的意义。
Java
语言内部机制。必须弄清如下概念:JS 中变量的作用域,变量传递方式,函数的定义环境与执行环境,闭包,函数的四种调用方式(一般函数,对象的方法,apply,call),以及四种调用方式下,‘this’指向的是谁。
3.DOM学习
除此之外关于dom要学习《Dom编程艺术》
(关于此书还有一版蓝色的)
虽然在此之外web前端就够用了但是诚筑说来讲交互设计还是必须的,最简单的就是各种按钮的动效
必读
后端虽然不用特别懂吧,但是你喜欢还是可以学习一些的。作为初学者,看书觉得难懂的话,想找老师带一带入门,那么你可以来我的QQ群,群内提供免费学习资源。