又是一个很有争议的话题
世界上有这么多的技术平台和解决方案; windows, linux, .NET, java, PHP, C++, C, Python 等等等。。
在实现项目时,为什么我们选择其中一个,而不是其他呢?
1.团队
- 现有团队的组成 (对大部分情况来说 决定性因素)
- 组建新团队的难度
- 市场上是否容易找到该技术类型的人,(有些方面的人在公司所在地或者说国内不好找)
- 如果找不到该类型的人,是否容易培养
- 在某些特定领域,某种技术有特别的优势或者劣势 (例如一般不会吧C++拿来做网站)
- 由于历史原因,在某些行业,某种技术有特别的优势
- 目标平台和语言本身的成熟度
- 第三方支持,如商业公司,组件和解决方案
- 公司已有的平台,语言和环境(例如公司现在只有linux管理员。。现在搭建一个windows平台就会很郁闷)
- 终端环境,例如使用.net开发的应用就容易遇到目标机器没有安装framework的问题
- 开发效率
- 运行效率
- 该平台人员的薪水
- 该平台软件授权的价格
- 由于技术类型决定的开发时间导致的成本问题
希望大家共同讨论和进步