我要提问
ARTICLE DETAIL

资讯详情

前沿编程新知与开发实战干货的深度解读。

java/.net语言及IDE简易对比

java/.net语言及IDE简易对比 做这个对比是希望找出各自不足并加以改进也希望未提到的大家一起补充纯当技术讨论所以极端.net和java粉丝可以无视先来说说IDE对比也就是eclipse和VS的对比吧1、eclipse支持变量上下文中的高亮显示这点VS直到2010才支持2、eclipse双击左花括号可自动选定包含内容对于大块if...else来说是个福音3、相比而言eclipse插件更为丰富4、VS中region代码块管理功能在eclipse里木有遇到比较烂的老代码真是。。。5、 VS的智能提示更胜一筹比较完善6、eclipse自动纠错比较省事目前暂时想到这么多可能这些对平时实用影响比较大吧坐等看官们补充接下来是C#和JAVA在语言层面的对比话说.net 3.0之后语言层面优雅不少(即使有些是语法糖)加入了更过函数式编程的用法如LINQ, lambda等这些就不作对比了为什么因为JAVA这块貌似拿不出东西来比据说scala等java平台后来者这一点好很多不过还没用过期待JAVA迎头赶上啊~这里主要对比各自的基础框架基本上是.net2.0与jdk1.6的比较1 、JAVA对已声明异常需要在代码中做处理否则无法通过编译这是个比较不好做评价的设计虽然有助于提高程序的健壮性但是却也会把一些问题隐藏起来个人认为这个设计用在服务器程序中是非常好的至少你的服务不会因为一个异常而终止。2、成员可见性上JAVA默认为包可见一定程度降低了封装性另外protected修饰符在JAVA中为包可见及子类可见.NET中仅为子类可见3、JAVA反射机制存在读写限制需调用setAccessible方法给予权限个人觉得有点鸡肋4、可替换jar文件中的class文件实现局部更新这点在某些情况下非常好用5、JAVA基础类库或者说JAVA代码规范中的接口名字无法让人一眼看到就知道是个接口如.net里接口会固定首字母为I 6、JAVA里的枚举设计的比较繁琐很多情况都在使用静态常量代替相比之下.net中的枚举更为直观7、JAVA只是简单的将泛型设计成一个语法糖8、JAVA里没有值类型概念基础类型int,byte等不是原生的对象需要经过包装导致MapByte,String里用一个int key1去查找的结果肯定为NULL即使MAP里存在KEY1的数据这个必须批评下9、运行在实例调用的方法表里出现静态方法这容易导致混淆10、相比.net,JAVA里的时间操作比较麻烦11、JAVA中做单元测试十分方便每个类都可以加个main函数虽然.net也可以但配置相对麻烦12、JAVA中环境变量的配置估计是不少新手的噩梦。最后说一句无论哪种语言我认为人都有偏好这没什么但是如果是靠贬低其他的就不好了除非你有能力发明一个自己的语言。
返回列表