赞
踩
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
全栈介绍:
需求分析、设计规划、数据库设计、前端开发、后端开发、测试、服务部署、后期维护,全部一个人搞定。
对于非计算机专业或转行的同学,甚至本专业的同学未来需要往 Web 全栈方向发展,并成为一名资深开发的必备知识体系能力清单。 一名优秀的前端开发工程师也叫做 "全栈开发工程师",这个时代也被叫做"大前端时代"。 只有根基扎实了,未来才能盖高楼大厦。
需要了解和熟悉核心知识点,具体内容可查阅相关资料
计算机组成原理 | 操作系统 | 汇编语言 |
---|---|---|
冯.诺依曼结构 | 进程和线程 | 寄存器和内存模型 |
二进制 | CPU调度算法 | 堆栈模型 |
算术运算和逻辑运算 | 内存管理 | CPU指令 |
各级存储器的区别 | 文件系统和IO | / |
编译原理 | 计算机网络 | 编码 |
---|---|---|
编译器流程 | TCP/IP协议 | ASCII编码 |
AST | UDP | Unicode字符集 |
/ | DNS , HTTP | UTF-8,UTF-16 |
结构化与非结构化的思维非常重要
逻辑结构与代码表现 | 线性结构 | 树(tree) | 其他 |
---|---|---|---|
栈(逻辑结构) --数组、链表(代码表示) | 向量(C语言中length不变) | 普通树 | 优先级队列:堆 |
队列(逻辑结构)–数组(代码表示) | 链表 | 二叉树(为何重点是二,而非三、四?) | 词典(散列表) |
树(逻辑结构)–对象(代码表示) | 栈 | 搜索树(AVL树、红黑树、B树) | 图 |
/ | 队列 | / | / |
了解基本常用算法
算法思想 | 递归思想 | 常用算法 | 算法刷题 |
---|---|---|---|
二分 | 本质 | 线性结构 (增、删、查、排序) | leetcode |
贪心 | 爆栈 | 树结构 (遍历) | / |
动态规划 | / | 图结构(搜索,最短路径)字符串(KMP算法、前缀匹配) | / |
面向对象OOP | 面向切面AOP | 函数式编程FP |
---|---|---|
类和对象 | 主要功能、意图 | 高级函数,纯函数 |
三要素(封装、继承、多态) | AOP/OOP区别 | curry |
UML类图 | 作用、应用范围 | compose |
SOLID原则 | 常见设计模式 | 常见应用程序框架模式 |
---|---|---|
单一职责原则 | 工厂模式、构造器模式 | MVC |
开闭原则 | 单例模式、原型模式 | MVVM |
里式替换原则 | 发布订阅者模式(观察者模式) | ORM |
接口隔离原则 | 适配器模式、装饰器模式 | / |
依赖倒置原则 | 代理模式、外观模式、迭代器模式 | / |
业界标准:W3C、ECMA-262
XML:可标记扩展语句
基础标签
媒体标签、图形标签
基础 | 布局 | 定位 | 响应式 | CSS3 | 模块化 |
---|---|---|---|---|---|
理解“流”CSS设计的核心 | block和inline-block | relative,absolute | viewport | 渐变 | BEM |
基础的图文样式 | 盒模型、margin相关 | fixed | rem | 动画 | css-in-js |
层叠性和选择器权重、字体、iconfont | float 布局,BFC,Flex、Grid、响应式布局,移动端事件 | 定位上下文 | vw vh,百分比 | 2D/3D 转换 | / |
值得深入研究,目前最新技术方案
最近,WebAssembly 在 JavaScript 圈非常的火!解析运行更快,将改变 Web 开发领域
WebAssembly 是一种可以使用非 JavaScript 编程语言编写代码并且能在浏览器上运行的技术方案。
WebAssembly 由 Web 和 Assembly 组成,简言之就是在 Web 上运行 Assembly,其缩写是 wasm。开发者可以把 Rust、Go、C 等编写的程序编译为 WebAssembly,从而让程序在浏览器中运行。
2019 年,W3C 宣布 WebAssembly 核心规范成为正式标准。
时隔 3 年,在 2022 年 4 月 W3C 又发布了 WebAssembly 核心规范 2.0 的首个草案
目前,国内大厂已经在实际生产中应用了。(比如:微信的存储和算法中台)
WebRTC,名称源自网页即时通信(Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的 API。
一线企业级项目研发流程
1、代码版本管理 Git:
2、软件包管理:
3、技术基建:
4、Mock:
5、调试和抓包:
6、单元测试:
7、CI/CD:
8、linux 基本应用:
9、文档:
10、研发流程:
① 需求评审和 UI 设计
② 技术方案设计
③ 开发过程:编码、调试、单元测试、自测、写注释和文档、代码走查等
④ 联调
⑤ 提测
⑥ 上线:全量,小流量(灰度),ABTest
⑦ DevOps
从全局的视角,看清楚完整的技术体系和学习路线是非常有必要的,学习就不会迷茫。
来源:arry老师知乎
Web全栈开发学习路线(基础篇)
Web全栈开发学习路线(高级篇)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。