Which language is best, C, C++, Python or Java?什么编程语言最好
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进行编写。现在执行速度不是什么限制,-缓存,内存 硬盘才是限制。
If you want to learn programming, I would learn python first, then Java, then C and finally C++.
如果你想学习编程,我会首先学习python,然后Java,C,最后是C++。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++可以带你飞。I would use C only for low level stuff, like writing device drivers.
我会用C来写底层的东西,比如设备的驱动。Java is good for large projects, provided you write good APIs and you are carefully modularizing your software.
Java对于大项目来说的是极好的,有很好的APIs,你要很小心的模块化你的软件。(将就着看看,如果有不同意见可以留言。)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?什么编程语言最好的更多相关文章
- Golang、Php、Python、Java基于Thrift0.9.1实现跨语言调用
目录: 一.什么是Thrift? 1) Thrift内部框架一瞥 2) 支持的数据传输格式.数据传输方式和服务模型 3) Thrift IDL 二.Thrift的官方网站在哪里? 三.在哪里下载?需要 ...
- 将来会是Python、Java、Golang三足鼎立的局面吗?
甲:听说最近java跌落神坛,python称霸武林了,你知道吗? 乙:不是吧,我前几天看python怎么还是第三? 丙:你们都在扯蛋,python在2018年就已经是最好的语言了! 乙:不可能吧? 甲 ...
- 『Python基础-1 』 编程语言Python的基础背景知识
#『Python基础-1 』 编程语言Python的基础背景知识 目录: 1.编程语言 1.1 什么是编程语言 1.2 编程语言的种类 1.3 常见的编程语言 1.4 编译型语言和解释型语言的对比 2 ...
- python和java,php,c,c#,c++的对比
1.C语言,它既有高级语言的特点,又具有汇编语言的特点,它是结构式语言.C语言应用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素.C++在这方面做了改进,在保 ...
- Python和Java、PHP、C、C#、C++等其他语言的对比?
1111 1.C语言,它既有高级语言的特点,又具有汇编语言的特点,它是结构式语言.C语言应用指针:可以直接进行靠近硬件的操作,但是C的指针操作不做保护,也给它带来了很多不安全的因素.C++在这方面做了 ...
- paip.判断文件是否存在uapi python php java c#
paip.判断文件是否存在uapi python php java c# ==========uapi file_exists exists() 面向对象风格: File.Exists 作者: 老哇 ...
- paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结
paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结 ====总结: 数据绑定下拉框,Uapi 1.最好的是默认绑定..Map(k ...
- MongoDB的账户与权限管理及在Python与Java中的登陆
本文主要介绍了MongoDB的账户新建,权限管理(简单的),以及在Python,Java和默认客户端中的登陆. 默认的MongoDB是没有账户权限管理的,也就是说,不需要密码即可登陆,即可拥有读写的权 ...
- [译]Python作为一种编程语言有多强大?
Quora上有个问题:Python作为一种编程语言有多强大? 以下是Patrycja Okowicka的回答 说实话,Python是一门强大的语言,几乎所有东西都可以用Python创建!这就是为什么它 ...
随机推荐
- Golang 生成随机数
package main import ( "fmt" "math/rand" "time" ) func main() { rand.Se ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(6)-Unity 依赖注入
系列目录 前言 为了符合后面更新后的重构系统,文章于2016-11-1日重写 本节重构一下代码,采用IOC控制反转,也就是依赖注入 您可以访问http://unity.codeplex.com/rel ...
- 聊聊ASP.NET Core默认提供的这个跨平台的服务器——KestrelServer
跨平台是ASP.NET Core一个显著的特性,而KestrelServer是目前微软推出了唯一一个能够真正跨平台的Server.KestrelServer利用一个名为KestrelEngine的网络 ...
- 从零开始编写自己的C#框架(14)——T4模板在逻辑层中的应用(三)
原本关于T4模板原想分5个章节详细解说的,不过因为最近比较忙,也不想将整个系列时间拉得太长,所以就将它们整合在一块了,可能会有很多细节没有讲到,希望大家自己对着代码与模板去研究. 本章代码量会比较大, ...
- Core Java 总结(字符和字符串类问题)
所有代码均在本地编译运行测试,环境为 Windows7 32位机器 + eclipse Mars.2 Release (4.5.2) 2016-10-17 整理 字符,字符串类问题 正则表达式问题 J ...
- 软件工程的引入:Scrum开发框架总结
俗话说,自己写的代码,6个月后也是别人的代码……复习!复习!复习!涉及的知识点如下: 软件工程概念 敏捷开发过程scrum 一.什么是软件工程?请用一句话描述. 软件工程是一门研究性的学科:它用工程化 ...
- NodeJs对Mysql封装
之前在学习NodeJs的时候,每次操作数据库都需要连接数据库然后开始写Sql操作,这样非常麻烦,然后自己对Mysql进行了封装,一共100多行代码. github地址: Mysql操作 我在里面对My ...
- Docker到底是什么?为什么它这么火!
转载来自:http://cloud.51cto.com/art/201410/453718.htm 摘要:Docker这种新的容器技术可谓热得发烫,因为有了它,人们就有可能让数量多得多的应用程序在同样 ...
- js正则表达式校验非负浮点数:^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0$
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- Java判断字符串是否是数值
判断一个字符串是否是数值,可以用正则表达式来判断.更简单的方法是把字符串转换成Float或者Double,然后捕捉NumberFormatException错误,如果有错误,就说明不是一个数值,如果没 ...