这是两个2019年你正式成为后端,后端或全栈开发人员的高阶手册:
1、你不须要自学大部份的控制技术正式成为两个web开发人员
2、那个手册而已透过单纯进行分类列举了控制技术快捷键
3、我将从我的实战经验和参照中得出提议
4、必选他们会如是说通用型的科学知识, 最终如是说2019年的Web的许多态势
1、此基础后端开发人员
1.1 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预处理器
虽然不是必须的, 但是推荐去学, 此基础科学知识的掌握很单纯
结构化CSS 表达式 嵌套样式表 Minxins & 函数 继承1.5 原生JavaScript句法
不使用任何框架和库区自学原生的JS句法
数据类型, 函数, 条件判断, 循环, 凑总府 DOM操作和事件 JSON Fetch ES6+(箭头函数, Promise, async/await, 解构)1.6 满足了基本的后端开发人员的条件
构建静态站点 构建UI产业布局(拿到设计图能够使用HTML/CSS还原) 添加许多交互功能 部署和维护网站现在能找到最低水平的Web开发工作, 但是这是远远不够的….
2、两个成熟的后端开发人员
2.1 HTML & CSS框架
HTML/CSS框架目前没有以前那么有意义, 但是我还是介意你选择两个自学(这里作者想隐射的应该是, 在jquery时代, HTML/CSS框架的自学是必须的).
BootStrap Materialize Bulma2.2 Git和其他工作流辅助工具
Git绝对是每两个Web开发人员必须掌握的辅助工具, 这里也有许多其他的工作流辅助工具的提议.,
此基础的命令行( touch, cd, mkdir什么的总得会, 命令行在下面的辅助工具中都会用到) Git(版本控制) NPM 或 Yarn(包管理) Webpack 或者 Parcel(打包辅助工具) Gulp 或者 Grunt(任务管理和构建辅助工具) 编辑器插件(ESLint, Prettier, Live Server等)2.3 后端框架
自学两个后端框架在目前后端开发中是必须的.
在大公司开发中非常流行 更多的交互 & 有趣的UI组件 组件化 & 模块化后端代码 对团队有利2.4 状态管理
对于使用框架的大型后端项目, 你也许须要使用状态管理辅助工具去管理你的应用级的状态
Redux(Context API) Apollo(GraphQL Client) Vuex NgRx2.5 满足两个成熟的后端开发人员条件
构建两个优秀的后端应用 流畅和稳定的后端工作流 多人开发 & 熟练使用Git 请求后端API & 后端数据积极响应满足以上条件, 你能够顺利的找到两个后端的工作并干得很出色~
3、全栈开发工程师
3.1 自学一门后端语言
正式成为两个全栈工程师或软件工程师, 你将须要自学两个服务端语言和相关控制技术
自学的顺序:
此基础的后端语言句法 数据结构和工作流 包管理 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)3.4 服务端渲染
像React, Vue 和 Angular等端架都可以进行服务端渲染
Next.js(React) Nuxt(Vue) Angular Universal(Angular)3.5 内容管理系统
内容管理系统允许快速开发并为您的客户提供更新内容的能力. 在你须要快速开发网站的时候, 它们是很适合的. 特别是对于自由开发人员.
基于PHP的 (WordPress, Drupal) 基于JS的 (Ghost, Keystone) 基于Python的 (Mezzazine) 基于.Net的 (Piranha, Orchard CMS)3.6 DevOps 和部署
自学语言和框架是一回事, 但是安装环境, 测试和部署有事另外一回事
部署 (Linux, SSH, Git, Nginx, Apache) 平台 (Digital Ocean, AWS, Heroku, Azure) 可视化(Docker, Vagrant) 测试 (单元测试, 集成测试, 函数式测试, 系统测试)3.7 满足全栈工程师的条件
4、2019控制技术态势和其他
4.1 原生应用开发
4.2 使用Electron开发桌面应用
Electron是两个使用JavaScript构建跨平台的桌面应用辅助工具.
使用到了 Chromium内核和Node.js 兼容Windows, Mac & Linux 崩溃报告, 调试和性能分析4.3 GraphQL & Apollo
GraphQl是对于API的一种革命性新方法,查询语言比标准RESET严格得多
4.4 TypeScript
TypeScript是两个JavaScript的超集, 它添加了静态类型等很多特性.
表达式, 函数等类型 类 其他ES6的特性 在Angular中被使用到, 同时也可以在React和Vue中被使用4.5 无服务架构
无需创建和管理自己的服务器
使用第三服务执行“无服务器功能” 例如 AWS, Netify & Firebase 在Gatsby静态站点生成器很流行 无服务框架4.6 AI和机器自学
AI和机器自学已经被广泛应用在大部份的程序和控制技术中, 甚至包括web开发中.
机器自学可以允许Web应用程序随时间进行调整 虽然AI还有很长的路要走, 但是他们会看到它会更多的用在web中 虽然目前绝大多数都是Python写的, 但也有Tensorflow.js和Brain.js这些JS的库4.7 区块链控制技术
现在许多公司使用区块链控制技术进行数字交易, 因为它们更安全和有效率.
Solidity(一门智能合约的编程语言) Mist(以太坊开发的应用程序, 用于发送交易和合约) 比特币API(可以构建app和整和比特币的区块链开发)4.8 PWA
Progressive Web Apps是两个web app但是在功能和样式上给用户带来原生应用使用体验的一项控制技术.
积极响应式 在离线环境下也能够提供服务 类似App的交互 HTTPS 可靠, 迅速, 更好4.9 Web Assembly
类似汇编的二进制格式的代码可以被应用程序执行. 可以使用类似C/c++和Rust等高级语言进行编写.
比JavaScript执行效率快 更安全 – 强制的应用程序同源和安全协议 开放 & 可调试