第四节 程式价值
一、程式的种类
因为目的不同,一般说来,程式可以分为以下四种。
1,应用程式:凡专门提供给用户,作某种特殊应用的软件,皆称为用程式。通称「套装软件」( Application Package),即成套包装的软件。
2,系统程式:即为系统所提供的「通用程式」,包括在 DOS环境下运行的「命令」(Command) 及「基本中断程式」等。这些程式都是支援系统硬体,供用户应用的工具。
3,介面程式:
介面意为「介」于多个「面」之间,凡电脑各系统、硬体与软体、软体与软体之间,皆可称之为介面。
对程式师而言,写作程式需要「程式语言」的发展环境,所谓的介面程式,即为此类发展环境所必需者。
此外诸如网络及通讯等,也可以称为介面程式。
4,控制程式:利用程式控制机器运作者,此类程式完全依赖硬体独特的机能,专业性极强。
二、价值观念
不论什么程式,都应该以「正确、精简、效率」为基本原则。但在目前,除了系统程式比较重视精简及效率外,其他的程式多半只重视正确性而已。
人们往往以为只有硬体才具有价值,其实大谬不然。硬体的变化有限,软体则永无止境;硬体的价值容易衡量,软体却祗有行家才能判断其良窳。在商业利益挂帅的今天,所谓的「行家」,经常就是「既得利益者」。消费大众是盲目的,也是无辜的,行家为了自身的利益,很少愿意道破其中原委。
此外还有另一层原因,硬体生产需要技术、材料、资金及设备环境,而软件则人人都可以随手盗用。对一个从事软件设计的程式师,尽管有心将工作做得尽善尽美,但一想到其呕心沥血发展出来的精品,很可能剎时之间就被不尊重软件价值的消费者偷抄盗卖,哪里还有兴致去精雕细琢?
如果我们能先将软体的价值观建立起来,且人人尊重软体应有的价值,如此真正受惠的,将是广大的消费大众。否则,这样恶性循环下去,电脑只能靠硬体的改进,来达到效率的追求,软体不过是一种「速食」性的消费品,永远没有价值。
以金额来看,硬体的市场边际价值远不如软体为高。因为硬体的生产成本高,用户每购买一台,就满足了基本需求。故此必须经常推陈出新,以资获利。当然,市场也有其平衡的法则,高利之下,竞争者多,过时的、效率低的硬体又因恐遭市场淘汰而大幅度的降价。
从过去的经验中可以推出,硬体效率的改进,大约每年一次,而软体则完全建立在其「价值观」之上。如果值得,设计者愿意投入,软体可以在很短的周期中,或因观念的突破,或因工具的特性,功能及效率立即提高了十百倍!问题在于,连从事程式设计的程式师,对软体的认识都不够充分,所制作的软件尚无法满足使用者的需求,充其量只是速成品罢。故不论是程式师或使用者,对软件的价值观都难以建立。
上述的工具是指「组合语言」,而观念则是将组合语言视作「艺术」。当然,这些只是理想,基于人性,理想永远祇属于少数人。可是,少数人的理想经常会推动时代,为多数人谋取福利。
三、创造价值
资讯时代方兴未艾,可以预期到只要有人类存在,电脑将是不可或缺的伴侣,永远伴着人类不断朝向超高效率的境地迈进。且不论硬体技术如何改进、变化,应用软体才是电脑生命的灵魂。一个有价值的软件,在千锤百炼之下,经过人智的洗礼,其意义绝不是物质报酬可以比拟的。
再换一个角度来看,电脑的硬体技术日新月异,体积日趋轻巧。虽然记忆量也在不断增加,但是软件却刚刚相反,由于对高阶语言的依赖,程式占用系统的空间越来越大,以致于抵消了硬体演进所创造的价值。
当然这都是软件工程师的责任,如果从事软件开发者,不立时觉悟,电脑将不过是「金玉其表,败絮其内」。同理,从事软件开发者,如果仅顾眼前的方便、急功近利,能抄就抄,能偷就偷,长此以往,电脑永远不能形成气候。
因此,钻研软体的制作技术,创造软件的实用价值,才是资讯时代的主导方向。从这个角度上来看,组合语言所具备的效率优势,远较高阶语言容易制作的优点更有意义。
对程式师而言,仅把程式当作一种工作,而不追求效率价值,则其技术及境界将止于此,其成就亦可想而知。唯有殚精竭虑,不断追求完美的人,无论观念和技术都将逐步提升,则在未来的资讯时代中,将会占有一席之地。