09 2010 档案

摘要:这次总结一个个人认为的反模式:“绑定子类的泛型层基类”,这个模式在一些著名的框架中也见到过,如果CSLA、BlogEngine。我自己在原来的写的框架中,也用到过。 当然了,个人认为是反模式,各们同仁并不一定这样认为,仁者见仁,智者见智了。不过我好几次都是受尽折磨,所以决定写出来给大家分享下心得。 模式介绍 “层基类”是MF提出的一个基本模式,详见:《Layer Supertype》。这种模式在经典的层次型架构设计的实现中,是极其重要的。我相信,大家一般在做三层架构时,不可能不给出基类的。至少我没见过。:) .NET2.0推出后,带来了新的语言特性:《泛型》。它实现了类型的运行时... 阅读全文
posted @ 2010-09-28 14:52 BloodyAngel 阅读(3469) 评论(21) 推荐(4) 编辑
摘要:本篇主要描述GIX4项目中如何把单独的模块设计为一个“插件”,如何把它组装到系统中。至于为什么加引号,之后会有说明。 原理 在基于产品线开发时,7,2,1的产品功能分类中,20%的功能是需要在产品线主干中包含进来的。这些功能一般会被设计为“可选包”。在某一客户版本产品的装配阶段,在“可选包”集合中挑选需要的功能,进行组装,得到最终的产品。具体内容,见:《软件产品线工程方法:如何在OpenExpressApp做客户化工作》。 在基于OpenExpressApp框架的GIX4项目中,“合同”模块就是属于这20%的功能,它被设计为独立的DLL,在产品装配时为需要的客户进行装配。 DLL间的关系 项. 阅读全文
posted @ 2010-09-28 10:11 BloodyAngel 阅读(2155) 评论(4) 推荐(4) 编辑
摘要:上篇 已经就客户化的整体方案进行了叙述,这次主要是说明一些细节部分的设计。 类型的视图元数据 基于OEA框架的GIX4项目中,客户化工作主要是对各客户版本中类型的视图信息进行定义。下图是包含这些类型的类图: 图1 客户化API中的类型视图元数据 属性继承 在应用程序定义中,需要支持继承类型的视图信息定义,也就是说,在基类上定义的视图信息,子类在没有定义的情况下,直接使用基类的定义;当然,也可以为具体的子类做特殊的定义。 但是,TypeViewInfo是某一个实体类型的视图信息,它只对应唯一一个Type。所以要支持继承定义,需要做一些特殊的处理。 一种方案是为所有TypeViewInfo建立父. 阅读全文
posted @ 2010-09-26 10:32 BloodyAngel 阅读(1954) 评论(0) 推荐(3) 编辑
摘要:这篇文章还是对工作内容的总结,主要是总结一下这几天做的产品的客户化工作内容。 关于产品线工程中客户化的理论知识和概念,请见金根的《产品线工程》。具体的,OEA框架中的客户化理论,见:《软件产品线工程方法:如何在OpenExpressApp做客户化工作》。 本文主要从以下几个方面来叙述如何在OEA框架中设计和实现客户化框架: OEA客户化框架设计目标 方案设计 具体实现 设计目标 支持实体类的扩展。 支持实体扩展包的动态加载。 支持界面扩展及界面扩展包的动态加载。 各版本间自定义界面元素,可以基于现有的特定版本修改一些内容。 各版本间支持自定义内容文件,如果没有使用,则使用默认版本的内容文件。. 阅读全文
posted @ 2010-09-20 20:37 BloodyAngel 阅读(2802) 评论(5) 推荐(4) 编辑
摘要:1.建立udl文件可构造连接字符串。 2.完全控制GAC文件目录 3.清除数据库日志文件 BACKUP LOG [STS_pcc-server_1] WITH NO_LOG--收缩数据库DBCC SHRINKDatabase('STS_pcc-server_1') 4. SQL Server数据库的 阅读全文
posted @ 2010-09-13 16:44 BloodyAngel 阅读(474) 评论(0) 推荐(0) 编辑
摘要:最近在看《软件架构师教程》,今天就第五章《软件架构设计》总结一下,其中还有自己所联想到的。主要从以下几个方面来描述: 软件架构ABSD架构模式DSSA架构评估软件架构 架构的定义,在业界,目前主要分为两类:结构派 和 策略派。结构派认为架构是指软件中各构件的组织结构以及各构件之前的相互关系。策略派认为软件的架构设计是要为软件的每个重要的决择进行权衡,并作出最终决定。 架构,作为系统中最重要的组成部... 阅读全文
posted @ 2010-09-13 09:59 BloodyAngel 阅读(1137) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示