当前位置: 代码迷 >> Java面试 >> 念和大家讨论下java和c++的差别
  详细解决方案

念和大家讨论下java和c++的差别

热度:61   发布时间:2016-04-17 00:11:56.0
想和大家讨论下java和c++的差别
本帖最后由 NeetSonic 于 2015-06-20 03:17:52 编辑
本人目前还是就读本科生一枚,接触软件行业还不太久,所以以下说法可能会存在很多问题,望体谅,欢迎批评指正。

首先声明我看见过很多c++党和java党对喷的事件,我们这里并不讨论语言的优劣,所以我不希望这种事出现。

是这样的,我最初是通过学c++入门编程这一行的(确切的说是微软风格化的VC++),所以对C++的理解较深入一些,一直以来并没有怎么系统仔细的研究过java。
但随着不断的做项目,我渐渐感觉到使用c++的频度下降了 ,使用java的频度一直在上升!其实我一直不明白,为什么java有这么多强大的开源项目(或者换个角度说,为什么这么多人愿意选择java来开发这些强大的工具),比如我们常用的apache基金会旗下的各种强大工具,比如搜索引擎开发框架lucene等。
最近想找一些好的爬虫工具学习下网络爬虫技术,找到了jsoup等,也是基于java开发的。于是我产生了一些错觉,感觉现在好像只有开发简单的桌面应用,才会去使用到C++乃至C#,然而面对一些涉及到网络,诸如http传输,搜索引擎,网络爬虫啥的,感觉网上搜索出来的现成工具包开发包都是以java偏多!
这里想说一下,这一切都很有可能是我见识太短浅而产生的错觉,若说错请指正。

其实我从实现的角度来分析吧,比如刚才说的网络爬虫开发包啥的,要想做出它,首先得跟网卡打交道吧,于是就得跟操作系统打交道吧,然而现在大部分人还是在用微软的windows系统,虽然内核基本是C写的,但毕竟是微软的东西,肯定有很多VC++的成分在里面吧(这个只是我猜测的,可能并不是这样)于是我觉得既然要和windows系统打交道,怎么样使用vc++会比java更方便点吧(虽然最终都是落实到机器代码上)。你看微软在自己的操作系统下用vc++,在VS的环境下可以使用预编译头等东西来提高速度,而eclipse我们却常责怪它的即时编译导致整个IDE很卡……所以我才会有这样的猜测,虽然可能是无凭无据的……
总之还是觉得,基于c++的开源强大的工具包并不多 ,而且就算有,好像也都是微软自己在自己的操作系统基础上给出的。不知道些是否和微软操作系统非开源有关系(毕竟开发者看不到实现细节)……

哎……其实是晚上睡不着想瞎扯点蛋啦……
但是真心希望有前辈们能稍微谈谈自己的见解,也让我对编程语言有更多的认识,衷心感谢~
------解决思路----------------------
由于语言的复杂性,用C++实现相同的功能比Java费心很多,不能更专心的处理业务逻辑,所以能用Java的就用Java
------解决思路----------------------
都是面向對象的,java什麼都能做什麼都不精,庫函數全,上手簡單,順便可以學了安卓。。c++接觸到底層 會玩的用的很爽。畢竟比java早問世了那麼多年了呀,大神們很多。。。。
大學里老師肯定說過學java或者c++就行了,轉另一種技術會很簡單。。差不多了。。。
問題來了。。為什麼不學php呢 wwwwww
------解决思路----------------------
C++的库其实很多,但没集成导致感觉没有Java多。而且网络开发本来就不是C++强项,虽然能做但不如Java  Python什么的方便。就像勺子虽然能吃面条,但是一般人还是喜欢用筷子。
  相关解决方案