876.jpg
前端是个最近几年很火的职业, 而且持续火热中, 有个词叫水涨船高, 来的人多了, 竞争多了, 标准也就提高了. 现在对前端工程师的要求跟当年前已经不能同日而语了.
大前端, 包括 Android,iOS,web 前端, 小程序开发等.
当然了, 所谓的趋势, 不是一天两天就到来的, 它是未来的一个技术方向, 我们之所以关注趋势, 是要关注变化, 技术的发展与普及不是一日之功, 一定是慢慢过渡的, 但是你能够比其他人提前看到方向, 真正的市场到来的时候, 你就可以提前做好准备, 提前发掘机会.
首先, 我们从基础来看, 在对 2019 前端开发如何进阶, 提升自己, 再做更深一层讲解.
1 基础技术
前端的三大基础毫无疑问就是 html,CSS 和 JS. 我称之为前端的骨, 肉和魂.
先说 "骨"--HTML.HTML, 翻译过来就是超文本标记语言, 而不是江湖上的 HOW TO ML. 方向不能搞错了, 我们整的东西可是老少咸宜的. HTML 学习最重要的标签的学习, div,h1-h6,p,ul-li,strong, 图片, 字体等, 什么内容用什么框.
再说 "肉"--CSS.CSS 定义了 HTML 标签的显示外观, 气质. 主要掌握浮动, 宽高设置, 显示属性
最后 "魂"--JavaScript. 这是运行在浏览器上的脚本, 但是现在 JavaScript 已经远远不是当年的那个 JS 了, 尤其 Ecmascript6 标准出来后, Node.JS 横空出世, JS 暴露出一统天下的野心, JS 让网页变得灵活, 其实现的每一个明里暗里的交互, 其实是为了触及您的灵魂, 这也是其成为魂的原因.
而现在, CSS3 和 HTML5 的发展, 又将 Web 推向下一个时代, 一个更为丰富多彩的时代.
2 环境基础
设备, 浏览器以及工作原理
必须指出的是, HTML CSS JS 都是运行在浏览器的, 是由浏览器负责编译和呈现的. 所以必须了解浏览器的工作原理. 但是浏览器千千万万, 也不是每个都要去解剖, 主要的有 Chrome, Firefox, IE,Safari,Opera, 国内的主浏浏览器基本是基于 Chrome 内核开发, 做了一些更为接地气的功能, 了解下就可以了, 主要有 QQ 浏览器, UC, 百度浏览器, 360 浏览器, 搜狗浏览器, 猎豹浏览器等.
3 计算机基础
计算机网络, http 协议. 既然是 Web 必不可少需要知道计算机网络的知识, 这对于网页的加载和速度优化有很大的帮助, 并且, 我们做的不是静态的页面, 而是动态的, 所以必然涉及到与后台之间的数据的传输和存储, 这个是要掌握的.
必须懂: Ajax, 必须会的工具: fiddler
4 流行框架
流行的前端 UI 框架:
Bootstrap,jQuery UI,Amaze UI
流行的前端框架:
Node.JS
jQuery mobile
angular.JS
React.JS
5 可视化组件
- Echarts
- tableau(收费)
6 新应用
针对移动化以及物联网方向发展
7 锦上添花 -
UI, UX , 交互设计, SEO(包括 SEM) , 产品, 更主要一个同理心. 好的设计和交互才能带来的好的体验, 赢得用户.
SEO 则在推广层面, 好的 SEO 让我们以最低的成本, 借力搜索引擎, 获得更加跟多的曝光机会, 毕竟这是个酒香也怕巷子深的时代.
最后是产品, 站在产品角度, 融合 (前后端) 技术和商业, 让产品产生价值, 实现价值.
作为一个新兴的技术领域范围, 大前端在不同的语义环境下, 有着不同的解释和含义, 我们以几个视角去对大前端并做逐一的分析.
Node.JS 与前后端分离
在绝大多数的前端开发者口中, 大前端有时与 Node.JS 一起讲, 有时与前后端分离一同讲, 事实上, 大前端概念也正是由广大前端开发者提出的.
过去几年, 前端技术经历了爆发式的发展, 这种发展最重要的推动者之一就是 Node.JS.Node.JS 为前端建立了与系统之间沟通的桥梁, 从此前端技术不仅能在服务端大放异彩, 并且在本地的前端开发工具与工作流上大展身手, 前端从此被解放, JavaScript 统治世界的论调一度甚嚣尘上.
不过, 当人们冷静之后, 发现 Node.JS 在服务端并没有太多的优势, 再加上 Node.JS 本身技术发展的一些波折, 导致它在服务端的应用并不理想. 但尽管如此, 广大的前端开发者还是取得了一些阶段性胜利, 其结果就是前后端分离.
在传统 Web 开发时代, 前端页面模板是由后端生成的, 导致在页面需要频繁修改的时候, 效率极低. 前后端分离指的是后端只提供接口, 前端对页面有完整控制, 同时通过中间层将前后端隔开, 在这里对数据进行抽取, 聚合, 分发等操作. 这个中间层, 通常也是由前端开发工程师负责.
从这种意义上讲, 大前端的原始定义可以称为前端技术的扩大化, 包括 Node.JS, 同时对 Web 页面有更强的控制权, 开发也将承载更多功能的页面.
此处划重点: 基于 Node.JS 的前后段分离是大前端的重要技术.
从 Facebook 的 Reactive Native, 再到 Google 的 Flutter, 足以看出, 起码对这些科技巨头们来说, 他们是认定这个方向, 并且在投入的, 只是当下技术还不够成熟, 所以这类前端跨平台开发框架都还不够普及, 但是你们得相信, 这些巨头的判断与实力.
再说到国内各种平台的小程序, 微信小程序, 支付宝小程序等等, 其实都是属于真正意义的大前端, 所以前端开发人员, 以后的要求会越来越全面, 你别觉得不信, 等着未来的发展就知道了, 以后很可能一个前端开发必须是全栈前端.
所以, 每一个大前端开发, 最好都懂点前端开发知识, 而基本的 Web 前端开发基础就显得很重要了.
我常遇到一些工作多年的前端工程师, 在看到一些我认为很基础的用法时, 发出惊呼:「怎么还可以这样」.
因为很多同学学前端的方式是「土法学前端」, 他们对于知识的理解基本都停留在点上, 从来没有对前端的知识体系和底层原理形成真正地理解.
加上前端标准的快速更新, 前端工程师的学习压力变得越来越大了. 就拿 JavaScript 标准来说, ES6 中引入的新特性超过了过去十年的总和, 新特性带来的实践就更多了, 仅仅是一个 Proxy 特性的引入, 就支持了 vuejs 从 2.0 到 3.0 的内核原理完全升级.
许多前端程序员都有感触: 学习速度跟不上技术发展速度, 而手忙脚乱, 力不从心.
这个现象, 在一些小公司的前端工程师身上尤为明显, 一些有技术追求的工程师, 技术敏感度和主观能动性都不错, 工作了五六年之后, 逐步走上技术管理的岗位. 但因他们所在公司的业务并不复杂, 缺少框架知识积累, 个人技术仍处于比较初级的阶段. 做了管理, 技术没跟上, 还错过了最佳的学习时间, 境遇可想而知.
工作压力大, 技术更迭快, 让很多前端开发者高呼「学不动了」. 其实不是你学不动了, 而是你的知识体系底层构建出现了问题.
目前在国内, 不少一线互联网公司比如美团点评, 饿了么, 网易杭研都有叫大前端的团队或者在对外时使用该称谓, 不过, 由于之前大前端并没有明确的定义, 这些团队的人员构成并不相同, 它们都是各个公司在自己对大前端的理解, 以及对公司业务的支持需求下设立的. 具体情况如下(可能有偏差):
美团点评大前端团队: 包括 FE,iOS,Android 开发, 以及一些工程化工作.
饿了么大前端团队: 以 FE 为主, 包括 Node.JS, 以及 Weex 等.
网易杭研大前端团队: 包含 Web 前端, PC 客户端和移动端
从这些一线互联网公司团队组建方式的演进, 我们不难发现, 大前端已经是未来发展的潮流.
大前端技术开发者的晋级之路怎么走?
作为一位在大前端时代的前端技术开发者, 我们应该做怎样的准备来及时跟上技术发展的浪潮? 综上所述, 我们不难得出以下结论:
基于 Node.JS 的前后段分离设计模式是大前端架构演变的必由之路
基于 React Native 的新一代移动 App 开发技术凭借其优势已然有超越原生的趋势
新型大前端团队的组建已成现代互联网公司技术团队的标配
如果你是一位工作 1 年左右的前端开发者, 你需要提升自己, 给你一些建议:
1. 深入理解前后端分离理论与实践:
传统 Web 研发模式
什么是前后端分离
前后端分离的几种形式
前后端分离的部署架构
前端后端分离开发模式
分离式架构数据接口规范
基于 Node.JS 的前后端分离
2.Node.JS 技术进阶与实战
从 0 到 1 理解 Node.JS HTTP 模块的本质
如何一步步从 HTTP 模块开发成 Koa 框架
Koa Web 框架的中间件系统
常见的适合 Node.JS 开发场景和其所扮演的角色
利用 Node.JS 开发 APL 接口
SSR 服务器端渲染技术
如何选择适合业务的开发模式
利用 Node.JS 做性能分析
Node.JS 常见的开发部署架构
利用 Node.JS 实现产品监控
3. 深度掌握 React Native 技术
React Native 的基本架构及原理
关于热更新的概念及实践
如何集成到现有原生应用
编码规范标准化(项目结构, ESLint,Flow/TypeScript)
Redux 架构的原理及应用
跨平台开发常见的思维陷阱与技巧
React/React Native 新特性与展望
多年编程经验, 今年 1 月整理了一批 2019 年最新 Web 前端教学视频, 不论是零基础想要学习前端还是学完在工作想要提升自己, 这些资料都会给你带来帮助, 从 HTML 到各种框架, 帮助所有想要学好前端的同学, 学习规划, 学习路线, 学习资料, 问题解答. 只要加入 Web 前端学习交流 qun:296,212,562, 即可免费获取, 学习不怕从零开始, 就怕从不开始.
来源: http://www.jianshu.com/p/91da9cb82f0e