老子的软件之道 - 道篇 1 软件的本源-抽象

 摘要:软件哲学、软件之道、银弹、人狼、软件架构                 参阅:  消灭人狼  软件的十大命题 编程规则

 

道篇

       你发现构成软件体系最基本的粒子了吗? 这是通往软件之道的门户。 (参见:软件架构形态)

 

1  软件的本源-抽象


 圣人曰:
道可道,非常道。名可名,非常名。无名天地之始。有名万物之母。故常无欲以观其妙。常有欲以观其徼。此两者同出而异名,同谓之玄。玄之又玄,众妙之门。

 

    软件企业发展的正确之路是客观存在的,但并不是你看到的通常的发展之路啊。

    软件工作者或软件企业都是可以功成名就的,但也不是通常意义上的成功啊。

    软件体系都是由“无”和“有”构成的啊,觉得有点玄了吧?这就对了,不玄就不是“道”了,别急,别急,开个玩笑,举几个例子你就明白了。

     你看任何软件首先都是建立在一个想法之上的,这个想法就是“无”啊,它看不见摸不着啊。那些数据和代码就是“有”啊,它们在哪个铁盒子里运行着。

     再说一个你熟悉的吧,类,就是你们OO中所谓的哪个类,它相对对象而言就是“无”啊,比方说账户类,它虚无缥缈,即不是全部账户也不是某一具体账户,它似乎什么都不是,但一切具体账户对象都是由它创建的啊。

     “无”、“有”只是一个高度抽象的名字(同时它们也是“道”的两个别名,参阅:什么是哲学),对于不同的具体事务,它们都可以有对应的具体名称。“无”是宇宙万事万物的源头和起点,“有”是构成宇宙的具体事务。世间万物都是无中有有,有中有无,无上还有无,有下还有有啊,听起来有点晕吧,认真思考深刻体会吧,对你编程会大有好处的,抽象是软件的本源啊。

     我们理解了万物都存在“有”、“无”两层概念,通常对于事务“无”的层面,我们要注意观察其微妙的本源和本性,这样你才能把握本质;对于事务“有”的层面我们要细心观察它的状态、边界、行为模式和变化规律,这样才有助于对事物本体的理解,反过来促进对其本性的洞悉。(这时已经提出了“道性”、“道体”的概念,注意体会)

     有和无它们实际上又是一个整体啊,只是不同层面的两个概念罢了,有无互生,听起来很玄妙,但实际上很容易理解,其实就是一个抽象的概念,软件设计的精髓不就是要依赖抽象吗,这可是登堂入室的大门啊,也是软件之道。

      你在做类的设计时,可以非常好地体会有无互生的道理,你通过对具体对象的观察、思考、抽象,建立起了类(有生无),类又在你的软件系统中生成无数的对象(无生有),是这样吧,而这一切又诞生于你无形的思考和有型编码之中,妙啊、玄啊,玄啊、妙啊,这广袤的宇宙就诞生于这“有”、“无”之中。

 

     注:老先生注重概念,先从有无论起,并准确地抓住软件之要点----抽象,一语道破天机。

 

你可能感兴趣的:(编程,工作,OO)