前端技术层出不穷,真的是让人眼花缭乱,真是苦了一大批前端开发者了,我们能不能借助社区的力量给自己指明点方向呢
基础技能
作为 Web 开发者,不管从事什么职位,下面这些技能点是必须掌握的:
- Git
- SSH
- HTTP/HTTPs 和 AP
- 基础命令行的使用
- 学会钻研,养成碰到问题,通过自我学习的方式来寻找问题的解决方案
- 数据结构和算法
- 字符编码
- Github、Google、Stack Overflow
前端开发
我找出自己觉得很重要的
- JavaScript 本尊 和 ES6+
- npm
- Test(Jest、mocha)
- react、vue、angular
- webpack
- sass
- CSS 本尊和 CSS3+(flex、rotate、scale、transform、transition、grid、skew、...etc)
- Regex
- Node.js 体系(express,koa)
目前主攻前端,后端的只是也就不具体列出了,这里列出自己感兴趣的
- redis、memcached
- mongodb
- nginx
- RESTful
- anthentication(JWT、OAuth 2.0)
- graphQL
- docker
need or no need
Ethan Brown 讲述的 2018 年我们需要的和不需要的知识
需要关心的东西
- WebAssembly,
- WebAssembly 属于 JavaScript 的一个子集, 它提供了一个针对其他语言的编译器。
- 它允许几乎任何语言运行于浏览器或者 Node 之中
- 函数式编程
- 并不是什么新的东西,也已经被 JavaScript 社区的大多数所应用
- 2018 才是函数式编程真正达到具有质量和规模的一年
- 一句话从今天开始 ‘好的,我所有的代码都要变成纯函数式的了
- 不可变性 (Immutability)
- 第一反应:这不太高效啊,你对所有的东西都创建了副本,所占用的内存不是很必要啊
- 其实只是复制了变化的那一部分 -- 其他的结构依然保持不变。
- 在 JavaScript 中进行严格比较速度快而且开销低,大部分切换到不可变数据结构的人都表示性能提升了。
- 不可变性为一些试验行为提供了天然的保护网
- 单向数据绑定
- 由 Elm 提出,被 Facebook 应用于 Flux, 进而还有 Redux, 以及现在的 Angular 和 Vue
- 单向数据绑定让你更方便地管理应用中的状态 。
- 第一次尝试的时候你会想,天啊,又要写那么多代码,有点大材小用的样子了。
- 但一旦你的应用达到了一定的规模,将会影响你对整个应用的控制而不仅仅是你所负责的部分。因为当你在使用单向数据绑定时,你需要考虑到应用的每一层数据的流转。
- 计算属性名/字面属性值简写
- ECMAScript 6 (ES6) 的黑马级特性
- 动态的构建属性名称,对象初始化或简写对象属性值
不需要关心的
- Generators
- JavaScript 中一个比较酷的特性
- 其主要的特性已经被 async/await 所替代
- Symbol
- 另外一个好的特性,对 JavaScript 语言的一个补充
- 对于 JavaScript 这门语言,他并不认为 Symbol 是个合适的设计。 建议:保持观望的态度。
趋势
2018 年 WEB 发展趋势预测
- PWA
- 智能聊天机器人
- 静态网页
- 单页应用
- 网页消息推送
- 从 Flash 到 HTML
WebRTC
不知道为什么,就想在这里提一句,浏览器通讯新标准——WebRTC
- What is WebRTC:WebRTC 是 Web Real-Time Communication 的简称,它是谷歌的一个开源项目,其目的是通过一系列的协议和规范来让浏览器提供支持实时通讯功能的 API 接口,这样在浏览器中通过简单的接口调用即可实现本地音频、视频等资源的实时共享。
- Why WebRTC ?
- Flash
- Plug-in
- Why ASSESS ?
- 浏览器支持程度
- 必须使用 HTTPS 协议