企业程序库的概述bsnx.pptx
《企业程序库的概述bsnx.pptx》由会员分享,可在线阅读,更多相关《企业程序库的概述bsnx.pptx(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、DEV 205DEV 205企业程序库(企业程序库(Enterprise LibraryEnterprise Library)王筱东王筱东王筱东王筱东战略合作伙伴技术经理战略合作伙伴技术经理战略合作伙伴技术经理战略合作伙伴技术经理平台及开发技术部平台及开发技术部平台及开发技术部平台及开发技术部微软(中国)有限公司微软(中国)有限公司微软(中国)有限公司微软(中国)有限公司日程日程企业程序库前世今生企业程序库前世今生企业程序库的企业程序库的7 7种武器种武器合作伙伴成功案例(中软融鑫)合作伙伴成功案例(中软融鑫)Q&A企业开发中经常谈论的话题:企业开发中经常谈论的话题:几乎所有的企业应用都有一些
2、类似的需求几乎所有的企业应用都有一些类似的需求几乎所有的企业应用都有一些类似的需求几乎所有的企业应用都有一些类似的需求编写一个组件以便简化对存储过程的访问编写一个组件以便简化对存储过程的访问编写一个组件以便简化对存储过程的访问编写一个组件以便简化对存储过程的访问 构建一个日志机制能将错误信息进行多渠道的输出构建一个日志机制能将错误信息进行多渠道的输出构建一个日志机制能将错误信息进行多渠道的输出构建一个日志机制能将错误信息进行多渠道的输出构建一个基于角色的用户权限管理机制构建一个基于角色的用户权限管理机制构建一个基于角色的用户权限管理机制构建一个基于角色的用户权限管理机制对敏感数据进行加密对敏感
3、数据进行加密对敏感数据进行加密对敏感数据进行加密我们如何实现这些常用的需求?我们如何实现这些常用的需求?百家争鸣时代百家争鸣时代各企业内部根据自身需求编写组件各企业内部根据自身需求编写组件各企业内部根据自身需求编写组件各企业内部根据自身需求编写组件类似的代码在不同的企业被一次又一次地重复类似的代码在不同的企业被一次又一次地重复类似的代码在不同的企业被一次又一次地重复类似的代码在不同的企业被一次又一次地重复企业开发的经验与最佳实践得不到共享企业开发的经验与最佳实践得不到共享企业开发的经验与最佳实践得不到共享企业开发的经验与最佳实践得不到共享应用程序块时代应用程序块时代应用程序块是开源的应用程序块
4、是开源的应用程序块是开源的应用程序块是开源的.NET.NET.NET.NET组件,是微软与合作伙组件,是微软与合作伙组件,是微软与合作伙组件,是微软与合作伙伴多年实践与经验的总结伴多年实践与经验的总结伴多年实践与经验的总结伴多年实践与经验的总结可重用可重用可重用可重用,可扩展可扩展可扩展可扩展,可修改可修改可修改可修改通用服务通用服务通用服务通用服务 e.g.e.g.e.g.e.g.日志日志日志日志,缓存缓存缓存缓存,数据访问数据访问数据访问数据访问 ,配置配置配置配置可重用的架构可重用的架构可重用的架构可重用的架构e.g.e.g.e.g.e.g.自动更新自动更新自动更新自动更新,离线应用,用
5、户界面处理离线应用,用户界面处理离线应用,用户界面处理离线应用,用户界面处理群众的呼声群众的呼声各程序块间应提供一致性保障各程序块间应提供一致性保障各程序块间应提供一致性保障各程序块间应提供一致性保障 对程序块的评估及理解应更加容易对程序块的评估及理解应更加容易对程序块的评估及理解应更加容易对程序块的评估及理解应更加容易减少相互间的依赖(如减少相互间的依赖(如减少相互间的依赖(如减少相互间的依赖(如Exception ManagementException ManagementException ManagementException Management)容易对程序块进行配置容易对程序块进行
6、配置容易对程序块进行配置容易对程序块进行配置 易于扩展易于扩展易于扩展易于扩展应用程序块重装上阵应用程序块重装上阵一致性一致性一致性一致性采用了一致的设计模式和实施方法采用了一致的设计模式和实施方法采用了一致的设计模式和实施方法采用了一致的设计模式和实施方法扩展性扩展性扩展性扩展性编写代码以插件的方式外挂到应用程序块上进行扩展编写代码以插件的方式外挂到应用程序块上进行扩展编写代码以插件的方式外挂到应用程序块上进行扩展编写代码以插件的方式外挂到应用程序块上进行扩展易用性易用性易用性易用性充分利用图形化配置工具充分利用图形化配置工具充分利用图形化配置工具充分利用图形化配置工具提供了简明、完整的文档
7、及快速启动案例提供了简明、完整的文档及快速启动案例提供了简明、完整的文档及快速启动案例提供了简明、完整的文档及快速启动案例集成性集成性集成性集成性各程序块既能相互工作各程序块既能相互工作各程序块既能相互工作各程序块既能相互工作.又能独立工作又能独立工作又能独立工作又能独立工作企业程序库时代企业程序库时代2005200520052005年年年年1 1 1 1月发布第一版,最新版本在月发布第一版,最新版本在月发布第一版,最新版本在月发布第一版,最新版本在6 6 6 6月发布月发布月发布月发布可重用的应用程序块库,用于解决企业级开发中所面临的常见可重用的应用程序块库,用于解决企业级开发中所面临的常见
8、可重用的应用程序块库,用于解决企业级开发中所面临的常见可重用的应用程序块库,用于解决企业级开发中所面临的常见挑战挑战挑战挑战较低风险(实践是检验真理的唯一标准)较低风险(实践是检验真理的唯一标准)较低风险(实践是检验真理的唯一标准)较低风险(实践是检验真理的唯一标准)降低成本(可重用性)降低成本(可重用性)降低成本(可重用性)降低成本(可重用性)快速实施的问题(易用性)快速实施的问题(易用性)快速实施的问题(易用性)快速实施的问题(易用性)当前有当前有当前有当前有7 7 7 7个应用程序块组成个应用程序块组成个应用程序块组成个应用程序块组成免费下载免费下载免费下载免费下载SecuritySec
9、urityCryptoCryptoData Data AccessAccessLoggingLoggingCachingCachingExceptionsExceptions企业程序库企业程序库LegendDependencyPlug-inConfigurationConfigurationConfigConfigToolTool日程日程企业程序库前世今生企业程序库前世今生企业程序库的企业程序库的7 7种武器种武器合作伙伴成功案例(中软融鑫)合作伙伴成功案例(中软融鑫)Q&A霸王枪配置程序块霸王枪配置程序块SecuritySecurityCryptoCryptoConfigurationCon
10、figurationData Data AccessAccessLoggingLoggingCachingCachingExceptionsExceptionsConfigConfigToolTool配置程序块百兵之祖配置程序块百兵之祖为应用系统提供了公用的配置管理解决方案,允许应用程序方为应用系统提供了公用的配置管理解决方案,允许应用程序方为应用系统提供了公用的配置管理解决方案,允许应用程序方为应用系统提供了公用的配置管理解决方案,允许应用程序方便灵活地从不同配置存储读写配置信息便灵活地从不同配置存储读写配置信息便灵活地从不同配置存储读写配置信息便灵活地从不同配置存储读写配置信息隔离应用程序
11、和配置数据的物理存储位置隔离应用程序和配置数据的物理存储位置隔离应用程序和配置数据的物理存储位置隔离应用程序和配置数据的物理存储位置Storage ProvidersStorage ProvidersStorage ProvidersStorage Providers:允许从不同的物理存储读写信息(如允许从不同的物理存储读写信息(如允许从不同的物理存储读写信息(如允许从不同的物理存储读写信息(如SQL/XMLSQL/XMLSQL/XMLSQL/XML)TransformersTransformersTransformersTransformers:将读取的配置数据经转换器转换为结构化数据:将读
12、取的配置数据经转换器转换为结构化数据:将读取的配置数据经转换器转换为结构化数据:将读取的配置数据经转换器转换为结构化数据内置对内置对内置对内置对XMLXMLXMLXML的支持的支持的支持的支持改善安全性改善安全性改善安全性改善安全性 (支持加密保存)(支持加密保存)(支持加密保存)(支持加密保存)配置文件监控器能够监测到配置文件的变化并发出事件通知配置文件监控器能够监测到配置文件的变化并发出事件通知配置文件监控器能够监测到配置文件的变化并发出事件通知配置文件监控器能够监测到配置文件的变化并发出事件通知配置程序块示例配置程序块示例EditorFontData EditorFontData con
13、figData =New EditorFontData();EditorFontData();configData.Name=fontDialog.Font.Name;configData.Name=fontDialog.Font.Name;configData.Size=fontDialog.Font.Size;configData.Size=fontDialog.Font.Size;configData.Style=Convert.ToInt32(fontDialog.Font.Style);configData.Style=Convert.ToInt32(fontDialog.Font.
14、Style);/write an object info to config file/write an object info to config fileConfigurationManager.WriteConfiguration(EditorSettings,configData);ConfigurationManager.WriteConfiguration(EditorSettings,configData);Public EditorFontData()Public EditorFontData()Private string fontName;Private string fo
15、ntName;Private Double fontSize;Private Double fontSize;Private Integer fontStyle;Private Integer fontStyle;/Read an object with multiple properties/Read an object with multiple propertiesEditorFontData EditorFontData configData =ConfigurationManager.GetConfiguration(EditorSettings)ConfigurationManag
16、er.GetConfiguration(EditorSettings)SecuritySecurityCryptoCryptoConfigurationConfigurationData Data AccessAccessLoggingLoggingCachingCachingExceptionsExceptions碧玉刀数据访问程序块碧玉刀数据访问程序块ConfigConfigToolTool数据访问程序块大开大阖数据访问程序块大开大阖对数据库访问提供了简单、高效的访问方式对数据库访问提供了简单、高效的访问方式对数据库访问提供了简单、高效的访问方式对数据库访问提供了简单、高效的访问方式屏蔽了
17、对常用屏蔽了对常用屏蔽了对常用屏蔽了对常用ADO.NETADO.NETADO.NETADO.NET使用的复杂度,使用单条语句即可完成对存使用的复杂度,使用单条语句即可完成对存使用的复杂度,使用单条语句即可完成对存使用的复杂度,使用单条语句即可完成对存储过程的调用储过程的调用储过程的调用储过程的调用为为为为SQL Server,Oracle,DB2SQL Server,Oracle,DB2SQL Server,Oracle,DB2SQL Server,Oracle,DB2提供了统一的编程提供了统一的编程提供了统一的编程提供了统一的编程当移植应用程序到不同数据库类型时,减少重写代码的数量当移植应用
18、程序到不同数据库类型时,减少重写代码的数量当移植应用程序到不同数据库类型时,减少重写代码的数量当移植应用程序到不同数据库类型时,减少重写代码的数量搭起了逻辑数据库与物理数据库间的桥梁,降低改变物理搭起了逻辑数据库与物理数据库间的桥梁,降低改变物理搭起了逻辑数据库与物理数据库间的桥梁,降低改变物理搭起了逻辑数据库与物理数据库间的桥梁,降低改变物理数据目标的难度数据目标的难度数据目标的难度数据目标的难度容易对数据库访问的配置信息进行调整和验证容易对数据库访问的配置信息进行调整和验证容易对数据库访问的配置信息进行调整和验证容易对数据库访问的配置信息进行调整和验证数据访问程序块架构数据访问程序块架构数
19、据访问程序块示例数据访问程序块示例Public Function GetProductsInCategory(ByRef Category As Integer)As DataSet Create the Database object,using the default database service.The default database service is determined through configuration.Dim db As Database=DatabaseFactory.CreateDatabase()Invoke the stored procedure wi
20、th one line of code!return db.ExecuteDataSet(GetProductsByCategory,Category)Note:connection was closed by ExecuteDataSet method call End FunctionSecuritySecurityCryptoCryptoConfigurationConfigurationData Data AccessAccessLoggingLoggingCachingCachingExceptionsExceptions长生剑异常处理程序块长生剑异常处理程序块ConfigConfi
21、gToolTool异常处理程序块攻如风,守似磐异常处理程序块攻如风,守似磐异常处理程序块为系统的不同层面提供了一致的例外处理异常处理程序块为系统的不同层面提供了一致的例外处理异常处理程序块为系统的不同层面提供了一致的例外处理异常处理程序块为系统的不同层面提供了一致的例外处理策略策略策略策略异常由配置工具进行定义和维护异常由配置工具进行定义和维护异常由配置工具进行定义和维护异常由配置工具进行定义和维护 不需要通过编码控制不需要通过编码控制不需要通过编码控制不需要通过编码控制例外处理例外处理例外处理例外处理定义定义定义定义“异常策略异常策略异常策略异常策略”,可指定该策略发生时的行为,可指定该策略
22、发生时的行为,可指定该策略发生时的行为,可指定该策略发生时的行为将异常写入日志将异常写入日志将异常写入日志将异常写入日志用另外一个异常进行封装用另外一个异常进行封装用另外一个异常进行封装用另外一个异常进行封装采用不同的异常替代以便隐藏敏感的异常信息采用不同的异常替代以便隐藏敏感的异常信息采用不同的异常替代以便隐藏敏感的异常信息采用不同的异常替代以便隐藏敏感的异常信息创建自己的创建自己的创建自己的创建自己的Handler Handler Handler Handler,提供附加的处理行为,提供附加的处理行为,提供附加的处理行为,提供附加的处理行为异常处理程序块示例异常处理程序块示例DataSet
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 企业 程序库 概述 bsnx
限制150内