C#与Java的简单比较

大学期间学习了C#和Java两种开发语言,也学习过相应的ASP.NET和JSP等技术,今天对这两门语言做下简单的比较,有说错的地方请各位不吝赐教。

1.Java开源,C#不开源,C#编码中有Java的影子,Java跨平台较好些,C#通过Mono也可以实现跨平台。

2.C#特性比Java多,C#支持指针操作通过使用unsafe和fixed关键字,Java不支持指针操作。

3.走Java路线可以是Java基础,JSP/Servlet,Hibernate,Spring等框架,Android开发,应用于Java企业级开发。

4.走C#路线可以是C#基础,ASP.NET,ASP.NET MVC,EF实体框架,WPF,WP8程序开发,同时C#也可以开发游戏利用Unity3D引擎,开发IOS和Android应用,WPF,Silverlight和WP8采用相同的xaml布局格式,学会一个另外两个学起来也很方便。

5.常用的关键字不同,Java的extends,C#的:,Java的final,C#的sealed等,另外C#多出的virtual,readonly,internal等关键字,Java类的上级成为包,C#类的上级成为类库。

6.不得不承认C#在快速开发上占有一定的优势,C#控件的使用,VisualStudio的有效使用都可以减少开发时间,但Java开发的企业级应用在Linux上会更稳定一些。

7.Oracle的桌面管理系统采用Java开发,Eclipse据说也是Java开发,Java在桌面开发上虽然不占优势,但依然可以开发出优秀的软件。

8.C#开发出的游戏有神庙逃亡,部分银行的也使用ASP.NET进行开发,知网采用ASP.NET进行的开发。

9.C#支持并行操作(多核操作),可以更好的利用多核处理器,Java这个不太了解。

10.学习Java最好会Linux,在大型B/S项目上Java+Linux上才会体现出优势。

11.无论学C#还是Java最好还要学会些缓存的技术如Memcached,数据库等相关技术

以几点上只是个人的见解,没有说C#或Java哪个更好的意思,只是感觉要学的真是太多了,在学习或开发时选用自己喜欢或擅长的就行。

你可能感兴趣的:(java,c#,跨平台,开发语言,数据库)