软件工程是否可以提高代码质量?

2019-05-14 15:02:28 +08:00
 azuki

所谓软件工程

↑这是王垠的一篇博文,上面的链接是备份。他的博客上已经看不到了。不知是不是改变了观点。

我发现软件工程这整个领域,基本就是吹牛扯淡卖“减肥药”的。软件行业的大部分莫名其妙的愚昧行为,很多是由所谓“软件工程专家”发明的。 …… 他们把这些所谓方法论兜售给各个软件公司,鼓吹它们的各种好处,说使用这些方法,就可以用一些平庸的“软件工程师”,制造出高质量低成本的软件。 …… 全都是一群饭桶。他们其实根本就不懂很多编程的东西,写出文章和书来也是极其肤浅,一知半解。

软件工程真的如此不堪吗?对提高软件质量帮助很小?虽然没有经常被提到的数据库、操作系统、网络等学科重要,但是否像文章里说的毫无价值?

这些“方法论”或者“原则”对于你们写出更好的代码是否有帮助?

5974 次点击
所在节点    程序员
50 条回复
janxin
2019-05-14 15:05:56 +08:00
软件工程从来不是天才们被束缚的借口

软件工程只是我们这些“ idiotic ”工程师的护身符。

当然,yinwang 是有点夸大了一点
udev
2019-05-14 16:02:52 +08:00
一般批别人这样的,也是一路货色!
一切上规模的项目都需要科学的组织规划,所谓方法论是有必要的。
yulitian888
2019-05-14 16:06:15 +08:00
如果软件工程方法不能,那么,什么能?
zqx
2019-05-14 16:07:33 +08:00
软件工程很神奇,一方面是计算机科学与技术专业的一门专业必修课,一方面又是一个(二级学科?)专业,连教育部也弄不清他的定位
emeab
2019-05-14 16:08:23 +08:00
软件工程方法能制造出高质量低成本的软件还不够?
jinliming2
2019-05-14 16:09:21 +08:00
@zqx 数学也很神奇,物理也很神奇,化学也很神奇……
whileFalse
2019-05-14 16:19:01 +08:00
牛逼的程序员 without 软件工程 > 傻逼的程序员 with 软件工程 > 傻逼的程序员。
软件工程有用,但也并非神器。

只是网瘾同学从不考虑成本。
FrankHB
2019-05-14 17:26:12 +08:00
……你可以对照现代医学对疾病的治愈率来理解。
yinanc
2019-05-14 17:39:21 +08:00
https://www.zhihu.com/question/268523561/answer/338633735
我觉得软件工程的方法是面对任何一个巨型项目的唯一办法
luozic
2019-05-14 22:42:36 +08:00
呵呵,牛逼程序员 搞搞一个完整的系统? 吹出狗了
luozic
2019-05-14 22:49:07 +08:00
看来 AT&T IBM miscrosoft sun Google Facebook amazon 都没花钱请牛人,基本软件工程最牛逼实践,最前沿的就是按顺序来的几家了。
dfjslkjdf
2019-05-14 23:32:26 +08:00
软件工程和代码质量关系不大吧,
软件工程是解决软件复杂度的问题

代码质量你得看重构,代码整洁之道,设计模式之类。
dfjslkjdf
2019-05-14 23:34:52 +08:00
“编程真的是一门艺术,它完全符合艺术的各种特征,编程界也充满了艺术界的独有特征。有些初学艺术的人(比如 10 年前的我),总是挑剔手上的工具,非要用最新最炫的工具,用它们最偏僻最难用的“特性”,才觉得自己能够做出优秀的作品。很多人照不出好的照片,就怪相机不好。买了几万块钱的笨重高档相机,照出来的照片还不如别人用手机照的。这些人不明白,好的摄影师和不好的摄影师,区别在于眼睛,而不是相机。一个真正的艺术家,可以用任何在手上的工具创造出色的作品。有些甚至可以用一些废品垃圾,拙劣的工具,做出杰出的,别具风味的艺术品。因为艺术存在于人的心里,而不在他们使用的工具里面。”


大致看了这段,就知道这是很简单的问题,
他把自己比作手艺人,传统的小作坊模式,
但是实际上现在大工厂的管理方式可能去用小作坊的生产模式吗。

富士康和街边手艺人有什么可比的。
可能我看的比较快,看错了
wanzy
2019-05-14 23:48:55 +08:00
软件工程是一个工程问题,解决的是软件开发的过程管理,研究如何有序地可预估地开发大规模的软件。代码风格的统一和优化只是其中最简单的部分之一。
xuanbg
2019-05-15 01:07:58 +08:00
软件工程只能保证你能在规定的时间内编写完成可用的代码。至于代码是好是坏,它才不管。
neoblackcap
2019-05-15 01:14:55 +08:00
看过《人月神话》就知道,软件工程不是银弹,天才们也的确不需要软件工程也能开发出好软件。不过大型的系统用 20 号天才开发要 20 年,用 20 个天才,加 1980 个庸才则可以在 5 年完成一个可用的系统,你叫老板选哪一种?软件工程只是为了控制项目复杂度而提出的方法论。你要让软件工程帮你将软件变得像数学公式一样正确有效,对不起,它做不到。
blless
2019-05-15 08:10:25 +08:00
软件工程差不多就是码农流水线了,当然好处在于传统行业流水线改进成本巨大,软件行业流水线可以迅速迭代。
王垠看不起测试用例看不起软件工程自然有他自己的理由,普通人还是老老实实把测试用例写好吧。我自己开发的业务过段时间再看,细节逻辑很多记不清了。说白了我也只是个凡人罢
zgl263885
2019-05-15 08:16:22 +08:00
菜鸡的眼光
chinawrj
2019-05-15 08:29:12 +08:00
一个人写个小项目也叫工程?什么叫做工程,几百人上千人上万人写个项目才叫工程。
labnotok
2019-05-15 08:57:03 +08:00
要是全信王垠的话,
那这个世界上除了他自己的 就没有不垃圾的东西,

但是王垠自己也没做出什么东西来

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/564024

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX