随笔分类 -  SCSF

摘要:WorkItem是一个运行时容器,该容器中包含完成一个用例所需要了各种各样的组件,组件可以是可视化的也可以是非可视化的,比如:SmartPart,Service,Commonds等等。WorkItem中定义了如下的属性:ServicesServices是一个集合,用来管理所有和实现一个用例相关的Service,可以通过如下代码将一个Service添加到WorkItem中:WorkItem.Services.AddNew<TestService, ITestService>();上述的代码中,第一个参数是一个具体Service的实现,第二个参数是该Service的接口。一旦将一个Se 阅读全文
posted @ 2013-05-29 14:07 洗碗心得 阅读(825) 评论(0) 推荐(0)
摘要:休息了一个月,终于要重出江湖了。新工作是做Winform开发,解决方案中SCSF是很关键的部分。以前没接触过SCSF框架,对MVP模式了解有限,本文也就不对SCSF作深入的分析,只从MVP架构依赖关系上进行一些简单的分析。今天第一次接触这个框架,写得有问题的地方,大家指正。创建SCSF项目后就可以运行了,这个时候如果添加一个Module,那么运行时的样子完全变掉了。这跟添加的Module默认模板生成的Module类有很大关系。privatevoidShowLayoutView(){if(_rootWorkItem.Workspaces.Contains(WorkspaceNames.Layou 阅读全文
posted @ 2013-05-29 14:05 洗碗心得 阅读(286) 评论(0) 推荐(0)
摘要:序: 让我们首先通过现实的例子来看看 Model、View、Presenter 应该如何分工吧。View 就像是客服人员(或者留学中介里的顾问),Model 是那些具体的技术支持人员(或者文案,专门处理签证申请材料),Presenter 是组长或部门经理。View 不需要做太多的具体事情,他们最好相貌好点,声音甜点,对用户友好点,让用户心情舒畅就好,用户的最终问题最终还是由具体的技术人员(技术支持,售后)处理。对于个体户,小作坊,工作室来说,客服、技术可能一人包了,这样效率最高,但后来你发现所有问题都你一个人处理,一个人不可能三头六臂,事必躬亲最终只能做作坊;这是单层结构。所以你招聘了新的员工 阅读全文
posted @ 2013-05-29 14:04 洗碗心得 阅读(274) 评论(0) 推荐(0)
摘要:应网友要求提前介绍 Smart Client Software Factory 中的 Visualizer 的使用及自定义。一、Smart Client Software Factory 中的 Visualizer 机制简介Smart Client Software Factory 构建的客户端应用耦合松散,带来的问题是过于动态,我们很难通过简单的阅读源代码来把握 SCSF 应用的运行时状态,例如当前已经创建了哪些 WorkItem,WorkItem 里有注册了哪些 Services 和 Commands,WorkItem 的运行时层次结构是个什么样子。想来 SCSF 团队应该也注意到了这个问 阅读全文
posted @ 2013-05-29 14:02 洗碗心得 阅读(409) 评论(0) 推荐(0)
摘要:Smart Client Software Factory 是一个关注 Smart Client (智能客户端)构建的 UI 层框架,提供了对 MVP 模式的 First Class 支持,不了解 MVP 模式就不能完全领会 SCSF 的思想精华。本篇及后面两篇将结合Smart Client Software Factory讲解 MVP 模式及面向对象设计原则,要点:SCSF 严格按照标准 MVP 架构模式构造 UI 层,代码和架构完全吻合,给我们设计 MVP 应用提供了良好的参考。View 和 Presenter设计要以用例(Use Case)为基础,以面向对象设计原则为准则。力求职责单一, 阅读全文
posted @ 2013-05-29 14:01 洗碗心得 阅读(334) 评论(0) 推荐(0)
摘要:StopLight是Unity QuickStart中包含的实例,用于展示依赖注入,同时使用了MVP模式,本文演示将StopLight移植到SCSF,本篇及以后的几篇文章会依据StopLight实例来详细说明SCSF的依赖注入,MVP模式和面向对象的设计原则。StopLight的设计当然还不完美,但通过它我们可以体会到面向对象设计的和谐和优雅。一:需求依次显示绿、黄、红三种颜色,各种颜色的现实时间可以用户手工输入,用户也可以手动强制显示下一个颜色。将显示信息记入日志。运行界面:二:简单设计(以后部分会详细讨论为什么这样设计)1StoplightView(StopLightForm)具体的现实窗 阅读全文
posted @ 2013-05-29 14:00 洗碗心得 阅读(253) 评论(0) 推荐(0)
摘要:ObjectBuilder 简介,SCSF 对 ObjectBuilder 的使用和扩展,SCSF 与控制反转(IOC)。上一篇:Smart Client Software Factory 启动过程详解介绍了 SCSF 的启动过程,启动的核心工作就是通过 ObjectBuilder 组件准备整个职能客户端运行环境,因此第一步就是建立一个 Microsoft.Practices.ObjectBuilder.Builder ,SCSF 的整个依赖注入(DI)就基于 ObjectBuilder 。Object Builder 原先是微软P&P团队为 CAB(Composite UI Appl 阅读全文
posted @ 2013-05-29 13:56 洗碗心得 阅读(319) 评论(0) 推荐(0)
摘要:应网友要求,结合参考实现(BankBranchWorkbench)写一篇关于 SCSF 内部工作原理的文章,需要读者有 SCSF 基础。基本概念和基本理念后面相关文章介绍。SCSF 自动为我们建立了 Shell 项目。该项目的 ShellApplication 是SCSF 应用的入口程序,该类继承自 SmartClientApplication<TWorkItem, TShell> ,TWorkItem 是要指定的 root workitem ,TShell 是主窗体。该类的 Main 方法通过 new ShellApplication().Run(); 启动应用。Run() 在父 阅读全文
posted @ 2013-05-29 13:55 洗碗心得 阅读(470) 评论(0) 推荐(0)
摘要:一、Smart Client Software Factory 简介Smart Client Software Factory 是微软 patterns & practice 项目组的 Software Factory 系列软件框架,用于帮助开发者建立基于 MVP 模式的桌面程序(Winform),当然这种桌面程序是微软一直大力推广的所谓智能客户端程序(Smart Client)。智能客户端(Smart Client)可以最大可能的整合瘦客户端(例如:基于 Browser 的 B\S Web 应用)和胖客户端(例如:传统的C\S结构的客户端应用)的优势,避免 B\S 用户体验差和 C\ 阅读全文
posted @ 2013-05-29 13:54 洗碗心得 阅读(439) 评论(0) 推荐(0)