Chinaunix首页 | 论坛 | 博客
  • 博客访问: 101019
  • 博文数量: 16
  • 博客积分: 1435
  • 博客等级: 上尉
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2007-06-15 18:51
个人简介

Software

文章分类

全部博文(16)

文章存档

2012年(1)

2011年(1)

2010年(2)

2009年(1)

2008年(6)

2007年(5)

我的朋友

分类: 项目管理

2010-10-08 23:34:28

由于工作的关系,需要使用C#编程,

因此便去自修了一下。


C#真不愧为新一代的编程语言,学了之后,就爱上了它,呵... :)

尤其它对C/C++或Java用户来说是比较容易上手的。


现在说说个人心得。

首先,谈谈我喜欢之处:

1).与C/C++、Java相似,容易上手。

2).不需要担心内存释放的问题,有Garbage Collector来处理。

3).喜欢它的delegate,它类似C/C++里的函数指针(pointer of function)。

4).另一个是anonymous method,也是一种delegate。应用时,是不需要另外定义一个函数。可以当下把代码写在delegate(){}里边,如:

delegate d = new delegate(){Thread.Sleep(100);};

Invoke(d);

或直接的:

Invoke(delegate(){Thread.Sleep(100);})。


5).喜欢它的list(C/C++也有),dictionary。

6).可以foo["string"] (indexer)来提取array或数据库的的资料。此外:

switch(number)

{

case “one”:

break;

case “two”:

break;

}


7).简化了数据库与网络的编程。

8).多线程(multi-threading)编程简单。可以不定义变量,当下启动线程。如:

new Thread(ThreadStart(){

Thread.Sleep(10);

}).start();

9).Thread Synchronization也简单。可以简单的用lock(this){}来完成。

10).几乎所用的变量,data type,class及其他等都能够转去字串(ToString())。

11).喜欢StopWatch计时器,容易使用。

12).不一定需要处理所有的Exception。

13).喜欢它的params int[] args,能够把多个同样类型的变量给带进函数。

14).Queue,先进先出。

15).Properties, public string Name{get;set;}

16).IDE容易应用,界面设计也容易。

17).微软C#的IDE是免费的,同时也有开源吗的C#。



再来谈谈我不喜欢的:

1).没有宏指令(Macro)。对喜欢与习惯宏指令的人来说,蛮不习惯的。

2).使用static 函数时,很多时候需要打很沉长的字串,如:System.Console.WriteLine(); Thread.Sleep(100);

3).如果要执行一些Windows的指令或是API的话,没有像C++/MFC那么容易的应用。

4).运行速度比C/C++慢,程式启动也比较慢。

5).创建函数Constructor,不像C++一样的会自动调用。它只在该类要使用时才会被调用与初始化。 static的变量与类也是如此。

6).Windows的事件(event)与C++/MFC的处理方式不同,不能随心所欲的SendMessage()的去触发某个事件。


暂时就只有这些,如果往后再有新发现,再来补充。



微软的C#IDE可以到它的网站免费下载,不过需要登记。

如果你对微软没有好感,可以安装开源码的C#IDE。功能与微软的几乎无异。

阅读(1681) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~