谈谈开源技术选型_开源技术 选型-程序员宅基地

技术标签: 破阵子·道  


有时感觉技术选型就像个伪命题,胜出的技术占据绝对的主流,就像 java 领域中 ejb 被 ssh/ssi 框架取代。 大部分项目使用近似的模式搭建,选型在工程中变得似乎可有可无。 时间上胜出的开源技术帮助开发者在客观上做出了选择,我们先了解下影响选型的客观因素。


客观因素

客观因素包括如下:
1. 广泛性
我们都倾向于选择更广泛应用的开源技术以规避未知性风险。
2. 质量
质量我们会参照广泛性作一个侧面证明,使用更广泛可能质量更有保障,不过这对开源技术的新生儿就显得有些不公平了。
3. 文档
完备并及时更新的文档。想想 sourceforge.net 上如今已是代码的坟墓,没有文档的代码生命周期通常都不长。
4. 社区
活跃的社区,让人感觉更安心。出了问题搞不定总还有人可问,对吧?


主观因素

主观因素总结下就一条:技术与团队的适配度。
技术是死的,人是活的,团队的技术背景与驾驭能力则十分关键,否则再好的技术也可能被用成悲剧。


理想的选择

通常,同时具备了上述`客观因素`和`主观因素`考虑的因子,并符合工程需求的开源技术已经所剩不多,按此选择基本不会是太错误的选择。 但这是否是最理想的选择,其实很难说。这就像面试人一样,不管面试过多少人作出了多少次判断和选择,都无法保证这是你想要的理想人选。 出类拔萃的候选人会让你快速而有信心的做出选择,这就是理想的选择,虽不能保证就是理想人选,但成功的信心和概率要高很多。 而平庸的候选人会让你面临纠结的选择,充满怀疑,感觉可能行也可能不行。 我们通过试用人来验证选择,其实同样的道理,我们也是在通过试用技术来验证选择,都存在一样的选择成本和风险。

因此,理想的技术选择就是选择那些能够让你快速而有信心作出判断的技术产品。 注意,我在技术后面加了`产品`二字来强调:技术如果没有赋予产品的灵魂,可能很难达到理想的选择的层次。 关于这块目前想的还不是很清楚,也许以后再另写文章来谈谈`技术产品`。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/mindfloating/article/details/38142313

智能推荐

uniapp--支付宝支付/用户信息授权_uniapp h5获取支付宝授权-程序员宅基地

文章浏览阅读608次。uniapp 支付宝小程序拉起收银台 h5拉起收银台 授权 获取code _uniapp h5获取支付宝授权

ehcache 使用说明_withevictionadvisor-程序员宅基地

文章浏览阅读463次。ehcache 使用说明_withevictionadvisor

在Windows环境配置多版本Java(Java8+Java16为例)_windows下可以按照 java 8+吗-程序员宅基地

文章浏览阅读2.1w次,点赞38次,收藏76次。在Windows环境配置多版本Java相信很多小伙伴在开发springboot后端或者玩minecraft的时候都会遇到上古Java的版本要求(比如Java8),但是如今最新的Java版本已经到Java16了,如何在电脑安装多个版本的Java并做到切换呢?下面来一起看看吧0、准备的准备多版本的Java需求一般是Java1.8+Java11之后版本的组合,本文就将以Java8和Java16两种版本的安装与配置为例。如果你的电脑之前没有安装过任何版本的Java,请直接跳到第2步如果你的电脑之前已经安_windows下可以按照 java 8+吗

北航GPA计算器-程序员宅基地

文章浏览阅读9.3k次。北航GPA计算器北京航空航天大学的GPA计算方法为: 制度 计算公式 百分制 $4-3\times\frac{(100-X)^2}{1600}$ 五级制 优秀:4 良好:3.5 中等:2.8 及格:1.7 不及格:0 两级制 不计入GPA,但计入总学分 ..._北航gpa计算器

苹果付费软件18个,最高499元的软件。_ios付费软件推荐-程序员宅基地

