http://www.cnblogs.com/onlytiancai/archive/2006/10/13/528205.html

以前对UML呀,感觉用不上,不知道都干啥的,也就是知道有个用例图、类图、顺序图,而且画的东西也顶多是表达一下需求,表达一下设计,让大家达成共识。最近做项目才知道UML其实挺有用的,从需求到分析,从分析到设计,从设计到编码,UML都有用武之地,而且我感觉正确运用UML可以提高项目的成功率。
  后来从《程序员》杂志上看了徐锋的《实战OO》系列文章,这才对面相对象和OO有了更深入的了解,讲解的循序渐进,按部就班,看了就懂,就能用的上。后来作者又基于这系列文章写了一本书,就是我给大家推荐的这本书《UML面相对象建模基础》,我借来看了好几天了,把UML概述、类图、对象图、包图、用例图、构建图都了,讲的确实不错,挺适合UML初学者,或者做了好几年程序却感觉对OO了解不深入,不能灵活运用的人。整本书架构安排合理,先介绍了UML的概述(都是有用的,空洞理论解释概念很少),然后逐步介绍了UML的几大图(UML2.0的,比UML1.0多了几种图,都介绍了),然后几节还讲解了需求建模、设计建模和数据库建模,最后还讲解了一下ROSE的用法已经模型管理。
  每节的开头,还用图形的方式把本章的知识点画了出来,很形象,容易记忆。具体展开叙述的时候也配有好多符合实际的例子,让你想画什么图的时候一想那例子就知道怎么画了。书里还给大家介绍了一些使用UML的原则,都是作者经验的积累,这图不是画的多画的细就是好。画什么样的图,读什么样的图都是有技巧的,作者都给了个指南,按部就班,照着做,少走弯路。每节后面还有练习题,你看完一章,试着做做练习题,巩固一下,帮助记忆。确实安排的特别合理。
  UML确实是基础的东西,早学早受益。你要学设计模式,学架构设计,学重构,连UML图都看不懂,画不了,是很难学的。得先有OO的思想,才能有OO的设计,有了OO的设计,才有写出OO的程序,当然了也不是这程序越OO了越好。总之,我感觉这本书对我帮助挺大,好东西推荐给大家,希望大家看了这本书后能真正的把UML用起来,用好,提高自己的编码质量,提高项目的成功率,我想这也是作者的目的吧。
   书不厚,200多页,价钱也不贵,20多块。关键是对咱有帮助,不能天天傻写代码了,该停下来打打基础了。

推荐一本书:《UML面向对象建模基础》的更多相关文章

  1. uml面向对象建模基础总结

    uml九种图,其中的细节不说了.在后面的具体使用中提到这九种图. 建模流程: 1.分析需求. 2.通过分析名词,发现类,使用到类图. 3.建立用例模型,通过参与者分析用例,使用到用例图. 4.为用例建 ...

  2. UML面向对象建模基础

    一个比较好的UML教程PPT https://wenku.baidu.com/view/cf80902e26284b73f242336c1eb91a37f11132ac.html

  3. UML类建模(强烈推荐-思路很清晰)

    UML类建模(强烈推荐-思路很清晰) 2016年10月23日 15:17:47 mbshqqb 阅读数:2315 标签: uml面向对象设计模式 更多 个人分类: 面向对象程序设计   UML的构造快 ...

  4. [.net 面向对象编程基础] (15) 抽象类

    [.net 面向对象编程基础] (15) 抽象类 前面我们已经使用到了虚方法(使用 Virtual修饰符)和抽象类及抽象方法(使用abstract修饰符)我们在多态一节中说到要实现类成员的重写必须定义 ...

  5. [.net 面向对象编程基础] (16) 接口

    [.net 面向对象编程基础] (16) 接口 关于“接口”一词,跟我们平常看到的电脑的硬件“接口”意义上是差不多的.拿一台电脑来说,我们从外面,可以看到他的USB接口,COM接口等,那么这些接口的目 ...

  6. [.net 面向对象编程基础] (18) 泛型

    [.net 面向对象编程基础] (18) 泛型 上一节我们说到了两种数据类型数组和集合,数组是指包含同一类型的多个元素,集合是指.net中提供数据存储和检索的专用类. 数组使用前需要先指定大小,并且检 ...

  7. [.net 面向对象编程基础] (22) 事件

    [.net 面向对象编程基础] (22)  事件 事件(Event)是学习.net面向对象编程很重要的一部分,在学习事件之前,我们实际上已经在很多地方使用了事件,比如控件的click事件等,这些都是. ...

  8. 面向对象+JAVA基础

    泛泛的研究了面向对象的前五章,感觉没有代码的参照理解的知识看过就忘,所以又在推荐下开始了JAVA基础,希望不会鄙视我目前么有一本书能完整看完的记录... public class LeapYear { ...

  9. 利用UML语言建模--以图书馆管理系统为例

    一.基本信息 标题:利用UML语言建模--以图书馆管理系统为例 时间:2016 出版源:内蒙古科技与经济 领域分类:UML:RFID:图书馆:模型: 二.研究背景 问题定义:建立图书馆管理系统 难点: ...

随机推荐

  1. random模块 time模块的用法 python

    1.random()模块的使用 import random x = random.random() y = random.random() print(x,y*10) #random.random() ...

  2. C# WinForms跨线程更新 UI

    与在Android中一样, 子线程中更新UI被认为是线程不安全的, 会抛出异常. 子线程返回UI线程中更新UI的一个方法为: 1, 捕获应用的UI线程的上下文; 2, 定义线程任务; 3, 定义线程任 ...

  3. 3714: [PA2014]Kuglarz

    3714: [PA2014]Kuglarz 链接 思路: 好题.对于每个点都需要确定它的值,那么一个点可以直接询问[i,i]来确定,或者已经知道了[i,j]和[i+1,j]推出来. 但是可能产生冲突, ...

  4. Android 布局跟着NAVIGATION_BAR 重新布局

    要想让自己的布局跟着NAVIGATION_BAR 的变化重新布局,就不要设置 SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION. 这个FLAG. 这个flag 设置之后,你的 ...

  5. Eclipse 工作空间(Workspace)---Eclipse教程第07课

    Eclipse 工作空间(Workspace) eclipse 工作空间包含以下资源: 项目 文件 文件夹 项目启动时一般可以设置工作空间,你可以将其设置为默认工作空间,下次启动后无需再配置: 工作空 ...

  6. USACO Section2.2 Party Lamps 解题报告 【icedream61】

    lamps解题报告------------------------------------------------------------------------------------------- ...

  7. 一个初学者的辛酸路程-基于Django写BBS项目

    前言 基于Django的学习 详情 登录界面 找个模板 http://v3.bootcss.com/examples/signin/ 右键,检查源码     函数 def login(request) ...

  8. Python全栈工程师(异常(高级)、运算符重载)

    ParisGabriel              每天坚持手写  一天一篇  决定坚持几年 为了梦想为了信仰    开局一张图 Python人工智能从入门到精通 对象的属性管理函数: getattr ...

  9. 孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4

    孤荷凌寒自学python第六十五天学习mongoDB的基本操作并进行简单封装4 (完整学习过程屏幕记录视频地址在文末) 今天是学习mongoDB数据库的第十一天. 今天继续学习mongoDB的简单操作 ...

  10. 不作伪分享者决定完整分享我自学Python3的全部过程细节

    不作伪分享者决定完整分享我自学Python3的全部过程细节   我不要作伪分享者 十六年前我第一次见到了电脑,并深深地爱上了它: 十二年前我第一次连上了网络,并紧紧地被它爱上. 十年前的网络是田园美景 ...