当前位置: 首页 > article >正文

构建自己的框架去做技术选型

技术选型无处不在,你可能需要选择一种类库、选择一个框架、选择一种语言、选择一种组件、选择一个架构模式、选择一种系统方案……。
那么如何构建一个决策或思维框架去做技术选型呢?

技术选型

如上图所示,这是我自己总结出来的一套框架。

我把问题进行了层次结构的划分,从以下方面考虑:

  • 需求满足度:可选项对当前业务或技术需求的满足情况,以及对未来潜在需求的支持程度,即“功能性”。
  • 非功能质量属性
    • 性能:几乎所有框架或组件都宣称自己是高性能。
    • 高可靠/高可用性:是否支持集群或主从结构,是否存在单点故障的可能。
    • 可修改性:是否能对 BUG 快速修复,是否支持扩展。
    • 安全性:是否有认证授权、追踪审计、数据加密等等安全特性。
  • 团队亲合度:实施需要具体的人员,因此就有了:
    • 开发成本:研发对所选技术的上手程度、掌握情况。
    • 运维成本:运维管理的支撑难易。

注意,以上只是我提供的一种框架,每个维度针对不同场景都是可以改变的。例如,如果对比的是开源组件,那么你很可能需要增加“成熟度”这一个维度。重要的不是那些条条框框,而是思考的方式。

构建自己的框架

为什么要做技术选型?在我看来有两个重要原因:辅助决策、达成共识。通过罗列各种指标,进行综合性打分,可以减缓过多的主观情绪对决策的影响。另外,技术选型也是在团队成员间达成一致的手段,这也是一种协作、协商的机制。

你不需要生搬硬套各种技术选型的框架,更合适的方式应该是你进行“结构化”思考之后得到自己的层次结构图,这需要一些积累与刻意练习,但并不难。一旦你掌握了结构化的思维方式之后,在处理其它问题上也会游刃有余。所以,请你只参考,但构建自己的框架。


(我是凌虚,关注我,无广告,专注技术,不煽动情绪,欢迎与我交流)


http://www.kler.cn/a/404239.html

相关文章:

  • Flutter踩坑记录(三)-- 更改入口执行文件
  • STM32芯片EXIT外部中断的配置与原理以及模板代码(标准库)
  • 排序算法:直接插入排序,希尔排序,选择排序,快速排序,堆排序,归并排序
  • linux-字符替换
  • WebStorm 安装配置(详细教程)
  • 【Nginx从入门到精通】05-安装部署-虚拟机不能上网简单排错
  • ChatGPT高级语音模式正在向Web网页端推出!
  • (十八)JavaWeb后端开发案例——会话/yml/过滤器/拦截器
  • 从零开始学习python 11 (持续更新ing)
  • torch.utils.data.dataset 的数据组织形式——python list、dict、tuple内存消耗量
  • 企业网络安全规划建设实践
  • 湛江市社保卡申领指南:手机获取电子照片回执单号
  • 纯血鸿蒙NEXT-组件导航 (Navigation)
  • Xilinx System Generator时序和资源分析方法
  • 题目一:bugku---game1
  • 3.9MayBeSomeAssembly
  • Flink Joins
  • vulfocus在线靶场:骑士cms_cve_2020_35339:latest 速通手册
  • 初试无监督学习 - K均值聚类算法
  • E+H液位计FMU40-ARB2A2
  • grafana+prometheus+windows_exporter实现windows进程资源占用的监控
  • C# Postman或者PostApi调试前端webapi接口发送带有request/body/head信息
  • 量化交易系统开发-实时行情自动化交易-4.2.1.简单移动平均线实现
  • vscode 远程连接ssh 密钥方式
  • 在有网络连接的机器上打包 electron 及其依赖项,在没有网络连接的机器上安装这些离线包
  • 【数据结构】【线性表】【练习】反转链表