文档介绍:Architecting Enterprise Application on .NET
Peng Huang
@
上构架企业级应用程序
课程设计
Session 1:
软件构架的基础知识
Session 2:
.NET软件构架的基础知识
Session 3:
企业级应用程序的构架
Session 4:
案例学习: PetShop .NET
Session 5:
Teamwork与Bug Tracking概念工具与实践(可选)
Session 1软件构架的基础知识
系统构架师
软件构架概述
构架框架
系统构架师
“理想的建筑师应该既是文学家又是数字家,他还应通晓历史,热衷于哲学研究,精通音乐,懂得医药知识,具有法学造诣,深谙天文学及天文计算。”
--Vitruvius(古罗马建筑师),约公元前 25 年
所以开发良好的企业应用程序的第一步就是寻找优秀的
系统构架师
软件构架概述
构架与设计的关系:
构架属于设计的一方面,它集中于某些具体的特征
构架的定义:
IEEE Working Group on Architecture 把其定义为“系统在其环境中的最高层概念”
David Garlan 和 Mary Shaw 认为软件构架是有关如下问题的设计层次:
“在计算的算法和数据结构之外,设计并确定系统整体结构成为了新的问题。
结构问题包括总体组织结构和全局控制结构;通信、同步和数据访问的协议;设计元素的功能分配;物理分布;设计元素的组成;定标与性能;备选设计的选择。”
软件构架概述
构架重点
构架只同以下几个具体方面相关:
模型的结构,即组织模式,例如分层。
基本元素,即关键用例、主类、常用机制等,它们与模型中的各元素相对。
几个关键场景,它们表示了整个系统的主要控制流程。
可选特征、产品线状况的服务。
什么是构架框架?
构架框架或构架基础设施(中间件)
可以在其上构建某种构架的构件集。许多主要的构架困难应在框架或基础设施中进行解决,而且通常针对于特定的领域:命令和控制、MIS、控制系统等等。
目前比较优秀,总拥有成本低的企业应用构架框架
Microsoft .NET Framework
Session 2.NET软件构架的基础知识
.NET Framework
.NET Framework 类库
中的企业应用程序模板
演示
Duwamish 7 C#中的层次结构
.NET
Operating System
Common Language Runtime
: Data and XML
: Web Services & Web Forms
WindowsForms
Common Language Specification
Visual
VB
C++
C#
JScript
…
VS
Visual Studio
Visual Studio .NET
ASP
HTML generated using XML and XSL
Small amount of VB Script
Proprietary cache
Cookie / session / db + components
ADO disconnected recordsets
SQL Server with stored procedures
ASP .NET
HTML generated using ASP .NET Web controls and ASP .NET Data Binding
VB .NET code behind
ASP .NET cache
ASP .NET session state
.Net Assemblies
DataSets
SQL Server with stored procedures