自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 资源 (1)
  • 收藏
  • 关注

原创 有没有搞错,新书的帖子没有一个关注。晕~~~

喜欢的朋友赶紧帮忙支持一下吧! http://topic.csdn.net/u/20071202/16/3ce7c495-cbe3-4915-9da6-b301434ef852.html 

2007-12-29 11:38:00 604

原创 关于通用软件框架

术语框架在软件工程中被定义为从相同类型的应用中挖掘出的可复用的体系结构。问题是,相同类型的应用这一限定范围在面对现实世界时往往表现出超出原定预期的多样性。虽然仍然可称作相同类型,但新的应用很容易便在不经意间提出某种超越已有框架能力的需求。一旦出现这种情况,用户通常便踏入了修改扩展旧有框架的泥潭。他们很快发现,即使拥有原框架的源代码,新功能也很难被融洽的添入到框架中。旧有的结构很容易就被修改得面目全

2007-10-01 14:16:00 1292

原创 BOS设计缘由(三)

1.4    问题4和通用软件框架 到目前为止我们已经通过组件技术和一个组件管理器来为例程1-1大幅提升了复用性,并且这种复用性还可以在运行期体现出来。遵循这种方式,任何程序的绝大部分代码都可以被剥离为组件,从而使项目呈现出更佳的可复用结构。你也许想立即宣布我们已经发现了软件设计的诀窍—以组件和组件管理器作为基础的通用解决方案。但是,别忘了我们还有问题列表中的第4项。这最后一个问题告诉我们

2007-09-29 21:28:00 863

原创 BOS设计缘由(二)

1.3  更好的组件解决方案 使用组件之后,我们可以有效地解决问题列表中的1至3。但是,如果将想像稍作深入,我们会发现事情还能做得更好。假设例程中的Device类有多种绘图风格,那么我们也许会想让最终用户能够在运行期选择不同的风格,或者说是能够动态切换。为Device添加不同的函数(方法)也许是一条途径,但这不仅改变了Device的原有设计,并且也不是一种具备扩展性的方式。

2007-09-29 21:14:00 838

原创 BOS的设计缘由

 让自己的工作得到复用,是每一个开发者,尤其是身处设计层次的有经验的开发者的共同心愿。本文就从复用性入手展开讨论,引申出BOS的设计缘由。 1.1  问题观察下述代码(C#),试着找出其复用性不佳之处: interface Shape {…}class Rectangle : Shape{…}class Circle : Shape {…}class Dev

2007-09-28 16:03:00 1033

BOS组件系统

一、 概述<br>BOS(Basic Object System)的目的是提供一个纯粹的组件使用环境。在这个环境中,软件完全由组件构成而没有额外的代码,甚至不需要撰写main函数。这个环境不仅使得软件的结构更佳,更进一步使得软件开发的性质发生变化—开发人员不再为特定的程序付出封闭的辛劳,他们写下的每一行代码现在都属于某个组件,因而总有可能在将来被复用。<br><br>BOS还是一个动态的环境。这意味着组件可以在这个环境中动态插拔,这有助于软件功能的无缝切换。这一功能也可称为动态跨平台。<br><br>BOS可以被称为一个组件系统。它定义了组件规范,并给出了组件的使用环境。但更准确的讲,BOS是一个基于组件技术的通用软件框架。<br><br>BOS可以使用在几乎所有类型的应用中。虽然目前版本的BOS是基于.NET Framework完成的,但其背后的理论却是通用的—提供一个纯粹的组件应用环境,让基于该环境的软件完全组件化。<br><br><br>二、 规范<br>2.1 组成<br>BOS由BOS核心和BOS组件构成。BOS核心即是BOS组件的动态应用环境。为了让基BOS的软件达到完全组件化的目的,BOS还包括一个通用目的的可执行程序。这个可执行程序读取一个配置数据文件,从中获取相应的初始化数据,其中包括该应用使用到的组件信息。<br><br>此外,BOS还包括一个通用编辑器BOS Editor,用于为不同的应用快速地编辑配置数据文件。<br><br>2.2 BOS核心<br>BOS核心采取接口/实现分离的设计。BOS核心接口是一个命名为BOS.Center的类。你可以自行为其提供实现,也可以使用BOS源码包中提供的实现BOS.InProcBOSCtr。<br><br>2.3 BOS组件<br>所有的BOS组件都应该遵循接口/实现分离的设计。在实现端还应该为不同的BOS组件提供相应的创建器。组件创建器必须从接口类BOS.Creator_派生。<br><br>2.4 使用BOS<br>下面给出一个简单例子(C#):<br>public interface TestComp<br>{<br> void DoSomething();<br>}<br><br>class TestCompImpl :TestComp<br>{<br> public virtual void DoSomething()<br> {<br> …<br>}<br>}<br><br>class TestCompCreator : BOS.Creator_<TestComp><br>{<br> public virtual TestComp Do( Object[] params )<br> { <br> return new TestCompImpl();<br>}<br>}<br><br>class Program<br>{<br> static void Main(string[] args)<br> {<br> Center center = new CenterImpl();<br> center.Register(new CompID(typeof(TestComp), new TestCompCreator() );<br> TestComp comp = center.Create(new CompID(typeof(TestComp), null ); <br> comp.DoSomething(); <br> }<br>}<br><br>2.5 基于BOS的应用<br>基于BOS的应用并不像2.4所述的那样使用BOS。由于BOS提供了通用目的的AppBOSExe.exe,基于BOS的应用只需要提供组件和数据配置文件即可。其启动通过命令行完成:<br>prompt> AppBOSExe.exe test.boscfg<br><br>建议将配置数据文件命名为.boscfg,并将此类型文件关联到AppBOSExe.exe,从而可以双击配置文件图标以启动应用。<br><br>2.6 配置数据文件和编辑器<br>数据配置文件表征具体的应用。数据配置文件必须满足一定语法格式。你可以参考BOS源码包中的配置数据文件以进一步了解其语法。<br><br>通常情况下,我们通过编辑器来编辑配置数据文件。编辑器以树状图呈现出配置数据。你只需在相应的结点上点击鼠标右键便可以获得相应的命令,进而一步步编辑出所需的配置数据文件。<br><br>编辑器本身也是一个基于BOS的应用。你可以通过命令行启动它,或是将其拖拽到AppBOSExe.exe图标上进行启动。<br><br>2.7 软件要求<br>目前版本的BOS基于.NET Framework 2.0 实现。BOS项目通过Visual Studio 2005 创建。<br><br>

2007-09-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除