HTML、CSS、JavaScript、PHP、 MySQL 的学习顺序是什么? 二维码
53
作者:JS加加前端开发 链接:https://www.zhihu.com/question/22646257/answer/719149452 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 1、横向分类 前端:HTML、CSS、JavaScript 后端:PHP、MySQL 2、责任分类 HTML:负责网页结构部分 CSS:负责网页布局与样式部分 JavaScript:负责网页程序逻辑、动态渲染与特效部分 PHP:负责服务端逻辑与数据库操作部分 MySQL:负责数据存储部分 3、学习技术与人的类比 1、首先,人要有一个基本的组成(头、身体、胳膊、手、腿、脚) -> 学习HTML 2、其次,人要有一个所有组成部分的有序组合和着装(将各部分组成一个身体并穿上衣服) -> 学习CSS 3、再其次,人需要有一些逻辑思维来支撑人的活动能力(吃饭、睡觉、运动等) -> 学习JavaScript 4、再次,人需要有动脑思考问题的能力(比如学习、解决问题、道德行为等) -> 学习PHP 5、最后,人需要一些知识、信息的储备来武装自己成为一个有能力、有素养的人 -> 学习MySQL 4、基本总结: ![]() 5、具体分析 1、所谓『全栈』 对于初学者来说,全栈是引以为豪的称谓。 对于成熟的工程师来说,全栈大多数情况下是个贬义词。 原因:初学者为了完成一个完整的项目,会快速学习前后端所有己需的技术点,但无论前端还是后端,都是一门技术。首先,任何开发者的开发技术的成熟都依赖的坚实的理论基础和业务经验,所以往往自学的开发者很难胜任企业的开发任务,任何企业都需要易读、易维护、易扩展、并且科学的项目架构和代码,而往往缺乏理论基础和业务指导的学习者,很难将项目的开发做到以上的要求,这也就出现了自学成才的初学者始终都处在『全栈自嗨』的状况中。而殊不知全栈的感念误导了自己,变成一个非职业、非专业的代码生产者。其次,缺乏扎实的理论基础的学习者,很难理解更加高深的技术点,比如函数式编程中的柯里化、偏函数、ECMAScript中的原型、闭包、圣杯模式等等,这就阻碍了学习者进一步提升开发能力的步伐。 一个成熟的工程师,绝不敢说自己的全栈工程师,因为自己心里清楚,我的技术门类是前端,前端我是专业的,就算我确实会写PHP、Java,我也不敢说我精通或者我也可以承担后端的工作,这是一个工程师的态度,所谓术业有专攻嘛。 如果的如果 你就想什么都会,根据前述,导出一个学习顺序: 1、HTML/CSS在一个阶段学习:结构和样式必须一起学,才有直观感。 PS:总得先弄清楚HTML基本的标签吧! 也少不了学完后,做个京东淘宝首屏,我不会做!抠破脑袋,给我摩出来,这是必经之路。 抱歉!给你压力了! 2、JavaScript单独学习:(伤不起的前端在此刻出现) JavaScript是一个很难的语言!!再成熟、再牛X的前端工程师也会说同样的话。原因是因为它十分灵活。 怎么写好像都对,但你就是不知道怎么写。有同样的感觉吧? 他,分为三个部分: 1、ECMAScript 2、DOM 3、BOM 懂行的都知道ECMAScript对于初学者来说,是最难的部分,什么作用域、什么原型原型链、什么闭包、什么对象数组一大堆东西。如果你在学习JavaScript时,觉得特简单,对不起,我只能建议你重新学习。学习ECMAScript周期最长。 DOM也不简单,因为.......内容也非常多,什么遍历树、什么节点、什么元素、一大堆兼容性封装,什么冒泡捕获事件代理、什么鼠标键盘行为、什么拖拽、什么鼠标行为预测、什么双击单击 一大堆封装、什么DOM事件处理函数逻辑、一大堆案例等着你做。 BOM相对简单,需要掌握的不多,强调一下,不是没用,是兼容性不好,毕竟是孤儿,没有规范,所以就只能将就用一下,但你也不能忽略他其中的单页面应用的学习。 3、PHP和MySQLy一起学 PHP的基本语法搞懂以后,你可能想做点啥,那你就得折腾一下数据了,没有数据就没有项目,你懂的。 当然,这是你自己要选择『全栈』的哈。表怪我。 2、所谓『WEB开发学习的态度』 技术的学习本是一个漫长的过程,但是...由于社会的浮躁感,让本该有过程的事变得急于求成而最终跪败。 |