2019年前端学习指南
2019-08-07 11:02:56 / 舒彬琪 / 180 浏览
语言语法层面
1:ES6
标配各种特性要熟练掌握应用。
ECMAScript 6文档:http://caibaojian.com/es6/
ES6中文手册:https://www.jianshu.com/p/b6c882e59b07
官网:http://www.es6js.com/
2:TypeScript
TypeScript是一种由微软开发的自由和开源的编程语言。学完你肯定会后悔,后悔为啥没有早点学,TypeScript是一个帮你提高代码质量的东西,一定要学习哦。
TypeScript 中文网:https://www.tslang.cn/
TypeScript 入门教程:http://www.runoob.com/w3cnote/getting-started-with-typescript.html
3:Rust
可能在学习 Rust 的过程中会遇到不少困难,它的学习曲线确实比较大,Rust 虽然定位是一门系统语言,但是其实在 Web 领域已经是老熟人了,计划用Rust写点wasm。
4:Dart
对 Flutter 的宿主语言 Dart 进行了一些简单探索,Flutter & Dart 、是跨端的一个方向,但是目前的问题仍然多多。
Dart中文社区:https://www.dart-china.org/
5:WebAssembly
WebAssembly是近年来非常流行并且发展很快的一种语言(实际上我觉得称其为运行机制很合适),WebAssembly 的日益成熟,也带来了很多新奇的玩法儿。
官网:https://webassembly.org/
框架层面:
1:Vue 2.0
Vue 2.0不多说了,花一个月的时间写个小项目练手,并且写一套专题技术博客。
文档:https://cn.vuejs.org/
社区:https://www.vue-js.com/
Vue 3.0
关注 Vue 3.0 的进展;
Vue CLI 3:https://cli.vuejs.org/
2:React
React 并非很差,但我发现它太笨拙,难以掌握,而且有些地方的代码看起来完全没有逻辑性。
React 持续跟踪升级,使用 Hooks 与 Suspense 改造现有项目,使用 Context API 替换项目中的 mobx 状态管理,使用React实现交互式组件的新方法,称为Hooks:https://reactjs.org/docs/hooks-intro.html
React 中文文档:https://react.docschina.org/
社区:http://react-china.org/
菜鸟教程:http://www.runoob.com/react/react-tutorial.html
3:Angular
Angular 的“用过但是不想再用“的比重又大了,可以自行决断是否要学习,了解即可。
中文网:http://www.angularjs.net.cn/
数据层:
1:Redux
Redux 目前用户很多,Redux因其简单易学体积小在短时间内成为最热门的前端架构。但是 React 新的 Hooks等不知道会不会在来年给它带来影响。
Redux 中文文档:https://www.redux.org.cn/
2:GraphQL
GraphQL 和 Apollo 这段时间一直被讨论宣传,调查显示有非常多的人想要学习了解,可以关注下,Graphql + Apollo 学习与实践
http://graphql.cn/
http://graphql.cn/learn/
JS 后端框架:
1:Express
Express 一家独大,基于 Node.js]平台,快速、开放、极简的 Web 开发框架:http://www.expressjs.com.cn/
菜鸟教程:http://www.runoob.com/nodejs/nodejs-express-framework.html
2: Next.js
Next.js 想学的人比较多,提供一些学习资料。
Nextjs中文文档:https://www.jianshu.com/p/8d070e2b39a5
Next.js中文站点 http://nextjs.frontendx.cn
Next.js中文站Github https://github.com/raoenhui/next-site-cn
3:Koa
Koa 在国内的欢迎程度比较高,不妨多看看。
基于 Node.js 平台的下一代 web 开发框架 :https://koa.bootcss.com/
另外,国内比较知名的 Egg.js 和 Think.js 等可以了解。
4:Egg.js
egg 为企业级框架和应用而生:https://eggjs.org/zh-cn/
快速入门https://eggjs.org/zh-cn/intro/quickstart.html
5:Think.js:
官网:https://thinkjs.org/
文档:https://thinkjs.org/zh-cn/doc/2.2/app_structure.html
测试框架:
使用分布比较匀称,Jest 和 Mocha 比较靠前,
jest 是facebook推出的一款测试框架,集成了 很强大的功能。
但是 Mocha 相比略有下降趋势。
Enzyme 也还可以。
教程:https://www.jianshu.com/p/eaaf07c1b88f
跨端框架:
Electron 和 React Native 排名比较靠前,受到广大开发者的喜爱和追捧。
1:Electron
Electron这个玩意简直是做团队内部工具的利器,也是前端老手秒上手的东西,可以给团队做些玩意了。
使用 JavaScript, HTML 和 CSS 构建跨平台的桌面应用:https://electronjs.org/
Electron 文档:https://electronjs.org/docs
Electron 中文文档:https://www.w3cschool.cn/electronmanual/
2:React Native
React Native中文网
使用JavaScript和React编写原生移动应用:https://reactnative.cn/
当然今年 RN 发展很不顺利,被很多大公司移除掉了,继续关注后续发展。
3:Flutter -跨端解决方案
Flutter是谷歌的移动UI框架,可以快速在iOS和Android上构建高质量的原生用户界面,前端对于 Flutter 的热忱度之高一度让人有点惊讶,事实上我在 Flutter 社区内见到的客户端开发者远多于前端开发,不过前端对于跨端解决方案确实有着天然的渴求。
Flutter中文网:https://flutterchina.club/
后端编程语言
1:Python
Python有大数据处理、数据分析、人工智能加持,学完 Python,可以上天,一款集入手快、颜值高、内涵丰富、效率高、应用广的编程语言,让Python轻松俘获从业人员的心。
Python 基础教程:http://www.runoob.com/python/python-tutorial.html
2:PHP
PHP 符合预期,PHP是一种通用开源脚本语言。它的语法吸收了 C语言、java语言和Perl语言的特点,使用广泛,主要应用于web领域。
菜鸟教程:http://www.runoob.com/php/php-tutorial.html
教程:http://www.w3school.com.cn/php/index.asp
构建工具:
1:Webpack
Webpack 一家独大,第二是 gulp,第三是 Grunt,后两者应该都在慢慢下降
webpack中文文档 :https://www.webpackjs.com/
2:gulp
gulp:https://www.gulpjs.com.cn/
Grunt:https://www.gruntjs.net/
3:Grunt
Grunt中文网:https://www.gruntjs.net/
工具库:
Lodash、Moment 以及 jQuery 排名靠前
1:Lodash
Lodash中文网:https://www.lodashjs.com/
2:Moment
Moment中文网:http://momentjs.cn/
Moment 现在一般用 date-fns 代替,函数式而且很轻巧,Moment 体积太大。
浏览器 API:
Service Workers、PWA、Web Components 这三个比较靠前,
知道 Web Components 啥时候才能被大规模使用,反正 Polymer 看数据基本凉透了。
Service Workers:https://developer.mozilla.org/zh-CN/docs/Web/API/Service_Worker_API
Web Components:https://developer.mozilla.org/zh-CN/docs/Web/Web_Components
PWA: 持续关注,不过这玩意其实真的很简单很简单,只要学会 Service Worker + Cache API 就算掌握了 80% 了,需要的时候再学也来得及。
微信小程序:
随着各种方案(mpvue 、Taro等等)出现,也变得越来越成熟了。
1:mpvue
mpvue官方文档:http://mpvue.com/mpvue/
2:Taro
Taro 是一套遵循 React 语法规范的 多端开发 解决方案
Taro文档:https://taro.aotu.io/
其他热点技术
1:Vuex
Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。
文档:https://vuex.vuejs.org/zh/
2:rxjs
RxJS是一个异步编程的库,同时它通过observable序列来实现基于事件的编程
中文文档:https://cn.rx.js.org/
3:Docker
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中。
4:Deno
运行时:Deno:返回deno社区继续参与deno
5:Lavas
基于 Vue.js 的 PWA 解决方案:https://lavas.baidu.com/
原文作者:祈澈姑娘 技术博客:https://www.jianshu.com/u/05f416aefbe1