欧易

欧易(OKX)

国内用户最喜爱的合约交易所

火币

火币(HTX )

全球知名的比特币交易所

币安

币安(Binance)

全球用户最多的交易所

程序员与软件工程师的区别

2022-10-10 19:15:56 1652

摘要:程序员和软件工程师这两个概念经常被混用,有人说程序员和软件工程师是一回事儿,也有人说这两个概念是有区别的。当然了这两种说法都有各自的道理。我们也不需要评判谁对谁错。今天我想从这两个词出发,谈一下我的理解。观点不一定对,我来抛砖引玉,还请大家...

程序员和软件工程师这两个概念经常被混用,有人说程序员和软件工程师是一回事儿,也有人说这两个概念是有区别的。当然了这两种说法都有各自的道理。我们也不需要评判谁对谁错。

今天我想从这两个词出发,谈一下我的理解。观点不一定对,我来抛砖引玉,还请大家批评指正。我认为程序员是缺少工程师思维的软件工程师。换句话说,程序员不具备工程师思维,软件工程师是具有工程师思维的程序员。核心点在于工程师的思维。

那么到底什么是工程师思维呢?所谓工程师思维,是指在处理软件工程技术问题的时候,可以综合考虑人员、工期、成本、业务流程等因素,将软件项目的工作过程规范化、工作成果清晰化、工作效能最大化。软件工程师思维是系统思维的具体体现,特点就是有原则、有条理、足够稳健和完整。

软件工程师思维具体体现在哪几个方面呢?下面我来讲一讲:

1. 着重解决业务问题。程序员的着力点在于项目里的技术问题,工程师的着力点在于解决业务问题。有时候只要优化一下业务流程,就可以减少很多技术难点。我们经常讲的技术驱动就是指这个方面。

2. 控制开发过程。程序员只管闷头写代码,实现各种业务功能逻辑。工程师会从开发过程、项目成本的角度来思考,包括选择开发语言、采用哪些中间件、使用什么数据库等等。技术架构尽量简单,业务逻辑也尽量简化,代码结构也尽量简洁,大项目尽量迭代开发。

3. 降低维护难度。程序员通常不会考虑后期维护的难度。软件工程师会思考这个问题,所以他们会尽量完善项目文档,检查代码注释,甚至专门做一些工具用于后期维护检查,尽量做到容易维护。

当然,软件工程师和程序员还有很多其他方面的不同,我这里就不再一一列举了,大家有兴趣可以在评论区留言探讨。

版权声明:本站所有文章皆是来自互联网,如内容侵权可以联系我们( 微信:bisheco )删除!
友情链接
币圈社群欧易官网