python能做什么项目-Python可以做大项目吗?

类似的问题总是重复的出现,现在我来为大家总结一下,为什么类似这样的问题本身就是不成立的。

先说结论:

对于一个项目而言,什么样的语言适合仅仅与与具体的应用场景和当前开发团队的技术背景有关,和项目规模无关!

我来举一个例子说明一下,为什么这样的问题本身就是不合理的。

打个比方讲,前些日子,我刚刚接了一个合同金额大约4kw的工业园区监控和分析的项目。金额没有上亿,但是在我做过的数十个软件开发项目中,论业务复杂度和数据规模还都算作相当可以的了。

售前团队(兼职项目启动之后的需求分析工作)使用Ruby on Rails进行早期的系统原型开发,使项目目标和边界迅速确认,并使客户对我方的开发能力有了足够的信心,所以合同的签署过程还是相当顺利的。

项目启动之后,为了让客户方觉得他们花掉的合同金额是值得的,我组建了一个60人的开发团队,并且常驻到客户方现场。

其中号称Java开发工程师大约30人左右,他们主要负责系统中后端的开发工作,当然SQL语言对于他们来讲也是必须掌握的基本功;另外这30人其实也划分成为了几个小组,稳定的核心业务逻辑部分仍然使用的是Java开发,而对于不稳定的业务逻辑部分,那个小组使用了Groovy(对此我的确质疑过他们,但是开发人员普遍认为Java与Groovy技能之间的切换并不是一个大问题,所以后续维护的风险可以忽略)。

另外要知道,基于物联网的系统,对高并发的场景要求是比较强的,因此那30个"Java工程师”中有4个人使用Clojure来开发其中应对高并发场景的组件以及Stream的处理。

然后,由于主系统的是基于Web界面的,因此项目组中有一个6个人组成的前端开发团队,分成了两个小组,一个小组负责面向终端用户的界面,选择的是React框架(另外,有一些图表,他们使用了D3.js);另一个小组负责开发后台的管理界面,他们比较简单,直接使用JQuery来完成。显然,上述框架都是基于Javascript语言的。

数据分析子系统中,有一些需求需要使用数据挖掘算法(虽然很多人也把这些叫做机器学习),所以有两名工程师专门基于Python语言来完成这一部分号称AI的组件。

项目的需求中,包含开发手机端的应用APP。因此项目组中有一名Android开发工程师,主要使用Kotlin语言和Java语言;同时还有一名iOS开发工程师,本来他对Object-C非常熟悉,但是这个项目他准备尝试使用一下Swift。

客户的需求总是五花八门的,有一位领导强烈要求必须有一个类似于百度网盘的的"文件云存储”功能,于是我从别的项目组借调了一名老同志,使用Delphi 7开发了一个基于Windows XP(你没看错,是Windows XP)小客户端软件,随操作系统自动启动并常驻内存,用来完成后台自动的文件同步。当然,他使用的语言是Object Pascal。

再说说其它相关人员:

项目团队中有8名专职的测试人员,也是分成了两个小组,其中一个小组最终决定使用Cucumber来进行验收测试(你们说这是不是也应该算一门语言)。

1名质量保证人员,他日常主要使用VBA来在Excel中自动处理数据。(在这里多说一句,那些讲XX语言不好维护的人们,我要告诉你们一个秘密:凡是大型项目,都是有叫做"编码规范”这种文档滴,而且有SQA人员会日常抽查工程师们的代码是否符合编码规范。)

项目组中有2名视觉设计师,其中有一个人是个多面手。当客户方有一个领导认为应该让工作人员日常有在线沟通的场所时,我让那位多面手使用Joomla快速建了一个带有论坛功能的网站(当然他使用了一些PHP语言)。

数据库管理员DBA日常主要使用的语言是SQL。

最后,客户方的项目经理有个儿子现在正是小学4年级,我帮他找了一个兼职的大学生,教他孩子Scratch编程(哦,对了,这个和项目没有太大关系)。

来,谁能告诉我哪一种语言比较适合大型项目?

所以,如果你遇到有人告诉你"XX语言不适合大型项目”,你真的有必要追问一句:"你觉得什么样的项目算是大型项目呢?”

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值