软件设计方法
文章平均质量分 58
码农练功房
嵌入式开发,C++后端开发,通信协议软件开发
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
第一颗子弹
软件不软的一个主要原因,是其经常处于变化之中。所以,当策略分离不同的变化方向被提出后,一个随之而来的问题也就产生了:何时分离?尽管一个软件已经满足了当前所有需求,作为富有经验,伤痕累累的程序员,我们却毫无喜悦,因为我们很清楚,事情还远未结束:用不了多久,新需求就会再次排山倒海般涌来。而当前设计能否顶得住下一波的冲击,没有人心里有底。怀着不安的心情,我们打开IDE,调出代码,翻页跳转,试图从字里行间揣测未来变化的可能性。可深究起来,几乎每一行代码,每一项知识都似乎存在变化的可能性。但如果把每一种可能的变化转载 2022-03-04 15:08:28 · 198 阅读 · 0 评论 -
一次正交设计之旅
文章来自于刘光聪,实践了一把,觉得在代码设计上自己有如下收益:多级容器封装;分离变化方向;依赖于稳定;C++私有继承堪称C++的必杀技之一。原文章里面代码有编译错误,这里重新整理了一下,方便大家看。重构的思路可以看原文章:一次正交设计之旅重构前的代码:static vector<vector<int>> getFlaggedCells(vector<vector<int>>& board){ vector<vector<原创 2022-02-24 08:40:41 · 240 阅读 · 0 评论 -
DDD,微服务,容器
微服务大概是这个意思:传统的大块软件要划分成比较小的、可独立运行的模块;每个服务模块可以用不同的语言去实现(polyglot);模块之间仅仅通过服务接口和消息队列互相耦合,其他对接方式基本没有;它们很容易被替代(Design for replacement),因而有利于整体系统的持续演化;杜绝微服务之间共享数据库,各管各的数据,传统应用中动不动就是几十、上百张的表,是不能接受的;每个微服务模...转载 2018-08-08 13:40:09 · 515 阅读 · 0 评论
分享