一个项目不使用开源技术框架几乎不可能,或多或少要用到一些开源技术框架。在引入新的开源框架之前需要进行选型,进行充分的分析进而选择最适合的框架。选型时主要考虑如下几个方面,对不同的开源框架的优劣势进行对比分析,得出选型结论。任何一款开源框架不可能同时满足所有的要求,要根据实际情况分析哪些条件是必选,哪些是可选。
功能满足度
分析业务应用的各种场景,各种业务场景的满足度如何。
性能满足度如何。
是否易于测试。
涉及到行业规范的,行业规范遵行度如何。
开源风险分析
优先使用开源协议友好的框架。
学习成本分析
API参考、开发指南等资料文档是否齐全。
分析开源框架代码量,依赖其他的开源框架的量。优先使用轻量级的框架。
开源社区活跃度如何。优先使用主流的框架。
集成开发成本
分析集成的难易程度,优先使用入侵项目代码少的,集成方式解耦的框架。
基于开源框架扩展新功能的工作量分析,尽量覆盖各种开发场景。
相关的能力是否开放,是否方便定制。
维护成本
开源框架升级是否支持平滑升级。
开源框架接不同版本之间的兼容性如何。
日志是否丰富,是否有性能统计日志等方便在网维护。
是否有辅助的工具插件。
是否支持分布式以便进行伸缩。