博客园培训OOAD的课程概要

于众不弃,由我负责博客园培训中OOAD的课程。因涉及内容较多,所以我整理了一个课程概要式的内容提要,希望大家能够给予宝贵的意见和指导。
       

       OOAD课程大纲

 

    概述

    透视OOAD的背后软件学习之道、术、器

    该部分讲述软件学习之路上存在的问题。将软件开发之路所发生的问题分为三篇:道篇、术篇和器篇。该课程曾在IBM2005年度作为RUP讲义的一部分,获得最佳讲师和最佳讲义。参见http://www-900.ibm.com/cn/software/rational/events/rationalgroup.shtml。在本次课程中,将OOAD部分从RUP中提取出来,结合.NET平台的特性,重新整理。整个课程以微软CAB中的一个示例出发,结合OOAD,来说明本次OOAD课程的内容大纲和涉列范围。

 

    面向对象基础

    该部分的内容,将会分为五个部分来进行讲解:对象与UML概述、面向对象的几个常用原则、GRASP原则、设计模式、架构模式。这五个部分的内容是笔者曾经在中科院计算所培训中心以及UML软件工程组织担任讲师时所涉列的课程(可以姜志辉+uml或姜志辉+.Net搜索获知每门课程的详细内容)。在本次下载课程里,计划结合.Net2.0平台,以.Net程序为示例讲述每个主题的相应思想。因为每个主题所涉及的内容较多,所以很难每个部分都概括到,因此只列出每个部分的主题思想,关于具体的课程内容,将会考虑在每个部分开讲前,列出大纲,然后由博客园的朋友共同修改后的最终大纲为基准修订讲义内容。

    对象与UML概述:由面向对象的发展史结合UML讲述面向对象与UML背后的故事。

    面向对象的几个常用原则:以R.C.Martin的《敏捷开发》一书为蓝本,结合.Net实例讲解面向对象设计中的几个常用原则。

        GRASP原则:以Craig Larman的《UML和模式应用》一书为蓝本,结合.Net实例讲解GRASP设计原则

    设计模式:以Alan ShallowayJames R.Trott的《设计模式解析》一书为蓝本,结合.Net实例讲解设计模式

    架构模式:以微软企业库为蓝本,结合当前的主流开源项目,以项目中的实际应用了解架构模式。

 

    面向对象开发方法

    该部分的内容,分为两个部分:用例驱动和测试驱动。

用例驱动:以RationalOOAD指南为蓝本,结合.Net示例(初步想以微软企业库自带的示例为原型),讲述用例驱动的开发方法。

测试驱动:以Kent的《测试驱动开发》结合ICONIX方法,结合.Net示例(初步想以Castle为原型),讲述测试驱动。

事实上,在实际的开发过程中,用例驱动和测试驱动是相辅相承,以笔者的项目组为例,两者的结合最为有效。所以可能在实际的讲解中,会以笔者项目组中遇到的、解决的问题作为案例与大家共同探讨。另外,在这两个部分,笔者虽然一直在使用、摸索,但是尚有很多内容也心存迷惑。同时一家之言,必有纰漏,因此想以沙龙的方式共同呈现给大家。希望此方面的朋友共同与我主持。

    大家有什么意见或者建议,请不吝赐教。以提高我们的课程质量。

转载于:https://www.cnblogs.com/Iverson-Anders/archive/2006/10/28/542983.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/381799.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux下抓包命令tcpdump

本文内容来源于网络 转载:https://www.cnblogs.com/monogem/p/9802756.html PS:tcpdump是一个用于截取网络分组,并输出分组内容的工具,简单说就是数据包抓包工具。tcpdump凭借强大的功能和灵活的截取策略,使其成为Lin…

uva 12589——Learning Vector

题意:输入n个向量(x,y),要求选出k个,从(0,0)开始画,使得画出来的折线与x轴围成的面积最大。输出面积的二倍。 思路:01背包,dp[i][j]表…

Pocket PC/Smartphone软件安装包之制作DIY

Pocket PC/Smartphone软件安装包之制作DIY<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" />当我们开发完Pocket PC或者Smartphone的软件后&#xff0c;都需要考虑如何制作给最终用户使用的软件安装包。专门用于制作安装包的软件有…

计算机启动和linux启动

计算机是如何启动的 http://www.ruanyifeng.com/blog/2013/02/booting.html Linux 的启动流程 http://www.ruanyifeng.com/blog/2013/08/linux_boot_process.html

编辑器

1.FCKeditor 编辑器 FCKeditor is compatible with most internet browsers which include: IE 5.5 (Windows), Firefox 1.0, Mozilla 1.3 and Netscape 7. 最新版本:FCKeditor 2.0 语言环境:多国语言特性功能:所见所得,支持平台众多,支持XHTML 1.0,文本格式设置,常见的编辑,复…

uva 10271——Chopsticks

题意&#xff1a;有n只筷子&#xff0c;然后选出来k8套&#xff08;一套有三只&#xff0c;分别ABC&#xff09;&#xff0c;一套筷子质量为最小的两只的平方&#xff0c;选出的使得总的质量和最小。 思路&#xff1a;01背包。dp[i][j]表示j套利选出来i套的最优解&#xff0c;每…

VSTO---excel编程 [待续] [12月5日更新,详见文档下面]

