当前位置: 技术问答>java相关
Java和C++我的一点感觉
来源: 互联网 发布时间:2015-09-04
本文导语: 以前写C++程序时,总觉得有大量资料可查,实现功能也得心应手。感觉自由度很高, 最近接触了java,首先就被java的io类打了个下马威,印象很不好,也许我对装饰器编程模式不太喜欢,或者是我还没有体会到它的深...
以前写C++程序时,总觉得有大量资料可查,实现功能也得心应手。感觉自由度很高,
最近接触了java,首先就被java的io类打了个下马威,印象很不好,也许我对装饰器编程模式不太喜欢,或者是我还没有体会到它的深奥之处,总之觉得java以这种方式提供io,违背了类的某种原则,甚至觉得java只要提供简单的二进制流方式足够了,其他的我们自己来就可以了,搞那么多来混淆视听,真麻烦。
另外,我不喜欢大量使用throw错误的这种处理模式,让人看着代码就不爽。还有,不分头文件,一个java文件里面只能有一个public等,都不爽。。
虽然语法上面简单,但是n多烦琐的东西总让我不喜欢,怎么办?是不是我没有理解java的高深之处?
请高手指点迷津呀。
最近接触了java,首先就被java的io类打了个下马威,印象很不好,也许我对装饰器编程模式不太喜欢,或者是我还没有体会到它的深奥之处,总之觉得java以这种方式提供io,违背了类的某种原则,甚至觉得java只要提供简单的二进制流方式足够了,其他的我们自己来就可以了,搞那么多来混淆视听,真麻烦。
另外,我不喜欢大量使用throw错误的这种处理模式,让人看着代码就不爽。还有,不分头文件,一个java文件里面只能有一个public等,都不爽。。
虽然语法上面简单,但是n多烦琐的东西总让我不喜欢,怎么办?是不是我没有理解java的高深之处?
请高手指点迷津呀。
|
呵呵
我也是刚刚转过来的
有时间就来这里取经
另外,你说一个java文件里面只有一个public好像不是这样
我也是刚刚转过来的
有时间就来这里取经
另外,你说一个java文件里面只有一个public好像不是这样
|
java的io类本来设计的是比较精简的,不过程序越写就越大,没办法拉
|
我觉得java的起点比较高,很多底层的东西做的比较完善,而且没有头文件,把包和目录对应起来方便程序的组织和管理。
|
这些正是java对于c++的改进之处啊,也是它的优点所在,因为你习惯了c++,等你习惯了java,你就会体会到它的好处的
|
也一块来聊聊,呵呵
小弟也是从c++转到java,工作需要
然后,又接手作c++,还是工作需要
老实说,语言无优略,各有长处而已
就像throws Exception这样的处理机制,在C++里被人大加诟病,认为严重影响程序效率。但很明显,java需要的不是效率,作为服务器端的代码,它最重要的就是
稳定性和对各种不同错误的处理机制,这是,异常机制就比较有效了
还有就是io类,io类和简单的二进制流不同,java需要对其进行序列化,以便以后
能够还原为对象,rmi得很大一部分都是有对象的序列化而来,这个是java的一个很大的特性来着,和c++的二进制流有很大的差别,
小弟也是从c++转到java,工作需要
然后,又接手作c++,还是工作需要
老实说,语言无优略,各有长处而已
就像throws Exception这样的处理机制,在C++里被人大加诟病,认为严重影响程序效率。但很明显,java需要的不是效率,作为服务器端的代码,它最重要的就是
稳定性和对各种不同错误的处理机制,这是,异常机制就比较有效了
还有就是io类,io类和简单的二进制流不同,java需要对其进行序列化,以便以后
能够还原为对象,rmi得很大一部分都是有对象的序列化而来,这个是java的一个很大的特性来着,和c++的二进制流有很大的差别,
|
C++与Java有很深的渊源,自然就决定了他们之间的很微妙的关系:
Java本身是从C++的基础上创造出来的,造成了它的语法与C++基本相同。
C++是功能最丰富,最优秀的语言之一,没人可以代替她的优秀,但是C++太复杂了,很少有人能完全理解她的内涵。
Java是专为应用而生的语言,它更注重应用的简便性。为了安全放弃了指针(对用户而言,其实Java内部实现上全是指针),为了跨平台放弃了系统调用,为了方便内存管理而放弃了效率,一切的一切都是为了Java最初的目标,事实证明,Java是明智的,Java自己证明了它真的很优秀。
Java为了方便应用提供了大量的现成的类库,你只需要灵活的组织运用这些类库,就可以写出灵活方便的程序。这样你就可以把重点放在项目模块的组织上,而不是单纯的考虑代码的技术实现,java的优秀,你会明白。买本Java类库参考书,会让你感觉舒服点。
Java和C++分工不同,却同样优秀,你会喜欢他的。
Java本身是从C++的基础上创造出来的,造成了它的语法与C++基本相同。
C++是功能最丰富,最优秀的语言之一,没人可以代替她的优秀,但是C++太复杂了,很少有人能完全理解她的内涵。
Java是专为应用而生的语言,它更注重应用的简便性。为了安全放弃了指针(对用户而言,其实Java内部实现上全是指针),为了跨平台放弃了系统调用,为了方便内存管理而放弃了效率,一切的一切都是为了Java最初的目标,事实证明,Java是明智的,Java自己证明了它真的很优秀。
Java为了方便应用提供了大量的现成的类库,你只需要灵活的组织运用这些类库,就可以写出灵活方便的程序。这样你就可以把重点放在项目模块的组织上,而不是单纯的考虑代码的技术实现,java的优秀,你会明白。买本Java类库参考书,会让你感觉舒服点。
Java和C++分工不同,却同样优秀,你会喜欢他的。
|
自由度的过分强大往往会带来:学习上的难度增加,开发项目的时间加长,程序的安全性和稳定性的降低,代码的可读性、可复用性和可维护性的降低。Java是从C++发展而来的,克服了C++的许多不符合软件产业发展趋势的缺点。
|
同意楼上的~~~~
|
wang_zheng_wz(阿征) 实在说得精彩!!!
|
我也同意“语言无优劣”
但我用了java后就不想用c系列了
|
mark
|
感觉java在安全性方面比C/C++做的好多了,用起来舒服多了,C/C++出个内存错误也许查上好多天都查不出来
|
你用C++多长时间?用java呢?
时间不能解决一切问题,但能解决一些问题。
语言都是各有所长的。
时间不能解决一切问题,但能解决一些问题。
语言都是各有所长的。
|
我也同意语言不分优劣,用的好就是好语言。
|
简单就是美。
|
易于使用,便于驾驭,
才是一们好语言。
因为语言毕竟是工具,
而不是炫耀本领的高深莫测的东西。
才是一们好语言。
因为语言毕竟是工具,
而不是炫耀本领的高深莫测的东西。
|
其实某些成天嚷嚷C++灵活啦,强大啦的人,还真不见得本领有多高。
真拉出来溜一溜,怕C++水平还不如俺这三四年没碰C++的乡巴佬呢。
也就是看了几本老外写的普及读物:
什么D&E啦, Effective C++啦,
于是就捧着"大师"们的臭脚到处炫耀罢了。
蒙了别人不打紧,一不留神还把自己也给蒙了,还真以为自己会使用(只是“使用”而已)C++这么一们语言并看了几本书有什么了不起。
好像一使“高深”的C++, 1+1就不等于2了。
一时有感而发,不是针对楼主。莫怪。
真拉出来溜一溜,怕C++水平还不如俺这三四年没碰C++的乡巴佬呢。
也就是看了几本老外写的普及读物:
什么D&E啦, Effective C++啦,
于是就捧着"大师"们的臭脚到处炫耀罢了。
蒙了别人不打紧,一不留神还把自己也给蒙了,还真以为自己会使用(只是“使用”而已)C++这么一们语言并看了几本书有什么了不起。
好像一使“高深”的C++, 1+1就不等于2了。
一时有感而发,不是针对楼主。莫怪。
|
我觉得JAVA比较好(本人是用JAVA的),但是如果有时间和机会我还是想用C++,
因为我不是很信任SUN公司,对JAVA以后能不能斗过C#没有信心,还是C++能给人安全感
因为我不是很信任SUN公司,对JAVA以后能不能斗过C#没有信心,还是C++能给人安全感
|
呵呵,不用杞人忧天了。SUN如果斗不过微软也不是一两天就能见的的事。
|
俺是C++的爱好者,也是因为项目需要开始学习Java,才用了一个星期。不过,感觉相当不错,尤其是Java本身带的强大的类库。以前解决问题,总是再想自己搞定,现在是先看看Java的类库里有什么,C++虽然也有个库,论规模和功能,比Java的要差上许多。
楼主说的io问题,个人感觉挺有意思的,把一大堆东西串连起来实现一个强大的功能不是很爽吗?至于你说,自己来做,那么要类库不是没用了吗?有了好东西,咱就要用。我想你功力再深,也不会不理会现有的东西,什么都用机器码自己搞定吧!:)
=============
原来一切就是这么简单
楼主说的io问题,个人感觉挺有意思的,把一大堆东西串连起来实现一个强大的功能不是很爽吗?至于你说,自己来做,那么要类库不是没用了吗?有了好东西,咱就要用。我想你功力再深,也不会不理会现有的东西,什么都用机器码自己搞定吧!:)
=============
原来一切就是这么简单