你的位置:首页 > 软件开发 > Java > Java、C和C++谁的发展空间大?

Java、C和C++谁的发展空间大?

发布时间:2012-03-10 15:00:08
Java、C和C++谁的发展空间大?http://news.looedu.com/233/13/13011.shtml阅读提示: 目前流行的,除了Java和C/C++,就有PHP、Python、Perl、Ruby、Javascript、Unix Shell、Basic、Pascal等。但对于现在而言,哪一个就业机会更大一些?对于未来而言,哪一个发展更广阔一些呢?  计算机语言林林总总非常之多,目前 ...

 

Java、C和C++谁的发展空间大?

http://news.looedu.com/233/13/13011.shtml

阅读提示:

目前流行的,除了Java和C/C++,就有PHP、Python、Perl、Ruby、Javascript、Unix Shell、Basic、Pascal等。但对于现在而言,哪一个就业机会更大一些?对于未来而言,哪一个发展更广阔一些呢?

  计算机语言林林总总非常之多,目前流行的,除了Java和C/C++,就有PHP、Python、Perl、Ruby、java script、Unix Shell、Basic、Pascal等。但对于现在而言,哪一个就业机会更大一些?对于未来而言,哪一个发展更广阔一些呢?

   TIOBE世界编程语言排行榜在一定程度上体现了编程语言在当前的流行趋势。这个排行榜每个月更新一次,排行榜的数据取样来源于互联网上富有经验的程序员、商业应用、著名的搜索引擎(诸如谷歌、MSN、雅虎)的关键字排名、Alexa上的排名等。

   日前,国外某编程社区给出了2008年8月份的编程语言排行榜。排名根据语言可用性、课程、第三方数据等来排定,Google、MSN和Yahoo等搜索引擎皆用来评定和评估这个排行榜。排行榜前20位如下:

 

Java、C和C++谁的发展空间大?

   C语言排名第二,然而比率比06年9月份下降了3.15%——这已经是个不小的数字了,下降的比率甚至高出Python3.025%的排位比率。从下面C语言的趋势图来看,C和C++正处在艰难的时刻,国内外相关媒体关于C衰落的消息也是一直不绝于耳。过去五年来,C的比率一直处于逐渐下降的趋势,在今年8月更是达到了自“成名”以来的史上最低值。

 

Java、C和C++谁的发展空间大?

 

  两种设计思路孰优孰劣呢?从趋势看,彼此都会存在很长时间,但究竟哪个的发展会更加广阔一些呢?先以各自的功能做一个分析吧。

   比较单一的功能:Java刚出来的时候,Sun的设计师就说Java就是要做到“一个操作,一个目的”,换句话说,一个函数一个结果;要达到这个结果,只有一个函数最简洁。对初学者,大大方便了记忆和使用。Java中去除了C++的友联函数(friend function)和多重集成(multi-inheritance),明确了接口(Interface),不得不佩服设计者的苦心。

   Java为了降低了使用门槛,简化了语言,限制了可能出错的功能,接管了最容易出错的内存处理。在高手看来是束手束脚,但它能让学徒中规中矩。Java的流行也标志了程序开发也从Craftmanship向标准化过度。

   比较平和的学习曲线:Java设计人的苦心得到的回报就是Java易学易用 ,设计优良的包(Package)初学者也不难掌握,一般有点基础的人员,一年后就能写出不错的程序了,更不用说有C经验的人了。更重要的是,Java新手写出的代码,可能有很多Bug,但不象C的那么可怕的,动不动就SEGV Error了。

   跨平台移植:从前开发软件都是计划在什么系统下运行,就在什么系统下开发。好处是培养了无数vi和emacs的高手,坏处是开发效率大大降低。很多人以为事先定下的部署平台很难更改。现实中,由于经济、政治和技术的原因,这经常发生。Java通过JRE提供了平台无关性,使得移植非常简单。很多人象我这样在Windows下编辑、编译、调试Java,最后部署到Linux或Solaris上。当然在Deploy的过程中会出现一些问题,无非是路径、分隔符、库函数链接之类的问题,都不难解决。如果是JRE的问题,那也不是你能解决的了。

 

  C(含C++)能干些什么。

   C什么都能干,它可能是到现在为止最全面的系统语言,从底层的系统程序到高端的行业应用都在C的“火力”范围内。目前,C主要用于开发设备驱动、操作系统;计算要求高的图形和图像处理软件;Windows下的小型商业软件;大型科学计算。可以这么说,不管哪类软件都有C的身影。

 

  正是因为C的无所不在,业界对其缺点了解越深。

   其中之一,操作性太过强大。听上去貌似是个优点,且由笔者慢慢说。打个比方:CS里的AK47价格低廉、火力凶猛、杀伤力巨大,是居家旅行之必备。但在新手用起来,就怎么也打不准。为什么?后座力大。俗话说人无完人,所有的工程人员要牢记一句话:永远没有完美的设计!这不是给你做借口的而是要你学会平衡和取舍。C中自由的指针操作在高手的手里妙笔生花;新手可就要熬夜对付Segmentation Fault了。C++提供的各种艰难的招式,对很多程序员是一种诱惑,谁不想练绝世武功呢?可又有多少人能练好?所以我们经常看到的是很多人在不该用的地方乱用啊!

   其二,较长的学习周期和陡峭的学习曲线。成为一个合格的C程序员需要投入很多时间,需要比较长时间的工作经验累计。不信可以去看看有关C的工作,哪个都是要求5年以上工作经验。谁都不敢要一个2-3年的,来了不是添乱嘛。

   其三,C程序员需要比较系统的计算机课程的学习,如操作系统、数据结构、体系结构。

   其四,不兼容的库使得程序移植非常困难。一个在Solaris上开发的程序,要移植到AIX可不是想当然的那么容易。

 

C/C++、VC MFC、CUDA、3D虚拟仿真一起QQ聊:64616914。QQ群194134342

 

海外公司注册、海外银行开户、跨境平台代入驻、VAT、EPR等知识和在线办理:https://www.xlkjsw.com

原标题:Java、C和C++谁的发展空间大?

关键词:JAVA

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。