百科问答小站 logo
百科问答小站 font logo



Java 的开发效率究竟比 C++ 高在哪里? 第1页

  

user avatar   ze.ran 网友的相关建议: 
      

C++是面向内存编程,Java是面向数据结构编程。

C++里,内存是裸露的,可以拿到地址,随意徜徉,增了删了,没人拦你,等到跑的时候再崩给你看。

Java里,能操作的都是设计好的数据结构,array有长度,String不可变,每一个都是安全的,在内存和程序员之间,隔着JVM,像是包住了边边角角的房间,随便小孩折腾,不会受伤。

Java程序员是孩子,嚷嚷要这个那个,玩完了就丢,JVM是家长,买买买,还要负责收拾。有的孩子熊点,屋子很乱,收拾起来费劲,但房子还在。

C++程序员是神,操纵着江河湖海,日月星辰,但能力越大,责任越大,万一新来的神比较愣,手一滑,宇宙就退出了。

新手写C++,像是抱着一捆指针,在浩瀚的内存中裸奔。跑着跑着,有的针掉了,不知踪影,内存就泄露了;跑着跑着,突然被人逮住,按在地上打的error纷飞,内存就越界了;终于到了,舒了口气,把针插在脚下,念出咒语,

“delete”

系统就崩溃了。


user avatar   david-dong-20 网友的相关建议: 
      

我个人的感受,主要在如下几点:

1. java的限制多,实现的方式比较少,不需要考虑很多问题。

2. 垃圾回收,不需要考虑很多内存管理的问题。

3. 语法啰嗦,命名完整,基本上看代码就能看懂在做什么。

4. 工程保护多,新手也不容易对代码造成什么大的破坏。

其实我对c++的了解本身比较少,但用java的过程中觉得它的库和框架很全,生态完整。用maven之类的工具集成很方便,测试也很方便。

java的优势基本是在工程层面的,对新手很友好,不是特别懂也能写代码并且不容易出大错,然后在此基础上提供了很多工程支持,让它可以适应大型软件。C++对新生很不友好的,很容易会写出有很大问题的代码。




  

相关话题

  C# 和 Java 哪个更像 C++? 
  如何看待一些大学生说 3 天学会了 Java? 
  最上层的语言和最底层的语言都无需设计模式? 
  为什么大多数的 C++ 的开源库都喜欢自己实现 string? 
  如何用最简单的方式解释依赖注入?依赖注入是如何实现解耦的? 
  为什么C++的 extern "C" 里面可以使用C里面不存在的STL和引用&等C++才有的特性 ? 
  既然有 HTTP 请求,为什么还要用 RPC 调用? 
  各位大佬都是怎么样学习C++的?能分享一下您的学习过程吗? 
  c#多播或event监听太多后gc和时间都会爆炸,那么比起List<Action>存在的意义是什么? 
  在c++代码中使用const关键字是不是自找麻烦? 

前一个讨论
你的二十八岁,你们都拥有什么?
下一个讨论
英国很多民众为什么冒风险也要脱离欧盟?





© 2025-04-04 - tinynew.org. All Rights Reserved.
© 2025-04-04 - tinynew.org. 保留所有权利