今天做了一个关于如何做架构设计的分享,其中有个很重要的问题就是如何更好的做技术决策,我针对我们前端团队整理了5条做技术决策的原则。

原则 0: 遵守公认的好的设计原则,比如说:
- DRY - Don't repeat yourself (不要重复自己)
- KISS - Keep it Simple, Silly (让设计尽可能的简单)
- YAGNI - You aren't gonna need it (只做刚刚好的设计,不要过度设计)
- … 其他

原则1: 找出最本源的需求,而不应该局限于当前的技术实现和资源

很多时候我们很容易被表面需求所误导,类似于乔布斯的名言:“如果亨利福特在发明汽车之前去做市场调查,他得到的答案一定是大家想要一辆更快的马车。”,如果我们在做设计和技术决策的时候,没有找出用户的真实需求,很容易就会在错误的方向上狂奔,做很多无用功!

要找出本源的需求,还是需要多问为什么,多和干系人沟通,少考虑技术细节,少被现有的技术所误导或局限。

- 案例:设计部门希望设计系统支持Angular (更多案例参考图一)
我们设计部门最近希望我们的设计系统提供Angular版本,因为当前只支持React版本。
从这个需求来看,表面是是要我们开发Angular版本,其实如果仔细追问他们到底为什么需要Angular版本,是因为有一个团队还在用Angula,他们希望这个团队能用我们的设计系统,但是人家表示用不了。其实本源的需求是希望有更多的团队用设计系统,而不是要支持Angualr。
那要满足这个团队的这个需求,是不是非要做一个Angular版本不可呢?当然不需要,如果我能提供一个类似于BootStrap的HTML和CSS版本,其实他们一样能用起来,而这么做成本不高,并且别的团队也可以用。

原则2: 聚焦于 “收益”、“成本”和“风险”三者之间的平衡,而不是技术本身
(图二)
每一次技术决策,其实本质上就是一次取舍(Trade-Offs)
每一次取舍(Trade-Offs),本质上就是在“收益”、“成本”和“风险”三者之间的平衡

既然每一个决策都涉及到收益成本风险,那么就不能只看收益而无视成本和风险。就像前一个案例中提到的,设计部门考虑的是Angular版本带来的收益,但是他们却忽略了打造一套Angular版本的设计系统所需要的成本,以及可能带来的巨大风险。(图三)

所以在做技术决策的时候,理性的考虑一下 决策背后的收益、成本和风险的关系是很必要的,而不是仅靠喜好或者直觉来做决策。

原则3: 选择某个技术背后的生态系统而不是某个技术
这条原则特别适用于前端领域,在前端,各种新技术、框架、工具层出不穷,如果总是追新,或者被某个软文吸引轻易选择了某个技术,最终会带来巨大的成本。

案例:为什么我们从Preact迁移到React
在早些年的时候,我们前端选择了Preact作为UI渲染技术,这有早年React License的原因,也有Preact更小性能更好的原因。
然而这些年在使用过程中,还是有很多不足的地方,核心原因都是生态不够好。
比如说Preact调试很麻烦,因为它不像React有一个强大的DevTools;比如说我们遇到过Preact在服务端渲染的内存泄漏问题,如果像我们这样大规模访问量的用户多一点,可能早就有人踩过坑了,不需要我们去花很长时间定位并最终去解决这个问题;比如最近我们在集成Nextjs,Nextjs是完全为React设计的,对Preact兼容性并不好。

这样的案例还很多(图四),所以选择技术,它背后的生态和社区活跃度很重要。

原则4: 不仅要考虑如何构建,还要考虑如何维护
(图五)
这是一个常见的问题,很多人只管搭建新项目的时候爽,而不管后续维护是不是困难,用了一堆自己喜欢的新技术,最后难以维护。下一个人接手了,搞不好会推翻重写一遍,这样的循环一次又一次。

这样的错误我也常犯,比如2年前React Hooks刚出的时候,我就迫不及待用它来替代Redux,结果上线后发现不好维护,有Bug也不好定位,不像以前Redux,数据流特别清晰,借助工具非常好重现和定位问题,最终上线没多久就改回去了。

