注册 | 登录 忘记密码? 51cto首页 | 博客 | 论坛 | 招聘
热点文章 思科路由器NAT配置详解
 帮助

高效掌握C#笔记[第二章]C#简介


2007-09-04 23:06:42
 标签:C#   [推送到技术圈]

这一章用了少数篇幅来揭示在更短的时间开发更可靠的应用程序时C#语言的优点,以及C#编译器能够产生什么类型的项目,并且要注意C#最重要的功能特性是什么。
 
  需要C#语言的原因
  正如此书所描述的那样,很多语言都可以编写.NET代码,但C#是MS专门为.NET Framework开发的一种面向对象程序开发语言。因此C#语言与.NET Framework具有高度的相集成性。
  而使用其他不同语言(如JAVA、C++、VB)的.NET程序设计者,在进行团队开发时,肯定碰到诸如不同语言的代码之间进行类设计、数据传递、异常处理等等兼容问题,程序员往往为了很好的柔和这些不同语言的代码时耗费了很多精力,到最后也不一定保证应用程序有很好的执行效率和稳定性。这样使得创建和维护应用程序花费的时间变得越来越长而难以忍受。
  【C#与其他.NET语言的比较】与托管C++相比,C#在无用单元收集和基与代码安全的特性实现上更加灵活性;与VB.NET相比,C#具有VB.NET没有的利用非安全代码程序块的能力,更主要的是在语法适应上更胜一筹。与J#相比,J#语言的设计不够成熟,待其完全版发布之后,两者在功能和语法上的少有差别。而JScript虽已被移植到.NET中,但与C#差别较大,是一门松散类型的语言,这与C#所依赖的强类型系统是完全相反的。
 
  C#可以开发哪些应用程序
  1.ASP.NET(与ASP比较)
  2.Web窗体
  3.移动的ASP.NET
  4.Web控件
  5.Web服务(如使用XML、HTTP/Soap等技术
  6.Windows应用程序
  7.Windows控件(取代Active X或OCX控件)
  8.Windows服务
  9.类库
  10控制台应用程序
  
  C#的主要功能,也是后续章节主要探讨的内容:
  1.简单性
    更容易读取和维护,如C#中使用.操作符指向一个对象,而不是使用C++中的::或→
  2.变量和类型安全
    如需要对使用的数据类型进行定义,也不能够隐式地修改数据类型等等
  3.流程控制语句
    除大部分流程控制语句外,C#还包含了在数组或集合中遍历所有项目的VB关键字foreach
  4.成熟的面向对象功能
    C#是完全面向对象的语言,可以将每样事物都视为对象,包括变量、结构和枚举。可以实现通过删除或修改面向对象功能来简化类的设计和实现。只支持类的单一继承,从多接口中进行继承,禁止使用全局方法或全局变量,使用命名空间等等。
  5.非安全代码
    C#允许用户定义非安全代码块,在其中执行的代码不受运行库中类型安全和所有安全规则的限制。这使用户可以使用诸如指针的功能来直接访问内容,而且使用户给.NET Framework以外的DLL文件(如Windows API)传递的数据类型方面有了更大的自由度。
  6.XML文档
    用户能够在自己的代码中插入XML文档,这在第六章中有深入的介绍。
  7.公共语言运行库
    C#代码会被编译撑MSIL(MS中间语言)并在.NET运行库环境中运行,C#与.NET Framework之间的这种紧密关系,使得使用公共语言规范(CLS)会获得很多好处(这一点怎么解释呢?)
  8..NET基类
    基类要比Windows API函数更容易定位,因为基类的结构更直观而。类中的方法具有描述性的名称,很容易就判断出该使用哪个方法;其中有很多的方法具有完全的重载功能,这让用户在选择传递数据时所使用的格式上有了很大的灵活性。这在第七章中有更深入的介绍
  9.数据访问
    ADO.NET,为使用互不关联的数据提供了更多的支持,这更适合于分布式环境(what?)。C#中还有一个完全为SQL Server而设计的单独的类型,如此使得使用SQL Server的代码比使用标准的LE DB类运行得更快。(第10章)
  10.XML
    .NET Framework中数据存储的标准格式是XML。ADO.NET还对XML提供了本地支持(what is this?),于是可以使用XML来给诸如Web Form或应用程序的外部源发送数据。ADO.NET和XML之间紧密的集成使用户能够以一种非常直观的方式来处理XML数据。 




    文章评论
 
 

发表评论

昵   称:
验证码:  点击图片可刷新验证码  博客过2级,无需填写验证码
内   容: