技术选型的目的是什么
在提高生产效率的同时降低风险
因素
- 功能点,是否满足业务需求 这是选择一个组件最重要的因素,而这完全取决于自己对业务的理解和对将来走势的判断。对自己业务理解的约透彻,选择失败的风险越小。
- 成熟度
- Demo完整性 一个成熟的组件一定会有一组完整并且简单易用的demo。或者叫Quick Start。如果按照官方给的demo(Quick Start)都跑不起来。那就要想想了。不管是自己的问题还是组件的问题都说明你们的匹配度不高。
- 文档完整性 文档完整性主要可以通过文档的目录结构,语言的描述来判断。好的文档往往通过目录就可以看清楚组件的轮廓和特性,而且文档全篇具有紧密的联系。
- API 易用性 主要从方法的命名规范,返回值,参数、描述等来判断。
- 生态环境
- 更新频率 看到这个,可能某些人想起了osc上面的版本帝,当然也有发布之后就不咋更新的。这两种情况都会增加这个组件的风险,而这种情况大多是由于开发团队不稳定或者是个人开发者(部分,不要喷啊,不管结果如何,对开源所做的贡献都表示深深的敬意。),当然,你也可以Git他们的代码自己维护。
- 使用人数 人气高了,你碰到相同问题的概率就大了。想想,你用spring的时候,出现过解决不了的问题么?基本都可以google到。
- 问题反馈 大部分的开源软件作者都会时时关注自己的产品及其使用者的反馈。例如Jfinal,有问题@一下基本都会解决。
步骤
- 根据业务实现功能列出满足条件的技术方案
- 参考 因素 进行评价
- 选出适合的方案
举例
- 根据业务实现功能列出满足条件的技术方案 在机场的航班动态页面需要表格展示,具体有如下需求:
- 展示字段多,一个屏幕空间不能够容纳,可能需要树状类型的表格或者表格嵌套
- 信息需要整理为进港、出港航班,需要多表头
- 部分数据需要格式化,例如时间,数量等
- 需要右击,双击等事件
- 部分字段需要合并展示‘
- 需要按列排序
- 初步选择的插件:
- 搜索 :Jquery 表格,根据浏览数,使用人数等初步选定 来自oschina:
来自stackoverflow: 来自oschina:
来自stackoverflow:
- 浏览官方文档,查看是否满足所有特性
- 参考 因素 进行评价
- 选出适合的方案
因素 | FooTable | jqGrid |
---|---|---|
多表头 | 支持 | 支持 |
表格嵌套 | 未知 | 支持 |
排序 | 支持 | 支持 |
文档完整性 | 优秀 | 一般 |
等等... 注:以上方案不代表真实情况,目的在于为了说明情况