所以现在在做技术决策的时候,我们很注意的一个问题就是将来维护的时候是不是很麻烦。

包括我在代码审查的时候,有时候看到一些功能能运行的很好PR,但是代码写的比较难懂的,或者没有遵守最佳实践的,只要是给未来的维护造成麻烦的,我都会毫不犹豫要求重写,避免增加未来的维护成本。

上面就是我们现在实践的五个技术决策原则:
- 原则 0: 遵守公认的好的设计原则
- 原则 1: 找出最本源的需求,而不应该局限于当前的技术实现和资源
- 原则 2: 聚焦于 “收益”、“成本”和“风险”三者之间的平衡,而不是技术本身
- 原则 3: 选择某个技术背后的生态系统而不是某个技术
- 原则 4: 不仅要考虑如何构建,还要考虑如何维护

这些原则绝大部分时候都可以很好的帮助我们做出正确的决策,避免踩坑。但我也会一直在反思曾经做过的决策,对于做出的不太好的决策,会反过来考虑是否要修订这些原则,最终通过不断完善决策原则,帮助我和团队更好的做出技术决策。

最后,推荐一下左耳朵耗子写的一篇:《我做系统架构的一些原则》https://t.cn/A6xBKsCV ,非常有借鉴和参考价值。

插一个广告(图六),帮以前我在美国DePaul大学的老师招全奖研究生的广告:https://t.cn/A66yuwuq

有幸被选中参与这次“炼狱蝰蛇V2 X极速版”的众测。收到之后在办公环境和游戏环境用了十几天,现在分享一下外观设计、握持、无线连接及续航方面的感受。

“炼狱蝰蛇V2 X极速版”像极了剪线的“炼狱蝰蛇”,无论外包装还是鼠标本体都和“炼狱蝰蛇”几乎一样。

纯黑磨砂的机身对硫酸手极其友好,再也不用担心橡胶件用久了沾灰或者沾手什么的。灯厂的经典灯效没有了,机身只剩下一个指示灯可以发光,确实让人遗憾。滚轮区域和logo的线条采用了黑色镜面材质,让鼠标外观看起来更具视觉层次感、更耐看。鼠标底部设置4块特氟龙脚贴,看惯了黑色的脚贴觉得这款白色的十分醒目。这款“炼狱蝰蛇V2 X极速版”的外观传承了经典,美中不足的是:取消了灯效。

握持体验方面,笔者的手比较小(掌长约18cm),之前惯用的鼠标是罗技G304,一开始使用这款雷蛇炼狱蝰蛇V2 X极速版的时候显得有点不适应,只能从以往的抓握改变趴握。但得益于它的外观延续了经典人体工程学设计,鼠标体积虽然比笔者之前用的大一圈,但手指位置下垂弧度也很自然很合理,掌心支撑饱满,用了大概一天就基本已经适应这款鼠标。
左右键采用一体式方案,按键感觉轻盈干脆,确认感清晰,回弹力度很足,没有明显的空键程,主按键手感表现上非常不错。

侧键布局十分合理,握持状态下拇指能轻松且准确地分别按到前进和后退键,按键较大,很少出现误触的情况。在浏览网页和翻文件夹的时候十分方便。雷云软件也为这两个按键注入了强大的自定义功能,让这两个按键发挥更大的作用。

DPI调节按键分布在左键的左边,动动食指就能直接按到,所以笔者也通过雷云软件将这两个键改成了其他快捷键。但是这两个按键由于体积限制没有采用微动开关,相对于常规按键来说,按键力度比较软,反馈力度也一般,也许只能作为辅助按键使用。
鼠标机身裸重约为77克,搭载5号电池重量约为100克,搭载7号电池约为88克,重量表现较为不错。握持体验笔者认为还是兼顾大部分人的办公日常使用及游戏娱乐的,值得推荐。

雷蛇炼狱蝰蛇V2 X 极速版有两种连接方式,蓝牙和2.4G,通过底部的切换按钮就可以轻松切换。掀开雷蛇炼狱蝰蛇V2 X 极速版的磁吸可拆卸上盖案,就可以看见接收器的收纳位置了,装回上盖时,要用对准定位桩,让上盖的微动导柱先就位再装上整个上盖比较好,直接装上的话,左右键会有卡住的现象,需大力按下才能消除。接收器采用了常见的NANO接收器造型,在顶部塑料印有对应的产品型号,辨识度高。同时能通过雷云软件进行HYPERSPEED极速多设备配对,有同类雷蛇设备时就可以省一个USB接口了。

