面向对象分析与设计—四色原型模式(彩色建模、领域无关模型)((2)

来源:未知 责任编辑:责任编辑 发表时间:2015-05-17 16:44 点击:

其实我现在能明白当时面试官说的是什么意思,他是指我未能清晰的表达出各个类的职责,看上去每个类扮演的角色都是一样的,无非就是属性、方法这些类元素,我未能捕获到核心领域概念,未能站在领域考虑建模,而是站在代码的层面上来从低往上看的,很多东西是看不清楚的,说白了,开发人员拿到这个类图能否明白自己将要面对的领域,如果能明白,此时类图模型是健康的,如果不明白那就是有问题的,因为模型图不是给自己看的,而是给整个团队交流共享的。

后来我自己调整了一下心情,就算面试失败我也要有总结才行,面试本来就是一个被虐的过程。(“佛曰:此时正是修行时”,就当是锻炼好了。)

我虚心的向面试官请教我这个模型图哪里有问题,他指出了有可能我这辈子都无法看见的分析盲点,他说这个问题是程序员用技术思维来分析建模的通病。为什么他能看见这些盲点,而我不能,我很想知道这其中的精髓,我当时就要求降薪到这里来学习,面试官不降薪愿意让我过来,他也是一个对技术有追求的人吧。但是后来我有特殊事情未能去贵公司就职,此后我一直遗憾,这个建模精髓我有可能一辈子都搞不懂了。

现在我能明白,其实如果用代码级别的分析思维来辅助你建模就一定会有盲点,因为代码级别的“设计模式”,“设计原则”并非建模时的“分析模式”,这是两个不同的问题域,也就是说彼此用在不同的业务领域的,不能够一概而论,如果交叉使用就会误导你目前的重心,你会往里面添油加醋。

“建模”这个非常抽象且神圣的词是多么的霸气,貌似是已经触及软件工程的最高境界了;崇拜,自卑;搞软件开发也有几年了,居然连建模都不懂;那一夜我彻底失眠了,从那以后我在技术上充满了无助感,为什么?因为我已经清楚自己要想在软件领域有一定的成果,必须学会对真实世界建模,从那开始”建模“一词在我脑子的已经和UML关系不大了。

之后我在软件分析、设计的海洋里苦苦寻找这个曾经在我面前就像流星一样划过的”建模金钥匙“,有了它我就可以去一个神圣的世界。辗转反侧几年过去了,在前不久我终于知道“建模的金钥匙”是什么了,这类东西在网络上很少见,写的很少,下面我们来详细了解它。

2.问自己,UML对你来说有意义吗?它帮助过你对系统的分析、建模吗?

我想学过软件开发的人都多多少少了解UML,简单讲它就是一个用来建模的语言,你可以纯粹的把它理解成是一个画图工具,定义了一些元素,用来表达不同的概念。这里我们关心的是UML类图,也就是用来进行面向对象结构建模用的,通过各种不同的图形来表达抽象的对象结构。

图1:简单的订单类图

wKioL1PqAfug54ChAAH7wCxo6NQ002.jpg

上图是一个很简单的“订单”与“产品”相关的类图,我们都能懂这里面的意思,因为我们对这块的业务很了解;知道在什么地方应该有什么,比如Order中的计算商品总价的算法,有相关业务背景的人都知道这里是会存在的极大逻辑变化的地方,所以我们需要通过接口来隔离这块逻辑。

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • 用C#制作屏幕捕获程序
  • 遍历ArrayList易犯错误
  • 使用C#编写LED样式时钟控件
  • C#对XML操作:一个处理XML文件的类(1)
  • 怎样用C#实现完整文档打印功能
  • DataList嵌套问题 如何删除内层子DataList的记录
  • 使用c#+(datagrid控件)编辑xml文件
  • C#生成CHM文件(应用篇)之代码库编辑器(5)【总结、程序、源代码】
  • .NET简谈自定义事务资源管理器
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索 - 移动版 - 返回顶部
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1