最近比较闲了&#xff0c;考试也快要到了。但是编程技术方面还是不能掉啊.现在开始VSTO编程之旅了。这个话题是连Blog的。所以有兴趣的Blog之友&#xff0c;技术之士&#xff0c;可以匿名或者非匿名的评论&#xff0c;交流。对了&#xff0c;下面的代码都是本人写的&#xff0c…

uva 1630——Folding

题意&#xff1a;给出一个由大写字母组成的长度为n的串&#xff0c;然后尽量折叠成一个尽量短的串&#xff0c;折叠可以嵌套。 思路&#xff1a;区间dp&#xff0c;dp&#xff08;i&#xff0c;j&#xff09;表示区间&#xff08;i&#xff0c;j&#xff09;的最短的串的长度&a…

uva 1433——Garlands

题意&#xff1a;给定n个值&#xff0c;然后把这n个值分为m-1段&#xff0c;每段的一半长度不超过k&#xff0c;求分得的的段中&#xff0c;最大的半段的最小值。 思路&#xff1a;二分dp&#xff0c;dp&#xff08;i&#xff0c;0&#xff09;表示前i个不超过x的最小段数&…

今天开始学C#.NET

因项目需要&#xff0c;今天开始接触C#.NET。从Java到C#&#xff0c;真的是比较简单&#xff0c;先学会了VS2003。本来想用VS2005&#xff0c;但项目上要求用VS2003&#xff0c;也就是.NET Framework1.1&#xff0c;所以就打算从VS2003入手&#xff0c;先在公司 的笔记本上装好…

VS.NET提示试图运行项目时出错:无法启动调试。绑定句柄无效解决办法

也许是我迟发现了&#xff0c;总之我是刚刚才遇到这个问题的&#xff0c;挺不爽的&#xff0c;从模板新建的项目&#xff0c;未添加一行代码却出现了调试错误。&#xff08;不用调试倒没事&#xff09;有点郁闷。还好&#xff0c;&#xff08;感谢一下发明搜索引擎的人&#xf…

CodeForces 560A,B,C

CodeForces 560A 题意&#xff1a;给定一个货币系统&#xff0c;问不能组成的最小的钱数是多少。 思路&#xff1a;水&#xff0c;只要检查有没有出现1即可&#xff0c;有则输出-1&#xff0c;否则1. code&#xff1a; #include <iostream> #include <cstdio> #in…

WINFORM應用程式的主進入點和清除資源

///<summary>///應用程式的主進入點。 ///</summary>[STAThread] staticvoidMain() { Application.Run(newForm1()); }///<summary>///清除任何使用中的資源。 ///</summary>protectedoverridevoidDis…

CodeForces 558A,B

CodeForces 558A 题意&#xff1a;给定一些苹果树的位置和树上的苹果数&#xff0c;然后一个人站在原点&#xff0c;每次碰到苹果就往相反的方向走&#xff0c;问能得到的最大苹果数。 思路&#xff1a;直接模拟即可。先假设往左走&#xff0c;然后再假设往右走。遍历一遍即可…

生活!

如果未来是可以被看见的&#xff0c;或许就不会有那么多遗憾了。 可惜现实是残酷的。 跌倒了受伤了&#xff0c;无论再怎么痛再怎么难过&#xff0c;只要你还活着还呼吸着&#xff0c;就得拍拍屁股自己爬起来。 所以&#xff0c;生谁的气呢&#xff1f; 向谁祈求原谅呢&…

uva 10559——Blocks

题意&#xff1a;有n个带颜色的方块&#xff0c;同种颜色的方块连成一个区域&#xff0c;每次可以消除一个区域的方块x&#xff0c;然后得到分数x2&#xff0c;右边的方块左移&#xff0c;然后问求最大的分数。 思路&#xff1a;区间dp&#xff0c;dp&#xff08;i&#xff0c;…

uva 12222——Mountain Road

题意&#xff1a;有一个狭窄的山路&#xff0c;两辆车不能同时相向而行&#xff0c;并且同向的车的间隔不能小于10秒&#xff0c;给定一些车的起始时间&#xff0c;求最后一辆车离开的最短时间。 思路&#xff1a;递推&#xff0c;dp&#xff08;i&#xff0c;j&#xff0c;k&a…

取消XP和2000专业版的IIS的用户数量限制

我们知道Windows 2000专业版或Windows XP专业版操作系统中IIS最多允许10个客户端的连接&#xff0c;在Windows 2000服务器版或Windows 2003服务器版操作系统中不存在这种连接限制问题。 将常用的几种办法综合了一下&#xff0c;帖出来方便各位查询&#xff01; 一、MtaEdt22.ex…

uva 10037——Bridge

题意&#xff1a;有一个桥&#xff0c;每次只能两个人拿着手电筒通过然后一个人拿着电筒回来&#xff0c;然后让新人过去&#xff0c;给出每个人的过桥时间&#xff0c;问最后总的最小时间。 思路&#xff1a;贪心。1个人2个人好考虑&#xff0c;排好序&#xff0c;三个人是13&…

Rose与PowerDesigner:两款建模工具对比分析比较

一、 二者的出身 作为世界最著名的两大CASE工具&#xff0c;Rational Rose和PowerDesigner的名声可谓如雷贯耳。Rose是当时全球最大的CASE工具提供商Rational的拳头产品&#xff0c;UML建模语言就是由Rational公司的三位巨头Booch、Rumbaugh和Jacobson发明的&#xff0c;后来R…