一、约定大于配置泰思勒定律也被称为复杂度守恒定律。该定律指出每一个过程都有其固有的复杂性,存在一个临界点,超过了这个点过程就不能再简化了,你只能将固有的复杂性从一个地方移动到另外一个地方。根据这个定律,在做系统设计时,默认会给用户一个“套餐”,这个套餐会满足多数人的需求。实在不满足需求再特殊配置。比如:springboot、JVM的默认值。二、随时保存在如火如荼的编辑文档时,电脑突然死机只能重启,重启后发现...
2023-01-17 11:25:19 344浏览 0点赞 0回复 0收藏
一、海勒姆法则内容当一个API有足够多的用户,你在契约中承诺了什么并不重要:系统中所有看得见的行为都会有某个人依赖……案例现在有两个系统A和B,B的一个接口返回一个列表。A系统的开发人员发现返回的列表都是按照ID正向排序的。本身A系统正好需要其按照正序排序,于是直接自己没有做排序就直接使用了。实际B返回的列表是直接从数据库取出来的,自身没有做排序,并不知道自己的返回列表顺序被依赖了。有一天,B系统有个新需...
2023-01-17 11:21:51 493浏览 0点赞 0回复 0收藏
使用一些类库进行http请求时,比如使用ApacheHttpComponents库。默认的,HttpClient尝试自动从IO异常恢复。这种自动恢复机制仅限于一些被认为是安全的异常,比如套接字被重置或者套接字被关闭。但是有些场景重试会造成重复请求风险。一般来讲,重复请求比网络异常直接返回失败对用户是更差的体验。因为重复请求,实际造成了影响,但是给上游返回是成功,这样实际结果和给上游的返回结果不一致,自身系统从准确性上来说是不准确...
2023-01-17 11:20:47 464浏览 0点赞 0回复 0收藏
谬误一一个人写的烂代码会给另一个人带来一份全职的工作变体:别人看不出做什么用又不敢删、不敢改的代码是维护者的核心竞争力解析:在早几年或者一些非常老旧的系统可能经常会存在这些难以维护的代码。但是越来越重视软件工程的如今,这些问题代码不太可能是长久的饭碗。主要有两个原因:巴士指数(busfactor)巴士指数是美国硅谷流行起来的对团队容灾的一种民间定义。意思是团队中某人被车撞了,团队照常运行的能力。结对编程、...
2023-01-17 11:20:10 345浏览 0点赞 0回复 0收藏
任何东西一旦成为产品,名字就异常重要。软件也不例外,以动物命名因为以下几个优势颇受青睐:1、利用动物名称的易记性,有助于品牌的传播。2、利用动物名称的亲和力,有助于拉近网站与用户之间的距离。3、利用动物特性与品牌特点之间的相似联系,有助于宣传品牌的显着特征和亮点。4、使用动物的logo标志,也让公司企业后续的品牌形象推广,使用吉祥物变得有关联性。5、想开拓领域,旗下其他品牌也用动物来命名,可选择余地大,容...
2023-01-17 11:19:32 377浏览 0点赞 0回复 0收藏