大雀软件园

首页 软件下载 安卓市场 苹果市场 电脑游戏 安卓游戏 文章资讯 驱动下载
技术开发 网页设计 图形图象 数据库 网络媒体 网络安全 站长CLUB 操作系统 媒体动画 安卓相关
当前位置: 首页 -> 技术开发 -> NET专区 -> Net应用软体设计

Net应用软体设计

时间: 2021-07-31 作者:daque

Net应用软体设计 ---- 运用uml  周 瑞 & 伟 峰 io联网构造是一种极柔嫩的构造情势,层级构造则是一种硬式的构造情势。软体的实质就必需十分“柔嫩”,与硬体的“刚硬”,形成刚柔并济的最好拍档。在internet的下层有tcpip、http等协议,.net则供给较高层的软体协议(protocol)及效劳,让软体元件能在internet上成功单干调整,扶助精巧的跨企业eprocess。 正文举例证明,怎样透过ooad及uml领会出企业元件(business object),安置那些元件的单干,并调整出企业过程物件(business process object),也即是use case object (简称uco);而后再由uco调整出wco (web control object)。而.net让wco能在internet上,彼此勾通、单干与协作,扶助多元反复无常的eprocess。 .net的脚色 ---- io软体协议与效劳 大师都能发觉货色的「软」与「硬」,比方一条缝衣物的线,你挪动线的一头端,不见得会启发线的尾端,以是咱们发觉线是软的。而像钢线就发觉硬得多了。凡是生存中,再有像泥鳅、龙等都是软的。挪动场所是一种「变换」(change),龙首变换不会登时强力遏制(control)或感化龙身的变换,对龙尾的登时感化更小。表示着,龙首、龙身、龙尾3个「部份」(part)之间的相依性(dependency)蛮小的,形成一个柔嫩的「完全」(whole)。 差异地,一条船(如端午的龙船)的船头、船身、船体3部份之间的相依性特殊大,形成一个钢硬的「完全」(whole)。  钢硬的货色(或体例)各部份径直相依,咱们普遍会感触比拟简单遏制,比方挪动船体就会登时径直感化到船头,变换了目标。 然而「船舵」就比拟特出了,它跟船体的相依性不高,挪动或转化时并不登时径直感化船体,却能大幅度转弯抹角挪动船体,变换整艘船的目标。 掌舵者就像抓住龙尾巴,发觉软软的,不太简单遏制整条龙。勤加熟习、领会、加上一点艺术美感,本领变成好的掌舵者。 即使一个体例构造的各部份都一致「舵」如许的独力不太相依的话,所有体例的柔嫩度就普及了,如许的构造情势即是io联网构造。反之,即使一个体例构造的各部份都一致「船头」、「船体」如许的莫大相依的话,所有体例的很刚硬,如许的构造情势就不是io联网构造,而是硬式构造,比方封建权要的层级构造。 不管是财产io、企业io或软体io构造,在建构上须要较精制的安排;在处置上也须要较多的艺术美感。固然须要开销较大本钱,但往往可赢得宏大的功效。比方轻快转化船舵,就能大幅度变换船的目标。 从上述的比方,断定您能领会出软体必需元件化(即io化)的因为,像船舵即是一艘船里必备的元件。  再看看,铅笔的例子,古典铅笔是硬式构造,而机动铅笔是软式的io构造 ---- 笔心、笔身与笔擦,皆是透过介面(interface)结合,不太相依,能辨别换新。 普遍而言,财产愈超过,会安排出愈多的软式产物,也即是元件化产物或体例。比方社会构造由独裁专制到自在法制,电脑硬体由mainframe到盛开式pc组件框架结构,企业构造由层级构造到无重心构造或io联网构造。软体财产也是如许,从往日模组式的层级构造到分别式元件软体(component-based software)。 然而软体上面比拟特出的是:运用软体元件含有企业的范围常识(domain knowledge),使得软体元件之构造必需与企业常识构造普遍,并且元件里面详细也必需维持莫大弹性,随企业准则(business rule)而赶快安排,本领随时扶助千变万化的e企业过程(eprocess)。以是软体io构造的安排比pc硬体的io构造,须要更高的领会与安排本领(如ooad本领),对于这一点,在本期期刊「台湾软体业的浅笑」一文,有精细的报告,请您观赏之。 为了扶助财产及企业io化,跨企业的软体制统调整是需要的。保守上,软体制统的调整办法并没有普遍的道路,有的透过材料库软体将后端的材料库调整起来,比方材料的复制(data replication)软体等。 也有的依附中央软体(middleware)贯串数个各别的app. server,由各app. server上软体元件或运用程式彼此勾通协作,供给企业完全效劳。这种中央软体囊括ejb、mts、msmq、mqseries、tuxedo、cics等,如次图1所示。 图1、调整办法:走旧方便之门 在internet情况里,家家都有个新门脸 ---- web server,是规范而盛开的大门,具备普遍性。即日, .net供给软体制统的协议及效劳,让app server也能经过旁人的新大门,登堂入室,与对方的app server勾通,如次图2所示。 图2、调整办法:走新前门 上海图书馆1的保守调整办法里,后端app server上的软体制统,常各有专属的介面及材料方法,不足普遍性,调整处事搀杂,实行功效常会贬低。比方,普遍erp体例都很难以跟别体例贯串。 而上海图书馆2的web server,则具备莫大普遍性、盛开性、规范性,调整处事简单且高功效。往日,这新大门只供人们透过browser来查查网页。此刻,internet变成软式构造的连结网骨干,而.net则巩固internet上的协议和效劳,让软体元件能分别到各个企业,供给准时完备的资源讯息到寰球各地,变成企业io构造的坚韧普通,也加强跨边境的财产io构造。本来,这是的ec框架结构的天然趋向,比方在上一期物件导向期刊(no.13)里,就证明过第三代ec的构造如次图3所示。  图3、第三代ec的普通软体框架结构(请参见物件导向期刊no.13)  乍看之下,好象蛮搀杂的,本来否则。其基础的构成元素,蛮大略的,只犹如下图4所示的几种基础元素罢了。wco代办大过程,uco代办小过程,object或bean代办企业准则。wco能与其它企业的wco调整出跨企业的过程,供给共同e化效劳。当这种调整e化效劳愈昌盛,企业的单干就愈细,也愈专精,也更激动财产的单干调整。  图4、 .net运用软体框架结构的基础元素  在.net平台上,wco之间可彼此勾通,wco与uco之间也能通顺勾通,如次图5就表露出百般大概的勾通办法。 图5、 .net运用软体元件的勾通 wco元件之间,wco与uco元件之间,其透过介面贯串,相依性蛮低,以是能极精巧地调整出极柔嫩的软体,随时救济形形色色的企业过程。 兹拿mm连锁店铺公司为例,mm公司有一个支部(hq),上千个分行(pos端)。当您上钩向mm公司刷断定卡购物时,mm公司web server里的wco元件会乞求断定卡钱庄的wco元件查看主顾材料、断定额度之类。此运用软体的框架结构如次图6所示: 图6、连锁店铺的.net运用软体元件勾通 从企行业内部的过程来看,b.o.(business object)是单干的工作家,uco则是调整者;从跨企业的e化过程来看,uco是单干的工作家,wco则是调整者。以io联网构造图来表白上述的单干调整联系,就如次图7所述了。  图7、连锁店铺的软体io构造图 pos端的元件之间怎样勾通,由pos的运用程式协议来确定的。支部的元件之间怎样勾通,由支部的运用程式协议来确定的。至于pos端元件与支部元件之沟公例视mm公司的运用软体协议而确定了。比方上海图书馆6里的虚线箭镞常常是遏止的,再不贬低pos端元件安排与支部端元件安排的相依性,可减低软体的开拓、处置与保护的本钱。然而在某些情景下,则是承诺的,这必需在mm公司的运用软体协议中表白领会。 即使mm公司运用软体协议准则是:只承诺pos端的uco元件跟支部的uco元件勾通,而不承诺两头的b.o.之间彼此勾通。则上海图书馆7的io构造图就十分于下图8了。同声也规则mm公司的uco不许径直与别公司的uco勾通。  图8、连锁店铺的另一种软体io构造图 如许的协议,其便宜是:子体例之间(比方pos端与支部)的介面大略精确,大大减简化了软体制统的『完全』搀杂性。但缺陷是:pos端b.o.须要与支部的b.o.勾通时(比方欲变动支部的买卖档案材料),须委派uco来传递,徒增了元件里面论理的搀杂度。怎样在这鱼与熊掌的两难之间获得融洽之美,就在于于协议安排者的创新意识美感了。  往日的软体开拓者,大多鉴于大略的假如:各个程式的搀杂度的总合即是整体制统的搀杂度。以是一味探求各个程式的大略化,而忽视掉程式之间介面才是感化完全搀杂度的主要原因。这格式带来的是体例的处置、保护等用度赶快飞腾,像mainframe上的保守cobol程式即是个例子。跟着此刻企业筹备情况变化加快,上述软体的处置保护本钱更是一齐飙涨。 因为元件式软体关心介面包车型的士安排,能有下处置这个题目,它才变成现在的合流软体本领。而安排介面(比方子体例介面、元件介面之类),也就变成软体协议安排者的重要处事了,像.net的重要奉献即是供给普遍的元件介面,让软体元件能在网路上通顺勾通。为了更领会证明上述的观念,接下来就拿ec的shoppingcart为例,从安排.net运用软体进程中,细嗅它的无穷美感。 安排 .net运用软体 ---- 以shoppingcart运用为例 兹以ec的shoppingcart为例证明.Net应用软体设计。按照前方的「软体io联网构造」作品里所引见的io化(即元件化)步调,能从范围常识可找到4个基础观念(concept):shoppingcart、orderlineitem、customer及product。那些观念就对应到软体的元件,以uml的类型(class)表白元件的设置及元件之间的联系,如次图9: 图9、以uml类型图表白元件 运用uml的use case图表白体例的功效及动静动作;比方,从shoppingcart运用体例的user需要来看,此体例应具备如次图10所示的功效或过程: 图10、以uml的use case图表白过程 在以.net平台上,上海图书馆10的各个use case皆可对应到一个uco元件,uco控制率领shappingcart等企业物件,以实行该use case的工作。 那些较小use case能拉拢(或称调整)变成较大use case,比方web order wco等,如次图11所示。 图11、shoppingcart体例的io联网构造图 此mm企业的weborder wco元件会委派钱庄的creditcard payment wco元件核验断定卡材料,形成通顺的跨企业电子过程(eprocess),强力扶助企业的超单干调整。这即是软体io构造扶助企业io构造的景象。 此刻仍旧领会上海图书馆11的各元件之意旨了,接下来就看看怎样安排mm’s运用软体协议。协议能以华文或英文报告之,也能以uml谈话来表白之。前者比拟人情有深沉涵义,后者严紧精确不易污染。比方可写到: 『uco不妨呼唤其余uco或b.o. 』 『wco不妨呼唤本人公司其余wco 或uco,也可呼唤别公司的wco 』  ……… 即使须要更严紧而精确的报告时,uml即是理念的谈话。比方uml的sequence图能精致地报告uco与各b.o. 的协作联系。像下图12的uml图就表白customer与shoppngcart的单干,由createorder元件将之调整,而完毕createorder过程与效劳。 图12、 uml表白createorder uco的勾通景象 uco元件开始从customer元件博得主顾材料,比方主顾的买卖汗青记载、主顾暗号之类。此时customer元件本人会从db读取主顾材料,而后回传给uco元件。uco核验主顾材料之后,就出生一个shoppingcart物件,所以实行了createorder过程的工作了。 同样地,下述的图13以uml谈话表白出addproduct过程里的uco元件与关系b.o.的单干调整景象。开始核验欲购产物的材料,比方仓库储存量等。此时product元件本人会从db读取产物材料,回传给shoppingcart元件。而后shoppingcart出生一个orderlineitem物件,并设定其前期值。  图13、addproduct过程里的单干调整景象  那些uml图不只典型了uco与b.o.的勾通道路,同声也报告了b.o. 之间的彼此勾通协作。这图并不突显各元件的程式详细,而是突显各元件「该有」的效劳,以及元件协作联系。 图14、removeproduct过程里的单干调整景象 那些uml图提防元件的勾通介面(interface),这即是软体协议的重要实质了。从图14可知shoppingcart元件的介面里该当包括有removeproduct功效。从下图15可知shoppingcart元件的介面里还该当包括有caltotal、caltax、calspfee等功效。  图15、checkout过程里的单干调整景象 依序对准每一个uco,皆以uml图报告该use case的过程,不管过程如许地搀杂,uml图皆能表白得很透彻。比方下图16即是比拟搀杂一点的use case。 图16、queryorder过程里的单干调整景象 接着安排wco元件,这wco元件的工作是安置各uco元件的单干协作,能以uml图表白那些uco元件的单干调整景象,如次图17所示。 图17、weborder wco代办大过程,由各uco拉拢而成 这图17说领会wco元件怎样与uco勾通,同声也跟钱庄的creditcard payment wco元件勾通协作。 也请提防,上述图12 ~ 16的uml图是该当由app server的职员控制安排的,那些职员对web server本领并不须要深沉的普通。而图17的uml则是由web server的职员安排的,那些职员对app server及db本领并不须要深沉的普通。如许对开拓职员的单干与调整极有扶助。 就app server 元件开拓者的看法来看,wco代办web server,可先开拓app server 元件,而后由web server 的page安排者将wco贯串起来。因之,两者可并行、同步开拓,简单贯串调整,且各自弹性生长。 同样地,以uml图表白另一个wco的工作,如次图18所示: 图18、webquery元件之规画 至于web page的工作即是安置各wco元件的单干协作,如次图19所示。  图19、pages安置wco元件的单干调整 以是,图12~16是由app server元件开拓者所安排;图17~18是由web server元件安排者所绘;图19则由网页筹备者所绘制。 各个开拓者皆会专精一项,品德普及,进修简单又赶快,固然保护用度也大幅贬低。这即是干什么.net情况的软体消费力将会大幅贬低。 结束语 .net是软体协议,它典型internet上的软体元件的单干与调整。.net运用软体框架结构实质上即是的io联网构造,是个极柔嫩的构造。只有莫大柔嫩弹性的软体本领充溢共同internet天才的柔嫩和精巧性。 .net是普遍的软体协议,并未典型一定运用范围的软体元件之勾通。以是软体职员除去安排出很棒的软体元件除外,还必需从运用范围里领会与安排出理念的「运用软体协议」,让软体元件能按照一定企业或运用范围的须要而举行优美的单干。而ooad与uml是扶助人们领会元件(脚色)、安排协议(脚本)的绝佳凶器n 

net应用软体设计图1

热门阅览

最新排行

Copyright © 2019-2021 大雀软件园(www.daque.cn) All Rights Reserved.