Either you fuck the life or the life fucks you.

转载自 quora

大致翻译一下,不喜勿喷,谢谢支持!以下是内容:


I have used each of them for 15-20+ years. There is no best. They have different strengths and weaknesses.

这些我都用了15到20多年,没有最好的,只是各自有各自的优缺点。

  • C and C++ require a lot of discipline because you have to do memory management yourself.

    C和C++需要编程人员有很好的自制力,因为它们需要我们自己进行内存管理。
  • C++ is extremely powerful but also very complex.

    C++非常的强大,但是很复杂。
  • C and C++ are "dangerous" because, if you are not careful, your program can access and modify data that it is not supposed to touch.

    C和C++很“危险”,因为一不小心,你的程序就会修改你不希望被修改的数据。
  • Python is elegant and designed to be easy to use and read. It has the least distractions when it comes to syntax.

    Python很优雅,并且易用易读,不用为语法的事情烦心。
  • The syntax of C, C++ and Java look somewhat similar. Python looks different, it uses indentation instead of {} to group code.

    C C++和Java看起来类似,但是python却不同,因为python使用缩进而不是{}
  • Python comes with "batteries includes", that means it has a lot of functionality build-in in the standard library.

    python内置电池,也就是说在python的标准库中有很多的内置函数。
  • In Python there is 'one way to solve a problem'. On the other end, in C++ there are way more ways to solve the same problem. This added choice can distract you form solving the problem.

    解决问题,python只有一种方法,但是C++会有多种方法,多的方法只会干扰你解决问题
  • Java has the best IDE support (e.g. eclipse or IntelliJ)

    Java有最好的IDE支持(例如:eclipse或者IntelliJ)
  • C and C++ are also statically typed, but the preprocessor can add a level of complexity that can make it difficult to be sure what actually happens.

    C与C++是静态类语言,预处理器会增加程序的复杂程度。
  • In terms of speed C/C++ are fastest, but for most problems Java is very close in speed. Python can be slow, but if needed critical parts can be written in C. On modern execution speed is rarely the limit - cache behaviour, memory and disc access are the limits.

    总的来说,C与C++是最快的,但对大多数问题来说,Java也差不离。python相对就慢些,但如果需要有些重要的部分可以用C进行编写。现在执行速度不是什么限制,-缓存,内存 硬盘才是限制。

  1. If you want to learn programming, I would learn python first, then Java, then C and finally C++.

    如果你想学习编程,我会首先学习python,然后Java,C,最后是C++。

  2. I personally would not recommend C++ because of its complexity. However, if your are disciplined and have a strict set of rules for a project, C++ can be fantastic.

    就我个人而言,因为C++的复杂性,我不会推荐它,如果你非常有纪律性,并且很严格,那么C++可以带你飞。

  3. I would use C only for low level stuff, like writing device drivers.

    我会用C来写底层的东西,比如设备的驱动。

  4. Java is good for large projects, provided you write good APIs and you are carefully modularizing your software.

    Java对于大项目来说的是极好的,有很好的APIs,你要很小心的模块化你的软件。(将就着看看,如果有不同意见可以留言。)

  5. Python is good for small projects. If the team and the software gets bigger, it can become hard to maintain unless you have a very good test coverage.

    小项目使用python很棒,如果团队与软件变得庞大,那就会很难维护了,除非有很好的测试覆盖率。

