|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
一般的指的.net就是跟java相对的那种,主要是做企业级应用的。你如果想学这个,主要就是学C#和数据库。(ASP.NET好像很重要的,应该也要学的,ASP.NET上好像可以结合VB和C#等多种语言,但是微软主推C#)范畴形式概述
范畴模子形式力图让工具模子可以与体系的观点模子婚配起来,如许的工具模子就叫做范畴模子。范畴模子形貌了体系中触及的实体,捕捉了实体之间干系和数据在个中的互换历程。
范畴模子是项目中最为关头主要的部分,经由过程创立并共享范畴模子,手艺团队和营业团队可以相互了解对方的设法及企图。范畴模子现在只是一个正式的模子,用来让手艺团队和营业团队相互了解并能优秀交换。
从笼统的范畴模子入手下手,我们便可入手下手向“一系列相互相连的工具”勉力。范畴模子中的实体将成为一系列带无方法和属性的类,范畴模子中的每一个器材都必要用一个带有举动的类开暗示,包括客户,发票项目和地点等。如许每一个办法挪用的按次图都是一系列工具之间挪用的组合。
范畴模子能够看作是举动纪录的“年老”。范畴模子完整与数据库自力,是一个尽量切近实在流程的模子,而不是往切近架构师但愿的流程。
架构师不外是个察看者,因而不该该对举行建模的流程优劣举行评价,软件架构师的事情是对流程举行建模。假如必要,会有别的的一些专家来匡助公司改善流程。
今朝我们已离开了范畴形式的中心,即一般所说的范畴驱动计划,这里有两点必要思索。
起首,架构师和范畴专家之间的合作无懈是包管企业流程的各个方面都能被一切人了解,且需求能够被准确完全地提取的关头。
其次,由于体系终极是基于软件和数据库的,以是在某个时分总会必要将笼统模子映照到工具模子和数据模子之上,这也是范畴模子形式完成的坚苦地点,但也让它比其他形式加倍壮大。
注重:在计划范畴模子时,数据库办理员(DBA)的准确脚色应当是甚么呢?数据库办理员应当充实了解建模后的营业流程,并创立出能够撑持该范畴模子的数据库。数据库办理员其实不应当评价范畴模子的优劣,就仿佛架构师不该该评价营业流程的优劣一样。不外范畴模子很有大概没法带来一个简便大度的存储层,但依据我们的履历,严厉依据流程建模并得当进步数据库庞大性要比强迫大度的数据库计划并利用随便的两头层好良多。
1,什么时候利用范畴模子
范畴模子形式使体系建模十分自在天真,无需思索平台和数据库的束缚。笼统的范畴模子表达了一些逻辑,并形貌了一系列的流程,这就意味着实行一样的事情的两个使用程序的范畴模子应当完整分歧。如许看来,营业逻辑的重用性必要就成为判别是不是值的利用范畴模子的一个关头参数。
比方,若客户在必要网上银行体系的同时,也在思索其他的使用程序—比方,背景界面,出纳撑持或买卖体系,那末可重用就会成为一个分明的上风。范畴模子中的元素都能够简单地重用,包含账户,客户,支票,现金,存款,存款,存款,股票等。
如许,计划范畴模子的分外工夫很快就会在重用过程当中抵偿返来,在一个常常要重用营业逻辑的临时项目中,本钱很天然地被平摊了上去。
而若客户所必要的仅仅是一个基于现有背景的网上银行功效,那末消费工夫利用范畴模子并非一个很好的选择。这时候仅必要对体现层举行一些架构计划,创立一个小型,自用的工具模子将体现层哀求发送给现有背景便可。那末日期后的修正又该怎样处置呢?细心想一想,你创立的只不外是个基于现有背景的Web站点,而最多见的庞大功效都是一些界面相干的需求。假如如许思索,实在其实不必要太甚忧虑,也不会有甚么需求会让计划没法撑持。
庞大性是选择用范畴模子形式的次要动力,庞大性应当依照现有需求来权衡,不外也应当思索到往后大概呈现的加强或修正需求。范畴模子的初始价值较高,不外跟着庞大性的增添,其价值是线性增添的。如许看来,在复杂场景中利用范畴模子固然较为庞大,可是下降了因为后续增加修正需求所招致的庞大性暴增的风险。
2,范畴模子的上风
在范畴模子中,观点是用类来建模的,这类做法充实使用了面向工具计划的上风。你可使用到面向工具中的一切特征,包含封装和承继,而同时又无需遭到数据库布局的限定,这就意味实在体其实不会发觉到涓滴有关底层利用的耐久化机制。别的,往后你也能够交换数据库会见层,而不用忧虑如许做会影响到营业层。
之以是软件范畴中面向工具计划在20年前入手下手普遍使用,很年夜水平上是由于营业逻辑愈来愈庞大,常常包含数以千计的划定规矩和庞大纠结的流程。在如许的高低文中,工具的生成上风尽显无遗,架构师也能够轻地处置任何条理的庞大性。
3,范畴模子的优势
也许你在本章后面已注重到,最年夜的上风常常也会成为最明显的优势。范畴模子也不克不及跳出这个骗局。起首,我们很难将全部体系构思成一个笼统的模子,个中用实体和干系来形貌流程及机制。另外一方面,你必要引进新的庞大性来处置现有的庞大性。
完成范畴模子的一个次要停滞是工具和干系型数据库之间的不婚配。范畴模子是一个面向工具的计划,和数据库或别的使用程序的束缚完整有关,而仅受限于其建模的营业流程,这意味着一样的范畴模子能够重用于其他必要一样逻辑的恣意场景。模子是和营业相干的,且仅和营业相干。
不外这又怎样成了体系的一个优势呢?缘故原由在于或早或晚,体系将要入手下手完成,数据必要耐久化,因而你必要将模子映照至一个或多个数据库体系中。从使用程序角度来看,范畴模子就是逻辑上的数据库,不外这个“数据库”仅仅是个工具模子,并没有供应干系接口。但创立这个干系型接口是必不成少的,且创立价值十分高。
若没有任何O/R映照工具,比方NHibernate或微软的EntityFramework,那末将很难完成范畴模子形式。工具模子和干系模子之间的生成鸿沟为范畴模子形式的使用带来了很年夜的坚苦。
学习asp.net两个月有余了,除了对html、web控件比较熟悉(应该是说都能理解和接受)之外,竟不知道自己还会什么。看了两本书:《精通asp.net网络编程》(人民邮电出版社)、《asp.net实用案例教程》(清华大学出版社)。 |
|