面临关系编程
面向关系编程
写在前面的话。该文章用于记录当时的一些面向对象的思考。
目前的主流编程思想是面向对象。主要基于事物的属性和行为,其中缺少事物与其他事物之间关联的抽象。于是,是否事物的本身的属性和固有行为基于面向对象,而与其他事物之间的关联关系进一步进行抽象,即面向关系。事物与事物之间的关联通过面向关系编程来解决。
举个例子:父亲和儿子。抛开两者之间的父子关系,两类对象完全可以基于面向对象处理与父子关系有关的行为,如吃饭,挣钱等。但是,父子关系有其特殊的用处,比如遗产继承问题,如果没有父子关系或者可以承载继承行为的关系来联系两者,那继承者是不能继承被继承者的遗产的,而当两者建立了可以继承遗产的关联,继承遗产的行为可以在两者之间发生。
世间存在各种关联,除了基于面向对象进行抽象之外,面向关系要做的是将事物与其他事物的关联行为与事物的固有行为进行分离并对关联做进一步抽象。正是因为事物间的关联关系过于复杂,会造成功能或系统的实现过于庞大,如果我们能有更好的方案来解决事物之间的关联关系,是否能简化系统的开发量。
以上只是个人一些想法,不管想法好坏,是原创。
写在前面的话。该文章用于记录当时的一些面向对象的思考。
目前的主流编程思想是面向对象。主要基于事物的属性和行为,其中缺少事物与其他事物之间关联的抽象。于是,是否事物的本身的属性和固有行为基于面向对象,而与其他事物之间的关联关系进一步进行抽象,即面向关系。事物与事物之间的关联通过面向关系编程来解决。
举个例子:父亲和儿子。抛开两者之间的父子关系,两类对象完全可以基于面向对象处理与父子关系有关的行为,如吃饭,挣钱等。但是,父子关系有其特殊的用处,比如遗产继承问题,如果没有父子关系或者可以承载继承行为的关系来联系两者,那继承者是不能继承被继承者的遗产的,而当两者建立了可以继承遗产的关联,继承遗产的行为可以在两者之间发生。
世间存在各种关联,除了基于面向对象进行抽象之外,面向关系要做的是将事物与其他事物的关联行为与事物的固有行为进行分离并对关联做进一步抽象。正是因为事物间的关联关系过于复杂,会造成功能或系统的实现过于庞大,如果我们能有更好的方案来解决事物之间的关联关系,是否能简化系统的开发量。
以上只是个人一些想法,不管想法好坏,是原创。