无线连接模式,支持125Hz/500Hz/1000Hz三档轮询率,最高支持14000DPI及最多五档DPI设置,轻松对应不同的使用环境。HYPERSPEED无线连接技术连接稳定,延迟个人觉得和有线已经没有区别了。笔者在收到这个鼠标之后一直作为主力鼠标使用,日常使用中也没有出现卡顿、断连等问题。在游戏体验中,凭借5G光学传感器带来的出色定位精准性,及快速响应,堪称如虎添翼。

拨动切换按钮,进入蓝牙连接方式,笔者的手提电脑马上就收到配对消息,通过简单的确认就能轻松连上。但蓝牙连接模式下,不支持轮询率的调节,默认是125Hz,也不能使用鼠标宏等功能了,只能作为一只普通的鼠标使用。蓝牙模式也可以连接ipad等平板设备(也能连iPhone但操作没有反应),能一定程度提升平板设备的生产力。

炼狱蝰蛇V2 X极速版取消了尾灯,只保留一个指示灯,因此在续航方面表现很出息,在无线2.4G/蓝牙下的标称续航是235小时/615小时。装上了随机自带的电池,笔者在中强度使用2个星期之后,软件显示的电量也只是下降了一格,表现十分出色。要是追求极致续航的话,还可以在雷云软件内将轮询率降到最低。

相对于内置锂电池,笔者更喜欢这款鼠标采用的可替换电池方案,混合式电池仓提供了5号电池和7号电池仓位,在外勤环境使用下,再也不用担心找不到合适的电池了。磁吸式上盖能轻松拆下,降低了更换的电池的难度,也避免了卡扣断裂的风险。虽然是混合式电池仓,但由于两个仓位有干涉,仅支持一枚电池使用,如果是追求重量的使用者,我觉得可以在空的仓位上放置一些重物并固定,改变一下鼠标的手感。

不知知觉,炼狱蝰蛇V2 X极速版已经陪伴我网上冲浪、日常搬砖、冲锋陷阵十多天了,这款剪掉线的炼狱蝰蛇有着有线鼠标一般的稳定性,配合强大的雷云软件,能满足各种使用场景。加上要啥自行车的价格,和200多小时的无线续航,哪怕缺失了作为灯厂出品的光污染信仰,也不觉得让人太难受。

总得来说,这款鼠标无论从性价比方面、功能方面都是非常值得推荐。鼠标整体采用塑料磨砂设计,磁吸无卡扣上盖设计,也使耐用性上了一个台阶。出色的经典人体工学设计对于第一次使用这类型鼠标的非大手用户来说,可以说是非常友好。成熟的光学传感器、超顺滑脚贴的PTFE,加上几乎无空程感的按键,确实能给到笔者指哪打哪的感觉。

最后,再次感谢糖纸给我这次众测的机会,再次感谢各位读者!谢谢你们的支持!#糖纸众测#

#好物推荐##好物分享##美食[超话]# 定表⏰晚点抢❗

仅240❗さいみがん山姆爆好吃的プラム【蜂蜜梅肉】

过年吃的太油了,来颗梅子解解腻!

一大包量超足,山姆在售78

无添加 :❌甜蜜素 ❌糖精钠 ❌防腐剂 ❌色素

✅一口软糯酸甜,好吃到停不下来️

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
点击下方,直接购买


