仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 692|回复: 9
打印 上一主题 下一主题

[学习教程] JAVA网页设计一致建模言语UML轻松进门之综合实例

[复制链接]
蒙在股里 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:15:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
C++编译的是本地码,优点是启动快,而且可以精确控制资源因此可以开发很高效的程序.缺点是编程麻烦,而且容易留下安全隐患.跨平台靠源代码在各个平台间分别编译(一处编写到处编译)  "例,比也"(《说文》),本次连载将给出一个使用UML举行建模的完全实例,综合使用后面学到的常识,到达"举此以例其他"(元刘丁兑油ㄒ椤づ费艄罚┑哪康摹

  在我国十年前ATM(主动存款机)仍是一个很奇怪的事物,如今在乡村的街头巷尾到处可见。我们在一样平常生存中也常常和ATM打交道。本章我们将以简化的ATM体系为例将后面几章中学到的用例图、类图、按次图、形态图、举动图及合作图常识使用到此例中。

  5.1用例图

  介入者"银行储户"和ATM机。简化后的ATM机唯一存款、存款及其他功效。其他功效不做具体申明。


.1主动存款机(ATM)体系用例图
  银行储户在ATM机上完成存款、存款及其他营业。

  5.2类图

  .2所示的银行体系类图和.5是相似的,只是将事情职员换成了ATM。全部银行体系包含了帐户库、银行储户库及ATM体系。

  很多单个的帐户构成了帐户库。帐户具有帐户范例、帐户号、余额三个属性,均为private,其范例分离为char,int,double。六个操纵分离为setType、getType、getAccountNumbe、setAccountNumbe、caculateBalance、getBalance,除caculateBalance为protected其他均为public。

  setType设置帐户范例,前往范例为void,参数范例为char,输出帐户范例。

  getType猎取帐户范例,前往范例为char,无参数。

  setAccountNumbe设置帐户号,前往范例为void,参数范例为int,输出帐户号。

  getAccountNumbe猎取帐户号,前往范例为int,无参数。

  caculateBalance盘算余额,前往范例为void,参数为double,第一个参数为输出存存款数额,第二个参数为存款余额,既为输出也为输入。

  getBalance猎取帐户余额,前往范例为double,无参数。

  很多银行储户构成了储户库。ATM体系包括了很多ATM机。银行储户及ATM机两个类包括哪些属性,哪些操纵,它们的可见性及操纵的前往范例、参数个数、参数范例从类图上都一览无余。更多的属性及操纵都能够逐一加上,使这个类图更具体更完全,从而使介入项目标每一个成员都能无歧义的了然全部计划的类的布局。一样关于一个真实的银行体系,这个类图过于复杂。好比帐户范例我们能够先界说一个abstractclass,它包括一个帐户最基础的属性及操纵。而有些操纵先界说为abstract,如余额的盘算。然后再承继这个abstractclass,我们能够有savingaccount和checkingaccount等等。分歧的帐户有分歧的余额盘算办法,我们能够加上详细的算法。关于分歧的帐户大概另有一些它独有的操纵,我们也能够加上,好比savingaccount在存款到达几时能够享用机票打折的优惠。经由过程类图不但可使计划者明白的表达本人的计划企图,也能帮组本人收拾思绪,充分及优化本人的计划。


.2银行体系类图
  5.3按次图

  .3形貌了主顾在ATM机上存款时信息的活动情形。以工夫为按次。由于仅是示例,以是全部历程是没有呈现任何以障时的流程,而且只画到了存款停止。经由过程这个图,我们能够看出动静是怎样在体系中分歧对象之间举行交互。

  经由过程流程图我们能够很分明地看到体系是怎样事情的,体系各部分之间的信息及把持是怎样发送的,全部流程是不是公道。流程图对我们的计划起到了很好的匡助感化。注重在本图没有一个性命线终端有一个"X",这是由于这个流程中还未碰到有对象性命停止。当有对象性命停止时需在对应的性命线终端画"X",标明这个对象在这时候被烧毁。

  起首银行储户将ATM卡拔出读卡机,读卡机将信息传给客户办理,客户办理提出查询暗码,显现部分将输出暗码哀求显现出来…..由于这个按次图较长,且很明晰,即使是初学者也很简单读懂,在此就不合错误本图做过量的注释。


.3ATM存款按次图
  5.4形态图

  .4形貌了主顾在ATM机长进行操纵会履历的几种形态,及各类形态之间转换的前提。由于是简化了的例子,以是除守候主顾拔出磁卡的肇端形态和停止服务的停止形态,主顾会处于输出暗码、选择服务范例、存款及存款四种形态。


.4ATM形态图
  拔出磁卡落后进输暗码形态,当暗码输出准确时进当选择服务范例形态,当输出暗码不准确时,停止在原形态,但假如三次不准确,服务停止。进当选择服务范例后依据选择的分歧,主顾可进进存款和存款形态。存、存款停止后,主顾既能够选择停止服务到终极形态,也能够选择持续服务回到选择服务范例形态。

  经由过程形态图我们能够无歧义的懂得各个举动脚色是怎样在分歧情况下转换的,转换的前提是甚么,是不是会呈现逝世锁征象,是不是有前提没思索全面,是不是有形态没法到达。形态图能够匡助我们发明成绩,并实时更正。

  5.5举动图

  .5参考了RandyMiller的《AHands-OnIntroductionforDevelopers》一文,5.3图中的客户办理和事物办理对应于5.5图中的Bank,.3中的读卡机、显现、输出设备及点钞机对应于5.5图中的ATMMachina,银行储户就是Customer。初看举动图温柔序图表达的意义很靠近。但我们能够注重到按次图侧重工夫的按次,而举动图偏重于各部分之间的互相制约,关于一些并行的举动可以无效的暗示出来。比方5.5图中fork和join处,我们能够很分明的看到一些并行举动的存在。

  这个举动图以主顾拔出卡为入手下手,以主顾取卡停止。我们能够看到举动图的重点固然不在工夫按次,但我们一样能够失掉工夫的信息。


.5ATM银行体系举动图
  5.6合作图

  在第四章中我们晓得合作图温柔序图是能够无信息丧失的互相转换,只是它们的偏重点是纷歧样的。按次图侧重于对象间动静传送的工夫按次,合作图侧重于表达对象之间的静态毗连干系。.6将5.3图转换为合作图。

  1.拔出ATM卡

  2.承受ATM卡

  3.查询暗码

  4.显现输出暗码哀求

  5.输出暗码

  6.暗码传送

  7.哀求确认暗码正当性

  8.确认暗码正当性

  9.扣问服务种别

  10.显现输出服务服务种别哀求

  11.输出存款哀求

  12.存款哀求

  13.扣问存款数额

  14.显现输出数额哀求

  15.输出存款数额

  16.传送存款数额

  17.扣问存款数额确认

  18.显现确认数额哀求

  19.输出确认

  20.传送确认信息

  21.数额正当性确认哀求

  22.确认数额和法性

  23.出钞哀求

  24.盘算帐户余额

  25.出钞

  26.取钞

  27.传送余额并扣问是不是还必要其他服务

  28.显现帐户余额并提醒选择上面的服务


.6ATM体系合作图
  从图上我们能够看出合作图的脚色温柔序图的对象是逐一对应的,而合作图上的各对象上的合作干系温柔序图上的动静传送是逐一对应的。

IDE是好。java中的IDE更是百花齐放,你用jbuilder能说jbuilder赶不上vs吗?用eclipse,netbeans也很舒服啊。我就不明白“稍微差一些”那一些是从哪里差来的。
柔情似水 该用户已被删除
沙发
发表于 2015-1-20 18:37:14 | 只看该作者
你一定会高兴地说,哈哈,原来成为Java高手就这么简单啊!记得Tomjava也曾碰到过一个项目经理,号称Java很简单,只要三个月就可以学会。
兰色精灵 该用户已被删除
板凳
发表于 2015-1-28 15:38:43 | 只看该作者
[url]http://www.jdon.com/[/url]去下载,或到同济技术论坛的服务器[url]ftp://nro.shtdu.edu.cn[/url]去下,安装上有什么问题,可以到论坛上去提问。
海妖 该用户已被删除
地板
发表于 2015-2-5 15:01:16 | 只看该作者
设计模式是高级程序员真正掌握面向对象核心思想的必修课。设计模式并不是一种具体"技术",它讲述的是思想,它不仅仅展示了接口或抽象类在实际案例中的灵活应用和智慧
admin 该用户已被删除
5#
发表于 2015-2-9 15:44:31 | 只看该作者
《JAVA语言程序设计》或《JAVA从入门到精通》这两本书开始学,等你编程有感觉的时候也可以回看一下。《JAVA读书笔记》这本书,因为讲的代码很多,也很容易看懂,涉及到面也到位。是你学习技术巩固的好书,学完后就看看《JAVA编程思想》这本书,找找一个自己写的代码跟书上的代码有什么不一样。
爱飞 该用户已被删除
6#
发表于 2015-2-11 10:05:31 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
小魔女 该用户已被删除
7#
发表于 2015-3-2 09:32:42 | 只看该作者
关于设计模式的资料,还是向大家推荐banq的网站 [url]http://www.jdon.com/[/url],他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。
透明 该用户已被删除
8#
发表于 2015-3-7 05:39:14 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
山那边是海 该用户已被删除
9#
发表于 2015-3-14 10:50:55 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
活着的死人 该用户已被删除
10#
发表于 2015-3-21 03:47:50 | 只看该作者
多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-23 05:07

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表