C#演练:一步一步教你如何编写面向对象代码

之前写过一篇文章:C#一步一步教你如何去写面向对象代码

今天再次演练,让大家尽可能熟悉并熟练面向对象代码的编写思路和方法。

今天以汉服的“形制”为例子,演练怎么编写汉服的面向对象代码。本文出现的中文编码是为了让您看起来方便,您实际业务编写时不宜使用中文。

 

一、构思

您的构思,可以来自于UML图,也可以来自于纸张随意绘制,也可以来自你的思维灵感图,看您喜欢,层次关系您需要确定清楚。

下图是关于“汉服形制”的思维导图。

C#演练:一步一步教你如何编写面向对象代码

1.形制的继承关系如上图,树形结构清晰,就不再废话了。

2.每个形制,都跟朝代有关。

3.每个形制,都可以配一些外套。

科普一下,有些人对汉服不了解,汉服的外观设计我们称之为形制。顺便说下,本人下半生,为神族汉服复兴而努力。

二、编码前的话

C#演练:一步一步教你如何编写面向对象代码

我由于事先已经对汉服形制有所研究,所以已经构思了它的继承关系。

关于是否需要UML,以及需要到多细致的程度,由您自己决定,通常,我仅设计大方向,它有助于我掌握全局。对于里面的方法定义、属性定义、关系定义等,我个人则思考不是那么细致。

什么时候思考这些东西呢?是我在编码的时候思考的。

这是本人的面向对象思维习惯,您可参考,不一定要照搬。

一旦您有了整体框架构思,你要去编码的时候,就已经非常快速了。下面请继续看。

三、开始编码:先写出基本框架代码

我们先写出形制的继承关系:

C#演练:一步一步教你如何编写面向对象代码

再写出朝代和外套的继承关系:

C#演练:一步一步教你如何编写面向对象代码

C#演练:一步一步教你如何编写面向对象代码

好的,这样,我们就把整体结构定下来了。

对于这样的代码编写思路,我相信您一定没有问题。

四、开始编码:写出逻辑管理类

创建汉服类,汉服是由形制、朝代、外套共同组成,所以方便起见,我们直接写在构造函数中:

C#演练:一步一步教你如何编写面向对象代码

创建汉服管理类,管理一般会查找功能:

C#演练:一步一步教你如何编写面向对象代码

好的,下面我们就写一个汉服创建者,也就是生成器的类:

C#演练:一步一步教你如何编写面向对象代码

不知道有没有嗅觉灵敏的读者发现,其实编写代码,是有套路的,无外乎就是先主体,然后管理类,再然后驱动器类,最后加上关系操作控制类。

五、重构

您会看到上述的代码,都是具体实现。我曾经说过,所有的类,不论你是抽象类还是具体类,都是具体实现,我们需要抽象为顶级抽象,即接口。

C#演练:一步一步教你如何编写面向对象代码

如上图,您编辑->重构->提取接口,或者按快捷键即可。以形制为例:

C#演练:一步一步教你如何编写面向对象代码

之后,您需要修改之前所有地方使用到的具体类,改为接口依赖或者关联,即可。

 

您学到了吗?

 

祝您用餐愉快。