我如何选择开源组件

前言

如何选择开源组件?

最开始面临如此多的开源组件选择,难免有些恍然。

根据最近几年的经验,大致总结了下自己选择开源组件的原则和经验 😃

经验

  • 选择大的、成熟的开源社区、或知名开发者开发维护的组件

选择发布版本比较频繁、Fork&Star数量多的组件


  • 选择License授权对商用友好的开源组件,以利于法律合规,例如,Apache、MIT、BSD、LGPL等

GPL、AGPL等授权组件,虽然可以内部使用,但对外发布限制比较多,注意进行隔离、减少依赖


  • 选择LTS或Stable分支的版本
    • 必须避免选择master、dev分支
    • 最好选择适合使用,但已结项的分支版本
    • 根据社区历史版本发布规律,判断分支成熟度,最好选择分支的后期发布Release版本

  • 通过阅读组件说明Doc文档,或API接口代码,选择设计清晰、具有良好编码习惯和编码规范的组件
相关推荐
华为云开源21 分钟前
openGemini 社区人才培养计划:助力成长,培养新一代云原生数据库人才
数据库·云原生·开源
铁匠匠匠6 小时前
从零开始学数据结构系列之第六章《排序简介》
c语言·数据结构·经验分享·笔记·学习·开源·课程设计
sqll56712 小时前
最新简洁大方的自动发卡网站源码/鲸发卡v11.61系统源码/修复版
前端·开源·html
小强在此14 小时前
【基于开源鸿蒙(OpenHarmony)的智慧农业综合应用系统】
华为·开源·团队开发·智慧农业·harmonyos·开源鸿蒙
customer0816 小时前
【开源免费】基于SpringBoot+Vue.JS在线文档管理系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
檀越剑指大厂20 小时前
开源多场景问答社区论坛Apache Answer本地部署并发布至公网使用
开源·apache
DisonTangor1 天前
Mistral AI 又又又开源了闭源企业级模型——Mistral-Small-Instruct-2409
人工智能·开源
customer081 天前
【开源免费】基于SpringBoot+Vue.JS网上超市系统(JAVA毕业设计)
java·vue.js·spring boot·后端·开源
hellojackjiang20111 天前
开源即时通讯IM框架MobileIMSDK的H5端技术概览
网络·开源·即时通讯·im开发
思通数科x1 天前
思通数科开源产品:免费的AI视频监控卫士安装指南
图像处理·人工智能·目标检测·机器学习·计算机视觉·目标跟踪·开源