书很好, 层次清晰, 语言简练. 只是我英语太差, 读的稍稍有些吃力. 把自己理解的记录一下, 即便是错误的, 也先记录下来.
这个是最困惑我的一个词语.
一般来讲, Domain指一个领域, 譬如Product, Student. 用户的需求一般为Domain, 用户需求中的名词多为Class, 用户需求的限制多为逻辑.
Unit of Work有两个要素:
1. 有多个Work
2. 多个Work同一个Transation, 全部成功或全部失败.
将从DataBase中读取出来的对象放在一个Map中, 需要使用对象时, 先检查Map中是否存在, 不存在的情况下才去从DataBase读取.
用Object来代替SQL, EJB SQL语句, 可以增加Cache以及时间控制等
Knowledge Level’s Knowledge Level.
例如, 一个Table中的某个Record 是一个 Operation Level, 则对应Column为该Record的Knowledge Level, 而该Column的属性描述,则为MetaData.
通过使用Service Layer来划分软件层次, 达到降低耦合的要求.
每个Layer不必提供过多服务, 而应当提供恰当的服务, 以降低开发,维护的复杂度. 类似与日常生活中组织机构的管理.一般来说,可以以此通过Project, Source Folder, Package, Class来划分Service Layer.
…..
这本书太高深了, 只能高山仰止了…
我想我最坏的习惯就是马马虎虎, 张开嘴就会说: 差不多, 也许吧, 有可能, 不太清楚, 应该…
从UML类图上可窥一斑, 也见过很多类图了, 甚至跟别人摁着类图讨论过…就是最基本的概念还是差不多,, 不太清楚…
本文内容整理自:http://www.ibm.com/developerworks/cn/rational/rationaledge/content/feb05/bell/#main
图片亦出自IBM DW.
今天稍微总结下:
类图的目的是显示建模系统的类型。在大多数的 UML 模型中这些类型包括:
UML 为这些类型起了一个特别的名字:“分类器”。
一个简单的类图:
双向(标准)关联:
聚合
聚合是一种特别类型的关联,用于描述“总体到局部”的关系。在基本的聚合关系中, 部分类 的生命周期独立于 整体类 的生命周期。
基本聚合: 子类实例的生命不依靠与父类,可以比父类实例存在更长时间:
组合聚合: 是聚合的另一种形式,子类实例取决于父类的生命周期
附:多重值和它们的表示
|
UML 支持的可见性类型的标志
|
Represents[表现,描绘] a type of characteristic or property with a set of real or abstract things(People, Places, Events and so on);
个人理解: Attribute对应着数据库中的Column, 对应OOP中的Propertie
An Entity represents a set of real or abstract things(People, Places, Event and so on) that have common attributes or characteristics.
个人理解: Entity对应着数据库中的Table, 在OOP端, 则对应着一个Class.
由于数据库厂商实在太多, 如MS SQL, MySQL, DB2, Oracle等, 在DataType, SQL语句, 命名原则方面, 各有不同,
在设计数据库时也许要考虑到日后数据库的更换, 着眼于长远,我们需要设计一个与具体厂商无关的Model,, 这便是Logic Model.
同时又需要设计一个具体的Model, 这个Model直接与某个厂商某个数据库版本相适应, 这便是Physical Model
…待续…
2008年对于中国来说注定是被铭记的一年,由于发生了众多大事件,它被人们称为“奥运年”,“航空年”,“互联网年”,而对于软件行业来说,2008是绝对的“SaaS元年”。有数据表明,我国2004年软件服务收入为303亿,2005年为916亿,增长了302.3%,是产品收入增长(26.2%)、系统集成收入增长 (10.9%)之中最快的。随着2006年中国第一个SaaS孵化器的成立,2007年首次召开“2007软件即服务中国大会”,在业界和政府的共同关注下,2008年,中国SaaS行业如火如荼的展开。
在国内,互联网行业的成熟发展,给SaaS的普及创造了条件,SaaS则以其成本低、实施快,零维护的特点为我国信息化,特别是中小企业信息化发展注入了强心针。工信部也拟出台“新18号文”大力支持以SaaS为代表的现代信息服务业的发展。SaaS(软件即服务—Software as a Service),这个全新型软件交付模式,被纳入我国信息化长远的发展战略中。
面对中国广大的中小企业用户资源,行业巨头们也伸出橄榄枝,对中国SaaS产业的发展表现出信心。首先是微软在北京宣布,“S+S”(软件+服务)将成为微软未来的发展方向, Google在今年年初推出了基于SaaS的套装软件,雅虎公司则在9月中旬通过收购Zimbra公司加强其在SaaS市场的竞争力……国际厂商在 “SaaS”这件事上表现出空前一致的态度。
(1) 多重租赁(Multi-tenancy)
SaaS的“多重租赁”概念就是,多个公司将其数据和业务流程托管存放在SaaS服务商的同一服务器组上,相当于服务商将一套在线软件同时出租给多个公司,每个公司只能看到自己的数据,由服务商来维护这些数据和软件。也就是说,多个公司登录到同一网站,但登录后看到的界面和数据,不同的公司大不相同。
这种模式有利有弊。好处是卖主相对于每个客户的平均硬件和维护成本很低。卖主将这种成本优势分摊给客户,客户用不着花大力气去维护自己的系统平台。服务商同步升级硬件软件,客户不需要另付费。
但是也存在一定的弊端,由于SaaS模式是由服务商来维护系统,因此当服务商要对系统进行升级时,客户也只能跟着升级。这有点像中国以前吃大锅饭的时代,由中央统一分配。比如说6月1日,服务商要发布新版本,到时候客户就都只能使用新版本的系统。确实也只能这样,否则就不叫“多租”了。而且如果服务商支持多种不同版本的系统,那么成本就会相应地增加。当然,绝大多数的客户会更喜欢升级后的软件版本。
(2) 跨界混搭(mash-up)
“跨界混搭”这个术语起源于流行音乐,编曲者把两张唱片混编以后重新制作出一首新歌。这个概念应用在SaaS上,就是指把多个不同的在线应用软件服务搭建成为一种新型的整合服务。用户通常只需要登录一次就可以使用集成好的应用软件组合。
需要注意的是,当你把多种SaaS服务混合到一个软件中去后,其中一种会是核心,如果其出现严重问题,将会影响到整个软件的使用。
(3) 集成器(Connector)
集成器是一种软件程序,让你从一个应用程序中读取数据,然后下载到SaaS解决方案中(同样可以用于将数据送回到另一个应用程序中)。这种数据传送通常用于实时或批量传送的情况,企业完成初始数据的导入或导出,然后根据需要定期更新这些数据。
比如,像国外的SaaS服务商Salesforce或国内的800CRM提供SAP集成器,就将SAP中的客户数据导入到Salesforce或800CRM系统中。
(4) 解决方案扩展(Solution extension)
SaaS 解决方案具有的扩展性让用户能够在已存在的软件结构上,按需再增加额外的工具或功能。像前面提到的Salesforce的App Exchange应用软件开发平台,以及国内的SaaS托管商800CRM的800App Native应用软件开发平台都是解决方案扩展的典型代表。
还有一些扩展性例如可以扩展数据模型,提供个性化的用户界面以及其他更多自定制的扩展服务。
(5) 垂直应用(Vertical applications)
“垂直应用”不是SaaS的专用术语,它也应用于其他领域,通常是指为某一个领域(例如银行,医药等)建立一个专门的平台。虽然它已经在传统行业应用很多年了,但是相对来讲应用在SaaS中还是一个比较新的概念。
每当有一种新技术出现,相关的流行词便开始在网上漫天传播。下面,我们总结出了如今最流行的十大SaaS术语
随着SaaS的不断成熟,客户希望SaaS服务商能提供详细的垂直应用行业方案。例如,目前Salesforce的APP Exchange平台已经能够实现全方位跨行业的应用,各个行业的公司都能够在Salesforce的平台上进行二次开发。
(6) 参数应用(Parametric applications)
在传统软件模式下,如果软件的服务功能需要改变,那么相应的代码也需要重新编写。但是在SaaS模式下,用户可以通过输入新的参数变量,或者制定一些数据关联规则来开启一种新的应用。这种新式服务模式也被称为“参数应用”,“宏”或“自定制对象”,主要是因为这种应用程序可以让用户自己定制新的应用,不需要懂软件编程。
Salesforce或800CRM升级系统,自定制对象也同时升级,而最本质的应用则是客户可以自己通过改变参数和参数关联来为系统增加新的功能。
(7) 模块化(Modular)
SaaS中模块功能主要用于关闭或开启服务。在聚集了丰富功能的强大应用平台中,IT经理可以像选择菜单那样任意地选择功能,关闭某些不需要用到的功能,也可以根据需求增加新的功能。
SaaS服务商基于网络架构建立了自己的应用平台,模块的灵活性使得他们可以根据客户的不同需求,将功能复杂繁多的系统配置成适合客户的系统。
(8) 在线SaaS (Net-native SaaS)
“在线SaaS”从表面意思来看似乎有点累赘,SaaS本身的概念就是提供一种在线服务,因此所有的SaaS应用程序都应该是产生于网络,壮大于网络的。
但该术语是相对于SaaS的前身——ASP(Application Service Provider,应用服务提供商)来说的,这是一种早期的远程软件托管形式。跟如今直接在网上使用的系统相比,ASP时代的用户可能觉得通过专线或专用加密设备访问的系统来得更安心。显然,早期的ASP解决方案设计的一些运行缓慢的程序并没有很好地体现“在线”这个概念,很多ASP客户需要借用VPN、 Citrix等实现远程访问。
所以当人们说 “在线SaaS”时,这个术语其实是在强调使用浏览器直接使用软件,而加密是通过浏览器通用的SSL加密协议。
(9) 基础架构平台(Platform infrastructure)
有时候SaaS的拥护者希望出现一种基础架构的平台来推动SaaS更好地发展。
这是因为首先得有一个平台来支撑SaaS软件应用程序的运行,如今最著名的是国外Salesforce公司的APP Exchange平台,国内800CRM的800APP Native的平台与Salesforce兼容。
(10) SaaS(软件作为服务)
最后,我们别忘了SaaS本身就是个非常红火的流行词。厉害的SaaS销售代表直接用SaaS就能解决你所有管理软件问题。比起其它软件,SaaS软件更便宜,灵活性更强,能省掉更多的麻烦。
记得很早前学PHP的时候, 英文够烂, 自己也够懒, 总是从家里考一个装好插件的Eclipse带到学校. 到现在, 一直用装好足够插件的Eclipse. 知道今天, 发现这个东西果然足够简单,嘿嘿. 🙂
Eclipse中, Help>Software Updates >Available Software 插件地址, 回车, 自动安装…
要安装SVN插件, 可以使用地址: http://subclipse.tigris.org/update_1.4.x
哎…感慨自己上学时的懒惰呀!
// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.