文章浏览阅读1.7w次,点赞8次,收藏15次。(苹果锤子三件套)需要的人多的话,我给大家发一个Thor抓{ T子会员}的教程!Thor三件套(抓包工具)●Thor俗称锤子是一款os平台的抓包调试Htp或Htts协议的工具,在众多抓包调试Htp或Htps协议的工具中功能方面相比较完善和稳定,用户可以通过Thor对绝大多数app进行一些项目的调试,或者抓取一些需要的图片、音频、压缩包、下载链接等,从而制作出来的便是Thor过器。●Anubis是一款网络开发调试和HTTP学习的工具,用来调试API或者学习理解HTTP协议,配合hor使用,可以进行日期._ios付费软件推荐

Python零基础教程7——AI辅助编程之我解-程序员宅基地

文章浏览阅读1.3k次,点赞49次,收藏28次。作为Python编程高手,你精通Python语言的各种特性和功能,对编程有着深入的理解和丰富的经验。你熟悉Python的常见应用领域,如数据分析、机器学习、Web开发等,并能根据需求选择合适的库和框架进行开发。作为一名Python编程高手,你的职责是通过编写高效、可靠的Python代码来解决实际问题,帮助他人理解和应用Python编程技术。无论是初学者还是有经验的开发者,你都能够提供专业的指导和建议,分享最佳实践,帮助他们在Python编程的道路上不断进步。那么他就可以准确度很高的还原已有的正确的编程。

随便推点

RabbitMQ详解(六)------RabbitMQ可靠性投递_rabbitmq consumer tag-程序员宅基地

文章浏览阅读883次。一.RabbitMQ的可靠性投递1.MQ实现异步通信过程中,消息丢失或重复,可能导致业务数据不一致如何解决? ps:在解决问题之前,必须清楚可靠性只是问题的一方面,发送消息的效率同样是需要考虑的问题,而这两个因素无法兼得。如果在发送消息的每一个环节都采取相关措施来保证可靠性,势必会对消息的收发效率造成影响。会产生消息丢失的四个地方:1.从生产者到Broker,Broker未接收 可能原因:网络连接或者Broker的问题(硬盘故障、硬盘写满了)导致消息发送失败,但生产者..._rabbitmq consumer tag

同程旅游 html_html酒店预约界面及代码-程序员宅基地

文章浏览阅读962次,点赞2次,收藏11次。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title> </title> <style type="text/css"> *{ margin: 0; padding: 0; } body{ margin: 0; } .div1{ border-style: none; disp..._html酒店预约界面及代码

git pull时出现unable to access ‘ ‘:Could not resolve host: github.com_git pull unable to access-程序员宅基地

文章浏览阅读1.3k次。unable to access ' ':Could not resolve host: github.com解决方案转载自:https://blog.csdn.net/weixin_42259631/article/details/82893426在终端输入:sudo vim /etc/resolv.conf在最后一行增加nameserver 8.8.8.8或者nameserver 114.114.114.114即可。..._git pull unable to access

php数组转请求参数,学习猿地-php 数组如何转为url参数-程序员宅基地

文章浏览阅读176次。php数组转为url参数的实现方法:首先创建一个PHP示例文件;然后定义一个数组;最后通过“http_build_query( $array )”方法将数组转为URL参数即可。php 将数组转换网址URL参数$array =array ( 'id' =123, 'name' = 'dopost' );echo http_build_query( $array );//得到结果id=123name=..._php 数组转reqeust

Linux | nslookup详细介绍一下这指令的作用以及用法_nslookup命令的作用和使用方法-程序员宅基地

文章浏览阅读4.3k次。nslookup是一个网络工具,通常用于查询域名系统(DNS)服务器以获取主机名或IP地址相关的信息。它可以用于查找主机名的IP地址,反向查找IP地址的主机名,以及查询DNS记录的其他信息。_nslookup命令的作用和使用方法

lucene、lucene.NET详细使用与优化详解-程序员宅基地

文章浏览阅读1.1k次。2019独角兽企业重金招聘Python工程师标准>>> ..._n n ___': - _* . &; v. 7_ 'v & .