当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 走进C# (我的C#学习之旅)之三

ASP.NET
Asp.net利用JQuery弹出层加载数据代码
asp.net dataview做无限极分类的又一用法
asp.net ckeditor编辑器的使用方法
告别ADO.NET实现应用系统无缝切换的烦恼(总结篇)
asp.net 实现动态显示当前时间(不用javascript不考虑开销)
.net动态显示当前时间(客户端javascript)
asp.net 结合YUI 3.0小示例
asp.net 取消缓存相关问题说明
asp.net 计划任务管理程序实现,多线程任务加载
ASP.NET 跨页面传值方法
asp.net中url地址传送中文参数时的两种解决方案
Asp.net 菜单控件简洁版
asp.net jQuery Ajax用户登录功能的实现
asp.net SharpZipLib的压缩与解压问题
asp.net url重写后页面回传问题
asp.net与Discuz!NT整合集成实例教程
Discuz!NT 3与asp.net 整合的实例教程
测试控制台使用方法
.net 动态标题实现方法
asp.net *.ashx类型的文件使用说明

ASP.NET 中的 走进C# (我的C#学习之旅)之三


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 70 ::
收藏到网摘: n/a


终于来到第二章了,真是不容易(呵呵,大家少安毋躁)。
这章总的来说就是对C#的一个总体的概述。首先通过对以往的编程语言(汇编,C/C++,java,vb)的回顾,强调这些语言与C#的联系及C#对这些语言优秀特性的继承,试图在其中打到C#的影子。然后对现在市面上流行的编程语言与C#进行比较,从而突出C#做为新一代的编程语言的重要性及优越性。之后再次简述了C#的新特性(感觉作者的废话太多了)。最后简述了C#在各种程序开发中的应用及C#的编译器的使用。
这章的大致内容就是这些,下面依照各分节的顺序来看一看各节的主要内容。
语言发展史部分

汇编语言的出现 .NET程序并不包含机器指令,而包含一组必须用运行时程序解释的中间语言指令。中间语言指令比汇编语言指令更抽象。中间语言看起来像是一个带有处理对象的外部命令的汇编语言程序。
C语言部分这部分主要说明了C#与C的一脉相承。强调了C#在继承了C的强大功能的同时又鄙弃了其使用的困难性。

VB部分指出VB在OOP的先天不足,而要强调的是C#功能的完美而且与VB一样简单容易上手。
JAVA部分在这一节,首先指出了JAVA的优势,然后当然是对JAVA的海扁了。不过其中还是有一些可看之处。

在语法上,JAVA非常类似于C++,但有一些区别
(1)JAVA不支持指针,因为指针是C++程序中许多很难处理的错误源。在JAVA中,对象总是通过引用来处理。
(2)JAVA不支持运算符重载,因为不正确的运算符重载常常会导致大量的混乱,特别是多个开发人员参与的大型程序。
(3)JAVA完全是面向对象的,即所有的函数都必须在类的范围内定义。因为C++支持全局函数,所以C++允许程序员返回它们的过程根。
(4)JAVA带有类的扩展分层结构,可以进行窗口、网络和其他问题域的处理。
(5)JAVA建议把类的声明和执行放在同一文件中。
(6)JAVA运行时提供了一种防止内存遗漏的无用存储单元收集机制。
与其它语言的比较这部分写的太恶心了,说的基本都是C#的好其它语言的坏。


主要的观点如下:
在与VB的比较中说明C#的面对对象比VB高,在语法上比VB更简洁。
在与VB.NET的比较中,说明C#是.NET的首选语言。
与VC++比较中说明,C#比C++的效率更高,更容易。
在与C++Builder及Delphi比较中说明C#的平台独立性。

下面来看看与JAVA的比较
(1)C#的语法要比JAVA强大,因为C#支持运算符重载和类型安全的枚举,另外,还可以在C#程序中选择嵌入式指针和其他不合法的语法。
(2)C#可以与以其他.NET语言编写的代码进行无缝交互操作
(3)C#可以看作是一个比较便宜、不太完整的JAVA替代品
(4).NET基类为C#提供了一个统一的、标准化的源,以满足常用功能的需要。

后面提到的与Javascript及vbscript的比较就不想再多说了,因为实在太牵强。C#的应用

(1)ASP.NET应用程序
(2)WEB窗体
(3)WEB控件
(4)WEB服务
(5)类库
(6)WINDOWS应用程序
(7)WINDOWS控件(不必注册.NET组件,只需把组件的一个副本放在客户应用程序的目录下,客户机就可以访问它。)
(8)控件台应用程序
C#的特性概览

(1)基于.NET基类
(2)流控制语句(支持for each结构以及A?B:C)
(3)面向对象的功能
(4)反射和属性(这块说的很含糊,不是很明白)
(5)可以处理不安全的代码
C#编译器(1)C#程序编译的两种方式,命令行方式和集成的IDE方式。
(2)输入输出文件:csc SourceFile.cs /out:TargetFile.exe(大家应该都能看明白)
(3)编译不同的工程类型(其实关键就是参数的不同)
/t:exe 建立控制台应用程序。
/t:winexe 建立WINDOWS FORM应用程序。
/t:library 建立一个包含清单的独立装配件。
/t:module 建立一个装配件文件,但没有清单。
这章的内容很多,感觉上也很笼统。不过我想对于我们初学者来说掌握这些也应该足够了。由于这只是个铺垫,后面还有更多的介绍,所以不想再深究下去了。带着疑问看下去,不是更好。让我们期待下一章吧。