「软件开发」与「程式设计」的区别(一)
2022年06月19日
对于「软件开发」与「程式设计」这两个名词在涵义上有很大的不同的,软件开发包含了项目的规划,人力、资源的配置、工作项目执行与时长的掌控,最后还有品质测试与软件部署,程式设计只能算是其中一个工作项目而已。但是在大多数人的眼中,大多都会认为「软件开发就是程式设计」,「程式设计就是软件开发」,甚至许多从事软件开发行业的人也都对这两者有着「这两个是一样的」,这样的误解。因此,便会认为在开发团队中,只要找了一些知道如何写程式、或是很擅长写程式的人,就可以顺利地,把软件开发出来。即使软件开发中的各个环节需要其他的角色,也不过只是跑龙套的角色而已。真正的主角还是撰写程式,其他环节其实并不重要,只要搞定程式撰写,就大概可以搞定整个软件的开发了。
会有这样的想法,大多是因为看到程式设计产出了实际的源码,而这些源码就是软件运作的根本,因此产生了「做好程式设计,就是软件开发的全部」这样的疑惑。如果把软件开发比喻成篮球赛,程式设计就是球员把球投入篮筐。但是要把球投入篮筐,除了球员本身的天赋和不断地练习之外,还需要球探先收集对手的资料、习性等,然后教练针对这些资讯来设计相对应的战术,看是要投三分球,还是切入禁区投篮,而这些战术也需要其他队友的配合,帮忙阻挡或是吸引防守球员,纪录员要记下每次投篮的命中与否,作为日后训练的统计资料依据,全部综合起来,才能在每一次的进攻中得分,进而赢得比赛。如果在篮球场上有五位明星球员,每个都是投篮高手,但是彼此之间没有任何默契,不懂得传球,卡位掩护队友,执行教练下达的战术,只知道自己拼命投篮,这样的球队是不可能获胜的。想打好一场篮球赛,个别球员的球技固然扮演重要的角色,但是像是作战策略的拟定、或是融入于比赛之中的各种观念,默契搭配方式,其重要性也不亚于球技,甚至更在那之上。