2023-10-08 14:41:14 +08:00
|
|
|
## 图灵
|
|
|
|
- 图灵机= 卡片条 + 读写头
|
|
|
|
- 卡片内的东西: 数据or指令
|
|
|
|
- 数据与指令可以分开储存, 也可以合在一起储存, 但是他们是不同类型的东西
|
|
|
|
- 分开能让人更容易理解
|
|
|
|
## Lambda 演算法
|
|
|
|
- Lambda 演算法是把 函数 作为了元数据, 通过函数直接的关系代表数据和指令
|
|
|
|
## 元细胞自动机
|
|
|
|
- 元细胞自动机是把 元细胞 作为了元数据, 设定了默认的四种基于周围网格的变化规则, 实现的一种计算机范式, 可以主要是实现了非图灵非Lambda演算的新做法, 主要可以应用在深度学习和流体模拟这种上面, 卷积的算法原理, 但是无法编程主打的是一种炼丹的方式实现
|
|
|
|
|
|
|
|
## 软件工程解耦合
|
|
|
|
- 模块化 (功能之间解耦合)(菜鸟负责简单模块, 高手负责复杂模块)
|
|
|
|
- 高内聚
|
|
|
|
- 低耦合
|
|
|
|
- 单一职责
|
|
|
|
- 分层化(需求与实现解耦合) (无论高手和菜鸟, 都是负责一整层, 或者把一整层拆小再划分, 对能力要求不高. 比如前后端开发)
|
|
|
|
- 底层功能接口需要保证完备, 方便上层调用实现
|
|
|
|
- 举例
|
|
|
|
- 底层: 操作系统
|
|
|
|
- 中高层: 计算机软件
|
|
|
|
- 用户输入=>操作系统回调=>软件=>操作系统API=>硬件
|
|
|
|
- 模式化(历史与未来解耦合)(按照这些范式去做, 能为未来可能的需求变更做准备)
|
|
|
|
- 设计模式
|
|
|
|
- 指令式编程+面向对象式编程+函数式编程
|
|
|
|
- 编程原则
|
|
|
|
- 面向对象S.O.L.I.D 原则
|
|
|
|
- S 单一功能原则
|
|
|
|
- O 开放封闭原则
|
|
|
|
- L 里式替换原则
|
|
|
|
- I 接口隔离原则
|
|
|
|
- D 依赖反转原则
|
|
|
|
- 数据库设计 CRUD 原则
|
|
|
|
- 增删改查
|
|
|
|
|
|
|
|
## 软件开发瀑布流程(开发过程过长)
|
2023-11-02 11:39:28 +08:00
|
|
|
![Dev](Aseets/Dev.png)
|
2023-10-08 14:41:14 +08:00
|
|
|
### 软件开发三层模型
|
|
|
|
- V 表现层 (前端, 用户直观看到的)
|
|
|
|
- A 控制层/应用层 (后端, 业务操作,逻辑判断)
|
|
|
|
- D 数据层 (数据库, 增删改查)
|
|
|
|
### 领域驱动设计
|
|
|
|
以不变的业务领域作为核心(中台), 进行上下的领域设计
|
|
|
|
|
|
|
|
### 敏捷开发
|
2023-11-02 11:39:28 +08:00
|
|
|
![dev2](Aseets/dev2.png)
|
2023-10-08 14:41:14 +08:00
|
|
|
小步快跑, 及时反馈, 快速进步
|
|
|
|
|
|
|
|
敏捷开发, 早点投入市场, 测试
|
|
|
|
|
|
|
|
市场反响不错时, 重构
|
|
|
|
|
|
|
|
><敏捷革命> <精益创业> <凤凰项目>
|
|
|
|
>scrum , 精益, DevOps
|
|
|
|
### 开源
|
|
|
|
开源举例: Linux
|
|
|
|
|
|
|
|
追求性能高效, 放弃解耦合
|
|
|
|
|
|
|
|
开放多人合作, 多人调试优化
|
|
|
|
|
|
|
|
|
|
|
|
## Reference
|
2023-10-14 22:04:18 +08:00
|
|
|
https://www.bilibili.com/video/BV1h3411G741/?spm_id_from=333.788
|