2019 年 Web 开发技术指南和趋势

这是一个2019年你成为前端,后端或全栈开发者的进阶指南:

  1. 你不需要学习所有的技术成为一个web开发者

  2. 这个指南只是通过简单分类列出了技术选项

  3. 我将从我的经验和参考中给出建议

  4. 首选我们会介绍通用的知识, 最后介绍2019年的Web的一些趋势

1. 基础前端开发者

1.1 HTML & CSS

HTML & CSS

最基础的知识:

  • 语义化的HTML元素

  • 基础的CSS语法

  • Flexbox & Grid

  • CSS变量

  • 浏览器开发者工具

1.2 响应式布局

响应式布局

响应式设计将不再是网页的加分项, 而是必须的

  • 设置viewport

  • 非固定宽度

  • 媒体查询

  • 使用 rem 替代 px

  • 移动优先,柱状显示

1.3 基础的部署工作

部署工作

学会如何部署一个静态网站到服务器

  • 注册一个域名(NameCheap, Google Domains)

  • 管理共享主机或虚拟机(Inmotion, Hostgator, Bluehost)

  • FTP, SFTP 文件上传(Filezilla, Cyberduck)

  • 静态页面托管(Netlify, Github Pages)

1.4 SASS预处理器

SASS预处理器

虽然不是必须的, 但是推荐去学, 基础知识的掌握很简单

  • 结构化CSS

  • 变量

  • 嵌套样式表

  • Minxins & 函数

  • 继承

1.5 原生JavaScript语法

JavaScript

不使用任何框架和库区学习原生的JS语法

  • 数据类型, 函数, 条件判断, 循环, 凑总府

  • DOM操作和事件

  • JSON

  • Fetch

  • ES6+(箭头函数, Promise, async/await, 解构)

1.6 满足了基本的前端开发者的条件

基本的前端开发

  • 构建静态站点

  • 构建UI布局(拿到设计图能够使用HTML/CSS还原)

  • 添加一些交互功能

  • 部署和维护网站

现在能找到最低水平的Web开发工作, 但是这是远远不够的….

2. 一个成熟的前端开发者

2.1 HTML & CSS框架

HTML & CSS框架

HTML/CSS框架目前没有以前那么有意义, 但是我还是介意你选择一个学习(这里作者想隐射的应该是, 在jquery时代, HTML/CSS框架的学习是必须的).

  • BootStrap

  • Materialize

  • Bulma

2.2 Git和其他工作流工具

Git和工具

Git绝对是每一个Web开发者必须掌握的工具, 这里也有一些其他的工作流工具的建议.,

  • 基础的命令行(touchcdmkdir什么的总得会, 命令行在下面的工具中都会用到)

  • Git(版本控制)

  • NPM 或 Yarn(包管理)

  • Webpack 或者 Parcel(打包工具)

  • Gulp 或者 Grunt(任务管理和构建工具)

  • 编辑器插件(ESLint, Prettier, Live Server等)

2.3 前端框架

前端框架

学习一个前端框架在目前前端开发中是必须的.

  • 在大公司开发中非常流行

  • 更多的交互 & 有趣的UI组件

  • 组件化 & 模块化前端代码

  • 对团队有利

2.4 状态管理

状态管理

对于使用框架的大型前端项目, 你也许需要使用状态管理工具去管理你的应用级的状态

  • Redux(Context API)

  • Apollo(GraphQL Client)

  • Vuex

  • NgRx

2.5 满足一个成熟的前端开发者条件

成熟的前端开发者的条件

  • 构建一个优秀的前端应用

  • 流畅和稳定的前端工作流

  • 多人开发 & 熟练使用Git

  • 请求后端API & 前端数据响应

满足以上条件, 你能够顺利的找到一个前端的工作并干得很出色~

3 全栈开发工程师

3.1 学习一门后端语言

后端语言

成为一个全栈工程师或软件工程师, 你将需要学习一个服务端语言和相关技术

  • Node.js

  • Python

  • PHP

  • C#

  • Go

学习的顺序:

  • 基础的后端语言语法

  • 数据结构和工作流

  • 包管理

  • HTTP/路由

3.2 服务端框架

服务端框架

不要重复造轮子, 学习一门框架去构建更好和更快的应用

  • Node.js(Express, Koa, Adonis)

  • Python(Django, Flask)

  • PHP(Laravel, Symfony)

  • C# (ASP.NET)

3.3 数据库

数据库

绝大多数觉得应用都会使用到数据库, 这里有一些选择:

  • 关系型数据库(MySQL, PostgreSQL, MS SQL)

  • 非关系型数据库 (MongoDB, Counchbase)

  • 云服务 (Firebase, AWS, Azure, DocumentDB)

  • 轻量级(SQLite, NeDB, Redis)


猜你喜欢

转载自blog.51cto.com/13959004/2345731
今日推荐