从后端到前端
- 学习前端的好处
- 首先可以为你开阔眼界,为你的思维模式带来新的选项。整个全栈技术都有这个特点,但是在前端技术上尤为明显。 —— 前端技术的结构和软件与其他技术领域有着显著的不同。
- 其次可以帮助你形成快速原型、即时验证和独立演示的优势,在迅捷的反馈中设计和编程。
- 再次,有助于形成产品思维。
- 最后,前端技术是全栈技术的必备技能。
- 一个优秀的前端工程师总是有强烈的产品属性。
- 很多给自己打上了前端工程师、后端工程师的朋友,在面对新技术的时候,觉得不属于自己的领域而封闭了自己。职业生涯不宜过早做出细致的计划,给自己打上标签画地为牢。除了技术深度,在技术广度上也需要一定积累,等积累到一定程度再来选择自己的发展分支路线。
- 应用事件驱动编程
- 在后端,习惯了使用进程和线程来对付并行处理的逻辑,可以说是真并行。
- 在前端,JavaScript 的执行是单线程的。即 event loop。
- 从代码角度上来看,所有的逻辑都是通过回调函数来完成的;而从程序员思维模式角度上来看,以往基于线程的编程,变成了事件驱动的编程。
- 基于线程编程需要不断地由监视线程去查询被监视线程的某一个状态,如果状态满足某个条件,则触发相应的逻辑。
- 基于线程的方式可以阻塞线程,等待时间或某个条件满足后继续执行。
- 阻塞线程的方式对资源的消耗往往更加显著,因为无论是否执行线程都被占用。而从人的直观理解的角度来说,代码更加直白。
- 在 JavaScript 中往往只能使用事件驱动,而在 Java、Python 这种后端语言中可以混合使用基于线程和事件驱动。
- 虽然 JavaScript 的执行是单线程,但是浏览器并不是。大概有以下线程。
- GUI 界面渲染线程。
- 事件触发线程。
- 学会声明式代码
- 声明式代码域命令式代码一样,都需要设计与测试。
- 培养交互思维
- 与用户的交互要求开发前端的程序员具备产品思维,与服务端的交互则要求开发前端的程序员具有工程思维。
思考
虽然文章讲的是前端,但是我通过前端,反向学习后端知识了。
- 前端是事件驱动,而后端需要处理进程、线程,也可以使用事件驱动。
- 后端一般都是命令式代码,而前端的 HTML 和 CSS 都是声明式代码。
- 不要给自己打上前端工程师的标签后,就拒绝其他技术,画地为牢。格局要打开,未来才能有更好的发展。
- 学习全栈的课程是一种不错的学习后端的方式,因为他经常会将前后端结合起来讲,这样可以让我逐步了解后端的知识。而一些只讲后端的课程,或许会遇到思维一下子转变不过来的困境。
网友评论