不迎不送,来去自便,无茶无酒,谈笑随缘

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
一.初识C#
           一直以来我都认为C#语言仅仅是C++语言的完善版本,但在初次使用了C#以后,我才认识到过去的想法是错误的。C#无论从语言的风格、编译环境的设置、开发框架的定义来看都与C/C++相去甚远,甚至与JAVA接近的程度更甚C/C++,从框架生成的程序结构来看,C#在应用领域的定位上应该也是与JAVA相似的(难道目的是要抢占J2EE的地位不成?)。就目前对其简单的使用来看,即便是编写Windows应用程序,C#语言似乎也并不支持MFC框架,并且不支持STL模板,甚至不能include头文件,这让作为一名C/C++程序员的我感到很不适应。但是,对C#短暂的接触后发现,Microsoft .Net Framework框架的确非常。。恩~~~怎么说呢?非常漂亮吧,其对程序的封装能力似乎强过MFC或STL,我C#的介绍中也看到,C#是基于组件的开发语言,并且新增加了泛型、迭代器(不知道与STL中的迭代器之间有没有什么联系)、匿名方法、接口以及托管等新的概念和技术。这些新技术会给一个程序员带来什么样的惊喜呢?我越来越等不及要尝试一下了。。。

二.开发环境
        打开VC#,给我的初步感觉是软件的设计更加细腻T_T,比起标准的Windows应用程序更加像是嵌入到Windows应用程序中的Web程序。源程序文件名称没有熟悉的.CPP或者.h,取而代之的是.cs,.xml等等Web程序中才能看到的文件后缀。这也肯定我在使用之前的猜测,C#在应用方向上定位于与Web有关的应用程序。控件的属性窗口变成了过去VB控件的风格,相信又得让VC程序员们适应一阵子了(换什么换~~~,从VB转VC就不适应,好不容易适应了又要转回来,真能折腾人*_*)。菜单栏中多出了很多东西,不用问,肯定是为了方便开发提供的大量相关工具,似乎与测试管理相关的内容也被嵌入了开发环境中,估计应该还有其他CASE工具吧,现在的Visual Studio似乎已经从过去的集成开发环境变成了贯穿了软件开发整个过程的CASE工具。.Net和支持.Net框架的Visual Studio.Net环境已经出现很长时间了,我居然还在抱着VS6.0不放,看来这次我又落后了一大步,这个行业技术的更新速度真的让人吃惊。

三.Hello the World
      学习一门新的语言,Hello The World这个程序是肯定要写的。利用VS.Net自动生成了一个带有一个标准窗体的C#应用程序,发现在资源管理器中生成了一个Form1.cs文件,该文件下还有Form1.Designer.cs和Form1.resx两个文件,其中两个.Cs文件的内容都不相同,从Form1.cs文件中有一个从Form中派生出来的Form1类,就代码来看该文件应该是处理窗体控件Form1以及Form1上其他控件的事件相关的内容,而代码的添加方法是用鼠标双击这个控件,而没有发现VC中用到的消息影射机制,这又是一个VB才有的特点(或者像BC 5.0以后的版本~~)。在Form1.Designer.cs中也存在一个Form1类,该类并不知道是否派生类(应为格式不是定义派生类的格式),内部有一个托管,由于还没有学习有关知识,该部分的意义无法确定。资源管理器中还有一个Program.cs的文件,该文件中定义了一个Program静态类,程序中注释为“应用程序入口点”,并且还有一个久违了的Main()函数,该文件的作用有待日后学习了解。
       另外C#中命名空间的技术也比C/C++中用的频繁,可能是由于该框架需要包含大量各种构件,为了避免部件的冲突而为之吧。
     由于时间比较紧,今天没有开始看语法(其实基本上语法不用看~~~)而是把时间都花在了熟悉编译器以及编译器自动生成的文件上了,明天开始学习C#语法方面与C/C++不同的地方,初步了解C#的程序设计思想。   
posted on 2006-12-27 15:43  wude  阅读(137)  评论(0编辑  收藏  举报