|
2012年2月1日
摘要:
不知道大家有没和我类似的感觉,就是在做开发的时候,经常看到需求文档里的用例2字,或者听到关于用例的谈话,或者测试用例之类的,一般的感觉就是用例就是一个需求功能点,也没去太在意,这里我想自己做个对于用例的总结。 我不想过于刻板的去讨论用例的概念,这里先从一个例子入手,比如我问你:请在30秒内说出尽可能多的筷子,勺子和盘子的相同点与不同点。 不知道大家是否有种感觉,就是脑子里似乎都知道,但是要一下子通盘考虑的说出来,却一时间不知如何下手 ?其实这个问题没有标准答案,看似简单的问题反映了我们是否习惯以抽象的方法去看待和理解事物,这里的每一个相同点和不同点都可以来自一个抽象角度。例如:从用途的角度去抽 阅读全文
摘要:
高手成长的六个阶段 程序员怎样才能达到编程的最高境界?最高境界绝对不是你去编两行代码,或者是几分钟能写几行代码,或者是用什么所谓的可视化工具产生最少的代码这些工作,这都不是真正的高手境界。即使是这样的高手,那也都是无知者的自封。 我认为,一个程序员的成长可分为如下六个阶段。? 第一阶段 此阶段主要是能熟练地使用某种语言。这就相当于练武中的套路和架式这些表面的东西。 ? 第二阶段 此阶段能精通基于某种平台的接口(例如我们现在常用的win 32的api函数)以及所对应语言的自身的库函数。到达这个阶段后,也就相当于可以进行真实散打对练了,可以真正地在实践中做些应用。 ? 第三阶段 此阶段能深入地了解 阅读全文
摘要:
由于第一遍rose图刚刚画完就意识到有了严重的错误。主要是时序图中没有使用方法,各个图之间没有了联系。所有不得不画了第二次。今天上午画完。虽然感觉仍然有很多问题,但是是比第一次画的强多了。技术方便:对rose图中的各个图有了基本的认识,知道主要的是用例图。接着是时序图,协作图,活动图来解释用例图。在画时序图的过程中,逐渐完善自己的类图,填写类的种类和类的方法等。思想方面:这次画图的感觉到反复的重要性,我们失败往往就是做了某件事以后,感觉还是不清楚,就这样把它放弃了。其实我们重复的再来一遍。这一次的重复绝对不是浪费时间,也不是再机械的反复。你会发现第一次很多没有遇到的问题,第一次很多没有解决的问 阅读全文
摘要:
一:小菜"菜"吗?最近一直在看大话设计模块,一本故事专业书.给我的一个很大的感觉就是小菜不菜!书中把那个总是提出问题,设计的东西总是有缺点的同学叫做小菜.但是看的多了,有心里感觉到.小菜不菜.比如刚开始的第一个程序,让写一个计算机程序.小菜很快的就写完了,最然说是基本上都是一锅粥.但是主要的作用还是都体现出来了.后边写到的很多程序,比如装饰模式,代理模式.小菜也都是很快解决了.让我感觉到有点惭愧.小菜刚刚大学毕业,就有了基本上是基础的程序设计都可以完成.想想俺们学校的有些学生,那就谈不上菜了,那就算是葱了?上大三了,看到很多身边的同学还是在梦游.真的是替他们担心,也许人家有 阅读全文
摘要:
开始看设计模式了,刚开始打算快速看完,然后再回过头来实现,但是走着发现这样不太好.因为好多后边的模式应用到了前边的模式.前面的一知半解的话,导致后边的也知道一点.就是什么也没有留下.其次就是C#不太熟悉,需要实践一下.这样对看懂后来的模式会有很大的帮助.下面说说简单工厂模式:什么是简单工厂模式:简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定应该创建哪一个产品类(这些产品类继承自一个父类或接口)的实例.通俗的讲,也就是我这个公司能生产很多产品,但是具体在何种情况下生产何种产品是不知道的.必需由客户提供一个参数,也就是客户要我生产那个我就生产那个.生产的过程就是一个实例化类的过程.简单工 阅读全文
摘要:
C#简明教程今天看完了,对于视频的评价就是视频似乎是不完整.看的很多东西就是断断续续.但是这些都不影响对c#语言的理解.因为自己以前学习过java c++ .它们与c#有很大的相似之处.尤其是和java 简直是如出一辙.所以一溜烟的就看完了.c#是一门纯面向兑现的语言.这还是进入提高班以后第一次学习面向对象的语言.感觉有了vb的基础,学习任何语言都不是问题.自己对c#的理解就是面向对象的特征:抽象,封装.所有的东西就是面向对象的.四处打听了一下.传说c#的学习就是承上启下的.让我们对刚刚学习的面向对象的设计,UML中有一个代码阶段的认识.我们整天在抽象类,画类图.但是究竟类在代码中是什么样的呢 阅读全文
摘要:
UML中的五种关系和设计模式中的代码实现.又重新听了一遍UML中的关系.感觉又是收获很大.UML中的关系有依赖,关联(聚合,组合),泛化(也叫继承),实现现在一个一个的来实现:一:依赖依赖关系图他的意思就是Use a 用到的意思,两个类的代码中不体现 看代码(C#)但是在代码中不体现,怎么反映他们之间的依赖关系呢? 具体的有三种 1:water是公共的类,animal可以调用 2:water是animal的一个方法中的变量3:water是animal函数的参数返回值在看看设计模式中依赖的具体举例 1: //策略模式的现金收费工厂类依赖正常收费子类收费子类 2: 3: //收费... 阅读全文
摘要:
上周回家呆了几天,主要是回家看看.在家里,自然是很好.有一件小的事情,让我触动很多.写下来分享一下.那就是日历的变化我们家一直有买日历的习惯.每页日历下面都要写上一小段文字.记得小时候,日历上边写的是,周公解梦,那时候写的梦到什么什么有什么预兆.到了上中学的时候,看到日历上写的家庭生活的妙招,告诉你生活中的技巧,使用东西的方法.可是这次回家,看到的东西让我很是震撼.上边写的是忘了window屏保密码怎么办!呵呵 是不是感觉时代在变化啊.我也同样感觉到,发展确实很快. 阅读全文
摘要:
UML中的关联关系其内在意思就是has a 相对于依赖关系,关联关系在代码中有所体现.上图中的关联关系在代码中体现为 其中water 中将Climate作为其中的属性. 当然,关联关系中也有双相关联关联又分为组合,聚合对应的代码如下: 设计模式中的关联关系 代码如下: 1: //工作经历 2: class WorkExperience 3: { 4: private string workDate; 5: public string WorkDate 6: { 7: get { return... 阅读全文
摘要:
在C#的学习中,容易混淆virtual方法和abstract方法的使用,现在来讨论一下二者的区别。二者都牵涉到在派生类中与override的配合使用。一、Virtual方法(虚方法)virtual 关键字用于在基类中修饰方法。virtual的使用会有两种情况:情况1:在基类中定义了virtual方法,但在派生类中没有重写该虚方法。那么在对派生类实例的调用中,该虚方法使用的是基类定义的方法。情况2:在基类中定义了virtual方法,然后在派生类中使用override重写该方法。那么在对派生类实例的调用中,该虚方法使用的是派生重写的方法。二、Abstract方法(抽象方法)abstract关键字只 阅读全文
|