发布     👍 0 举报 写留言 🖊   
✋热门推荐
  • 去不了重庆,先尝尝【东城】 ——一次还没吃就呛哭的火锅!能吃辣的,建议中辣!
  • 在字句里走近樱花,又永不靠近,像一件含而不语的温暖心事,我们都在世间,看一株樱花开在微雨天,开在晴好的某天,开在钟声淌过的黄昏,开在故事的结束也开在故事的起初。
  • 太乖了以至于医生直接抱手上给他打疫苗了第一次吃罐头 “吃相难看”天天陪我kill time睡姿妖娆找不到了那一定是睡着了靓照哈哈七夕这天通宵刷了22局排位从钻四
  • 4.边缘计算成为各路云服务商新的竞争热点,也是5G时代云业务有巨大增长潜力的领域。1.中国云市场IaaS、PaaS、SaaS服务模式继续协同发展,市场规模随客户
  • 那时给陌生人拍照,特别是合影,摄者的嘴是不能停的,这几乎是一项基本功,对错人家不会怪罪,关键是你的态度。就这样,为了一个船家,我跑过好几个街巷,气喘不知,终于追
  • #优惠卷实时更新# ------要什么卷留言,帮你搞定------ 领.下链.接: {原.佳79.00 卷.后59}宽松长款针织衫,能很好地遮住腰腹部
  • 甲己合于戌月,地支三土,时支是火与土,不违逆,天干又透戊土原神,四柱不见木星,为真化格。庚午、辛未77岁后大运,因庚辛能克甲木,使化气一字还原而凶。
  • 这个阶段是最难熬,也最花钱的时候,那么多企业都在投新能源汽车,投资都是上千亿,还要上市融资,都是为了有足够的的钱去搞研发,等以后产品出来了就开始赚钱回笼资金了。
  • #早安[超话]##花艺[超话]# 嗯今天是有点长的文案第一次以花艺主理人的身份度过七夕忙忙碌碌,却又充满欣喜每一束花,都好似在听一个浪漫的故事但爱,一定不止七夕
  • 刚才经过食堂碰见以前一个寝室住的女生,之前见面笑嘻嘻挺好的,现在见面要不然当没看见要不然说话带刺,只有一个女生认真的夸我变漂亮了还问我是不是交男朋友了因为她觉得
  • 没有多少人真正理解但是愿意为团队拼搏愿意不断成长的人都懂假如,你不去理解你看不到、想不到的还有很多你看不到他年纪轻轻耳边却渐多的白发你看不到他遭遇苦难时孤独、失
  • 2005年7月,他的正反两体手抄千米长卷,被认定为“中国反书长卷之最”。神话见证了名利场中的一段真情[心]—CCTV《艺览天下》图源见logo [蝙蝠侠]所有真
  • 其实仔细想想,我是热爱当老师的,也是从小就喜欢这个职业的,读小学的时候天天拿粉笔在墙上写板书给空气上课,而现在的工作也在证明,我的确在当老师这条路上过的挺开心的
  • [心]相伴走过7年的人生旅途,前天上午九点四十五分,这段传奇的男主人公袁迪宝在丹妮和家人的陪伴下安然过世,享年90岁。[心]相伴走过7年的人生旅途,前天上午九点
  • 轻柔的风唤醒一颗颗精灵嫩绿的芽露出尖尖的角探触这个世界的温度  光影伴着春天的脚步重生这个即将消逝的冬尽情倾洒寒冷在大自然的魔力中释放多维人性  而共情的是每一
  • 这个做法最重要的是要做到忙时有人忙,概念经营分两个一是招牌概念,招牌给人的第一感觉不能错乱,顾客看招牌就有一个明确的消费概念,但有一次做个银饰品牌加盟店情况就很
  • 唉,讲真的,如果宋茜没死就更好了。6.刚开始,王一博不肯接受宋轶,到后来终于可以看见他俩发糖了,真是磕到了,磕到了7.妈的,王一博他哥,我以为已经是大boss了
  • 能把我逼到删人这种地步 可见我有好生气了我不是没有和别人吵过架发生过矛盾比这更凶的都有 只是发生矛盾的人不同而已我不知道这种步步紧逼有什么意思喃既然聊不到一起
  • 然后我看到的那一瞬间就突然真的很难过,时间过得太快了,感觉我妈妈就是个小孩子,喜欢很仙的衣服,喜欢亮闪闪的发卡,喜欢逛街孩子气,希望妈妈身体健健康康的,每天都要
  • #大众看济南# #济南身边事# 【“马”过天晴 济南市区“蓝值”爆表】“下过雨后,这天还真好看,风雨过后格外美。据了解,本届科技节分为“体验、展示、竞技、创客”