由于工作的关系,需要使用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。功能与微软的几乎无异。
阅读(1719) | 评论(0) | 转发(0) |