1、软件的开发流程
需求分析阶段:
1、PM产品经理:调研市场,需求分析,原型草图
2、PM召集所有相关技术人员开需求分析会: n次=》需求明确
项目开发阶段:
1、项目设计:
- UE与PM产品经理=》交互原型图
- UI根据原型图-》设计图
- FE=》前端设计
- RD=》后端技术设计
- QA=》测试用例设计
- OP=》运维架构设计
2、项目开发 - 前后端分头开发
- 合并
项目测试
1、开发人员进行code review=》 过一遍代码,审查一下
2、开发人员自测=》改bug
3、QA专业测试=》改bug
项目上线:
1、运维人员编写上线方案
2、测试
环境:
- 测试
- staging
- 线上
1、计算机五大组成部分
控制器
运算器
cpu: x86-64
存储器
内存: buffer、 cache
外存:
- 硬盘接口IDE、SATA、SAS
- 机械硬盘,固态硬盘SSD
输入设备
输出设备
2、配图
3、计算机体系三层结构与优化
五大组成部分:
控制器:是计算机的指挥系统,负责控制所有其他硬件的运行–》大脑
运算器:负责数学运算与逻辑运算---------》大脑
控制器+运算器=》cpu中央处理器
存储器:存取数据
内存:比如内存条--------------》大脑的记忆功能
基于电存取数据,断电数据全部丢失
用于临时保存数据,存取速度都快
外存:比如磁盘------ ----》本子
基于磁存取数据,断电数据仍然存在
用于永久保存数据,存取速度都慢
输入设备
输出设备
总结1:
程序-------》计算机硬件
人一程序--------》cpu------》计算机其他硬件
总结2:
程序的运行与计算机三大核心硬件cpu、内存、硬件的关系。
程序最先是存放于硬盘中的。
程序的运行需要先经历加载的过程:程序的代码/数据从硬盘读入内存,然后cpu再从内存中读取指令来运行。
安装软件都装到硬盘里,软件的运行都是把数据加载到内存中了,所以说计算机硬盘的大小决定了能够安装的软件数目而计算机内存的大小决定了计算机能够同时运行的软件数目。
cpu与内存交互如下图