Which language is best, C, C++, Python or Java?什么编程语言最好的更多相关文章

  1. Golang、Php、Python、Java基于Thrift0.9.1实现跨语言调用

    目录: 一.什么是Thrift? 1) Thrift内部框架一瞥 2) 支持的数据传输格式.数据传输方式和服务模型 3) Thrift IDL 二.Thrift的官方网站在哪里? 三.在哪里下载?需要 ...

  2. 将来会是Python、Java、Golang三足鼎立的局面吗?

    甲:听说最近java跌落神坛,python称霸武林了,你知道吗? 乙:不是吧,我前几天看python怎么还是第三? 丙:你们都在扯蛋,python在2018年就已经是最好的语言了! 乙:不可能吧? 甲 ...

  3. 『Python基础-1 』 编程语言Python的基础背景知识

    #『Python基础-1 』 编程语言Python的基础背景知识 目录: 1.编程语言 1.1 什么是编程语言 1.2 编程语言的种类 1.3 常见的编程语言 1.4 编译型语言和解释型语言的对比 2 ...

  4. python和java,php,c,c#,c++的对比

    1.C语言,它既有高级语言的特点,又具有汇编语言的特点,它是结构式语言.C语言应用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素.C++在这方面做了改进,在保 ...

  5. Python和Java、PHP、C、C#、C++等其他语言的对比?

    1111 1.C语言,它既有高级语言的特点,又具有汇编语言的特点,它是结构式语言.C语言应用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素.C++在这方面做了 ...

  6. paip.判断文件是否存在uapi python php java c#

    paip.判断文件是否存在uapi python php java c# ==========uapi file_exists exists() 面向对象风格:  File.Exists 作者: 老哇 ...

  7. paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结

    paip.web数据绑定 下拉框的api设计 选择框 uapi  python .net java swing jsf总结 ====总结: 数据绑定下拉框,Uapi 1.最好的是默认绑定..Map(k ...

  8. MongoDB的账户与权限管理及在Python与Java中的登陆

    本文主要介绍了MongoDB的账户新建,权限管理(简单的),以及在Python,Java和默认客户端中的登陆. 默认的MongoDB是没有账户权限管理的,也就是说,不需要密码即可登陆,即可拥有读写的权 ...

  9. [译]Python作为一种编程语言有多强大?

    Quora上有个问题:Python作为一种编程语言有多强大? 以下是Patrycja Okowicka的回答 说实话,Python是一门强大的语言,几乎所有东西都可以用Python创建!这就是为什么它 ...

随机推荐

  1. LATEX数学公式基本语法

    TEX 是Donald E. Knuth 编写的一个以排版文章及数学公式为目标的计算机程序.TEX的版本号不断趋近于π,现在为3.141592.由Pascal 语言写成,特点: 免费.输出质量高.擅长 ...

  2. AngularJS之指令

    紧接上篇博客“初探AngularJS” 一.前言 在AngularJS中指令尤为重要且内容庞多,固单独提炼出来,梳理一番.如有错误,请不吝讲解. 好了,言归正传,让我们一起走进Angular指令的世界 ...

  3. 聊聊excel生成图片的几种方式

    目录     I:需求.  II:实现思路.     III:实现方式.     IV:优缺点分析.     V:结论.     VI:wps安装与配置. 正文 1.需求:把excel生成等比的图片. ...

  4. [WinForm]WinForm跨线程UI操作常用控件类大全

    前言 在C#开发的WinForm窗体程序开发的时候,经常会使用多线程处理一些比较耗时之类的操作.不过会有一个问题:就是涉及到跨线程操作UI元素. 相信才开始接触的人一定会遇上这个问题. 为了解决这个问 ...

  5. 浅谈Static关键字

    1.使用static关键字声明的属性为全局属性 未使用static关键字指定city之前,如果需要将Tom,Jack,Mary三人的城市均改成Beijing,需要再次声明三次对象的city为Beiji ...

  6. 同步辅助类CountDownLatch用法

    CountDownLatch是一个同步辅助类,犹如倒计时计数器,创建对象时通过构造方法设置初始值,调用CountDownLatch对象的await()方法则使当前线程处于等待状态,调用countDow ...

  7. offset、client、scroll开头的属性归纳总结

    HTML元素有几个offset.client.scroll开头的属性,总是让人摸不着头脑.在书中看到记下来,分享给需要的小伙伴.主要是以下几个属性: 第一组:offsetWidth,offsetHei ...

  8. 《连载 | 物联网框架ServerSuperIO教程》2.服务实例的配置参数说明

    1.C#跨平台物联网通讯框架ServerSuperIO(SSIO)介绍  <连载 | 物联网框架ServerSuperIO教程>1.4种通讯模式机制 一.综述 SuperIO(SIO)定位 ...

  9. [连载]《C#通讯(串口和网络)框架的设计与实现》- 7.外部接口的设计

    目       录 第七章           外部接口的设计... 2 7.1           插件接口... 2 7.2           图形显示接口... 3 7.3           ...

  10. AlloyRenderingEngine燃烧的进度条

    写在前面 Github: https://github.com/AlloyTeam/AlloyGameEngine HTML 5新增了progress标签,那么再去使用AlloyRenderingEn ...