.net 框架程序的设计_.Net教程
推荐:解析ASP.NET MVC项目中视图的单元测试关于视图的单元测试 说到ASP.NET MVC,我们似乎始终都在关注对于Controller的测试虽然Stephen Walther也写过如何脱离Web Server对View进行单元测试,但是他的方法可看而不可用。复杂的构造和预备,以及对生成的HTML字符串作判断这真是在对视图做单元测试吗?
.net 平台构成
1 底层操操作系统 windows
由于Web服务和使用Web服务的应用程序仍然运行在计算机上,而且既然是计算机都 要有外设,所以我们仍然需要一个操作系统.. Windows添加了Xml支持.. Windows XP和Windows.net (现在改名为windows Server 2003 ) 所有版本都都 为服务驱动的世界提供最好的支持.
特别地windowsXp和Windows 2003 Server 集成了Microsoft .net Passport Xml Web服务支持.Passport是一种用户认证服务..当登录使用Passport认证的Web站点和Web服务时的效率将会大提升.换句话说,用户在访问不同的互联网着站点时,将不再需要每次都输入用户名和密码.
另外Windows XP 和 Windows Server 2003 都提供了对.net框架的内置支持.
2 辅助产品:.net 企业服务器
这些产品主要是为企业的信息化和信息集成提供帮助的.
Microsoft Application Center
Microsoft BizTalk Server 2000 (现在出了个新版本)
Microsoft Commerce Server 2000
Microsoft Exchange 2000 邮件服务器
Microsoft HostIntegration Server 2000
Microsoft Internet Security and Acceleration(ISA) Server 2000
Microsoft Mobile Information Server 2002
Microsoft SQL Server 2000
这个产品刚开始跟我们的.net平台其实没什么关系.但以后可能为将一些.net特性集成到这些这些产品中, 目前新版的BizTalk 就集成了.net特性,差且通过vs.net 2003进行开发.
3 Microsoft XML Web 服务: .net My Servers
微软作为一个Web服务的底层技术提供商的同时,也推出了自己的XML Web服务
.net Alerts
.net ApplicationSettings
.net Calendar
.net Categories
等等……
4开发平台:.NET 框架
.net 框架包含两个部分: 通用语言运行时(Common Language Runtime---CLR) 和.net 框架类库(Framework Class libarary --FCL) .
.net 框架是.net平台最关键的部分.
本书讨论的就是开发面向.net 框架的应用程序和XML Web服务.
.net 框架开发平台可以允许我们创建各种各样的应用程序:XML Web服务、Web窗体,Win32 GUI程序,Win32 CUI 应用程序, Windows服务、实用程序、以及独立的组件模块。
Windows 2003 Server 内置了.NET框架
Microsft .net 框架为开发人员提供的技术比任何以前的微软发平台提供的技术都要多,比如代码重用、代码专业化、资源管理、多语言开发、安全、部署、管理等。在设计.net 框架时,微软还感到有必要改进目前Windows平台的某些缺陷。
CLR和FCL提供的部分服务:
l 一致的编程模型
现在的Windows操作系统,某些功能需要通过动态链接库DLL来访问,而某些功能又是通过COM对像来访问。 在.net 框架下,所有的应用程序服务都将以一种一致的、面向对像的编程模型提供给开发人员。
l 简化的编程方式
CLR的其中一个目的就是简化Win32和COM 环境下所需要的各种繁杂的基础构造。在CLR下,我们可以不需要 注册表、全局惟一标识符、Iunknown 、AddRef、Release、HRESULT等。
l 可靠的版本机制
.net 框架采用了一种新型的版本机制来隔离应用程序组件,可以保证一个应用程序总能加载当初生成的测试时所使用的组件。 彻底关上了“DLL hell“的大门。
l 轻便的部署管理
在.net框架下,组件将不再受注册表的任何引用。大多数.net框架应用程序的安装工作所需要的只不过是将文件拷贝到一个目录中。然后添加快捷方式都桌面、开始菜单就行了
l 广泛的平台支持
编译后的.NET框架的源代码实际上是通用中间语言(Common Intermediate Language) 只有在运行时,CLR才会将这些中间语言翻译为CPU指令。这就意味着只要一台机中包含有与ECMA兼容的CLR和FCL,我们便可以将.NET框架应用程序部署在该机上。
l 无缝的语言集成
CRL要求所有面向它的语言都要遵循一种称作通用类型系统(Common Type System,简称CTS)的规范和通用语言规范
l 简便的代码重用
l 自动化的内存管理(垃圾收集)
CLR为我们自动追踪资源的使用情况。
l 坚实的类型安全
CLR可以确保所有的代码都是类型安全的。
l 丰富的调试支持
CLR完全支持跨语言调试
l 统一的错误报告
CLR中,所有的失败的调用是通过异常来报告的。
l 全新的安全策略
传统的安全机制都是基于用户账号来控制的。
CLR中的代码访问安全为我们提供了以代码为中心的控制方式。
l 强大的互操作能力
.net框架完全支持COM ,以及传统DLL中的Win32函数。
5 集成开发环境 Visual Studio .Net
微软的Visual Stuaio .net 2003是最好的.net 框架应用程序开发工具。
总结:
这一章主要讲了.net平台的构成和.net平台的最关键部分---CLR和FCL的特点。
.net框架的13大特点:
1. 一致的编程模型
2. 简化的编程方式
3. 可靠的版本机制
4. 轻便的部署管理
5. 广泛的平台支持
6. 无缝的语言集成
7. 简便的代码重用
8. 自动化的内存管理(垃圾收集)
9. 坚实的类型安全
10. 丰富的调试支持
11. 统一的错误报告
12. 全新的安全策略
13. 强大的互操作能力
其实我个人感觉第5条目前来说还不是很有意义 ,因为至现在为止.net框架只能在windows上很好的使用,听说出了个mono但目前还不是很成熟吧? 第12条其实非常重要,基于用户帐号的安全机制对于互联网来说是不太安全的,这直接会影响到.net的普及程度,也就影响到我的饭碗 :)。
还有就是微软的那些企业服务器我只知道一部分的用途,另一部分压根不知道是干什么用的。也没有时间主动去找相关资料。前段时间参加了微软开发者日才知道BizTalk是干什么用的。那个主讲人也挺牛。资料上写的晕晕乎乎的东西,被他讲的清晰明了,一听就懂啊。
技术或语言特性或者说一些集成方案,只有了解它,才会去主动去使用它,但问题是,很多情况下不使用它也可以正常工作,只不过花费的时间和代价更高。而我在用更高的代价解决问题时,并不知道有一种更好的解决办法存在,而且就在我身边。我没有太多时间去研究层出不穷的名词背后的技术和特性。
有两个办法解决这个问题: 尽量的去了解各种新的事物,哪怕你刚开始认为它跟你的工作和兴趣风牛马不相及。另外一个就是期望那些提供商(比如微软)在宣传时更多的突出 程序员可以用那些产品解决实际应用中的哪些问题。(起码面像程序员的宣传是这样的)
分享:谈.NET平台编程语言的未来在去年的PDC2008召开期间,微软逐步公开了围绕.NET和编程语言的很多想法,据此我们可以饶有兴趣地对.NET的未来预测一番。 .NET平台以运行在通用语言运行时(Common Language Runtime,CLR)上的C#和VB.NET作为开端。CLR是通用语言架构(Common Language Infrast
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP发送Email实例(可带附件)
- js实现广告漂浮效果的小例子
- asp.net Repeater 数据绑定的具体实现
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- VS2010 水晶报表的使用方法
- ASP.NET中操作SQL数据库(连接字符串的配置及获取)
- asp.net页面传值测试实例代码
- DataGridView - DataGridViewCheckBoxCell的使用介绍
- asp.net中javascript的引用(直接引入和间接引入)
- 三层+存储过程实现分页示例代码
- 相关链接:
- 教程说明:
.Net教程-.net 框架程序的设计。