http://blog.segmentfault.com/hlcfan/1190000000361407

http://www.tuicool.com/articles/fqAzqi

Java 和 Python 是当下两种巨火的巨强大的编程语言,对于刚开始学习编程的同学来说,很是迷惑,最经常问得问题就是,我应该学 Java 还是 Python,是不是 Python 容易学,或者应该给初学者推荐什么编程语言等等这样的问题。因为我是个 Java 程序员,我的意见显然是有偏见的,我会建议你先学 Java,然后再学 Python,但是如果你问一个 Python 程序员,你可能会得到相反的答案。我已经非常详细地陈述了我的原因为什么 Java 是最好的编程语言 和为什么一个程序员应该学习 Java。其中一个非常重要的原因你在这篇博客能看到的是,可以帮助你指明你的职业生涯的强大的 Java 社区。你可以问一些新手问题,比如“怎么设置 PATH 和 classpath”,再到一些高级的问题,关于在 Eclipse 中调试 Java 程序,无论哪种问题,社区中总会有人准备着回答你的问题帮助你。这就是为什么 StackOverFlow 上全是 Java 问题。另外,Python 已经不再是乳臭未干的黄毛小子了,它已经成长而且和主流的编程语言,像 Java,C++ 有了一拼。当我开始接触 Python 的时候,我觉得它是一门脚本语言,但是后来发现这是误解。你也可以在 Python 中进行面向对象的编程。对于初学者,我经常建议选择一种具有吸引力的,更加简单强大的,同时有着强大的社区支持的语言去学习。现在 Java 和 Python 都满足刚才说的条件,甚至你做了一些很棒的分析比较之后,依然很难得出应该学习哪个语言。庆幸的是,我们有信息图形,可以指出 Python 和 Java 之间一些重要的不同点,我确定看过这个图标之后,你可以作出决定那个是正确的入门语言!

信息图表:Python 和 Java 的不同点


如果图很慢的话,请看: 又拍云上的图 
图标源: http://blogs.perceptionsystem.com

从这个图表,你可以很容易看出来 Java 比 Python 罗嗦。在 Java 中读一个文件要写10行代码,而在 Python 中只要两行。这一点是 Python 优势,因为新手程序员绝对喜欢编写很少的代码,第二点是关于静态变量,动态变量。我的观点是,对新手来说,你需要强类型的语言和严谨的编译器来检测犯二的代码。在 Java 中,你不会看到,在一个字符串变量中接着存整型变量。所以,就这点来说,我投票给 Java。执行速度,这是企业级应用的命脉,你可以看到 Java 比 Python 快,但是要记住,你需要编译才能运行 Java 程序,而 Python 程序不要编译可以直接运行。Python 控制台可以直接解释 python 命令,这对于新手来说意味着更加简单!所以现在 Python 和 Java 2:2,扯平了。你还可以看看 Java 中 hello world 比 Python 需要更多行代码。剩下的栗子 :D,你可以自己分析,但是最后证明俩能力是一样的,没有谁差。作为一个 Java 开发者,我可以从我个人的经验来说,学 Java 然后把它当成职业生涯的编程语言,你不会后悔。当然,你可以在任何时候学习 Python,而且对于写一些小的工具集很有用,但是 Java 终究是 Java。

source: http://www.tuicool.com/articles/JbyEnq

Java VS Python 应该先学哪个?的更多相关文章

  1. 一起学Hadoop——使用IDEA编写第一个MapReduce程序(Java和Python)

    上一篇我们学习了MapReduce的原理,今天我们使用代码来加深对MapReduce原理的理解. wordcount是Hadoop入门的经典例子,我们也不能免俗,也使用这个例子作为学习Hadoop的第 ...

  2. 关于Java、Python、Go编程思想的不同

    Go学习笔记 - 关于Java.Python.Go编程思想的不同 看了两周七牛团队翻译的<Go语言程序设计>,基本上领略到了Go语言的魅力.学习一个语言,语法什么的任何人都是很容易学会,难 ...

  3. 算法:时间复杂度+二分查找法(Java/Go/Python)实现

    导读 曾几何时学好数据结构与算法是我们从事计算机相关工作的基本前提,然而现在很多程序员从事的工作都是在用高级程序设计语言(如Java)开发业务代码,久而久之,对于数据结构和算法就变得有些陌生了,由于长 ...

  4. Java or Python?测试开发工程师如何选择合适的编程语言?

    很多测试开发工程师尤其是刚入行的同学对编程语言和技术栈选择问题特别关注,毕竟掌握一门编程语言要花不少时间成本,也直接关系到未来的面试和就业(不同企业/项目对技术栈要求也不一样),根据自身情况做一个相对 ...

  5. C#、C++、Java、Python 选择哪个好?

    C#.C++.Java.Python 选择哪个好? 2019年03月06日 16:54:34 编程小火车 阅读数:214   首先排除Python,光动态语言一个理由,就已经万劫不复了.无论有多少所谓 ...

  6. 对比java和python对比

    对比java和python 对比java和python 2011年04月18日 1.难易度而言.python远远简单于java. 2.开发速度.Python远优于java 3.运行速度.java远优于 ...

  7. 6月份最新语言排行:Java,Python我更看好谁?

    文章首发于终端研发部,转载,请标明原文链接 今天的主题是:探讨一下6月份语言排行还有我的最新展望! 最近,编程语言排行榜前几天发布更新了,在最新的TIOBE编程语言排行榜中,Java依旧位居第一,但前 ...

  8. 想转行做程序员,是学习JAVA还是Python?哪个更好?

    请大家务必审题,转行做程序员,是程序员,并非数据分析也不是软件测试. 首先声明:这是一篇容易引起撕逼的问答,为了祖国和谐,人民安康,请各位看官尽量理性讨论. 同时,这篇文章是面向一些初入行的朋友进行一 ...

  9. 从java到python

    从java到python 从事java开发主要是web方向,这个方向已经相当成熟,基本你想开发什么样的app,总能百度出来相关的项目或者github中搜索到,你需要做的就是掌握调试的技巧,基本你能想到 ...

随机推荐

  1. Rsync的配置与使用

    一.介绍 (不想看直接可以跳过) Rsync是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件.Rsync本来是用以取代rcp的一个工具,它当前由 rsync.samba.org维护 ...

  2. 86标准SQL与92标准SQL用法区别

    86标准SQL与92标准SQL用法区别 在开发Oracle 9i时, 数据库还时间了ANSL SQL/92标准的链接语法, 在书中建议在使用Oracle 9i及更高版本时,应该使用SQL/92标准的语 ...

  3. ASP.NET Core会议管理平台实战_4、参数校验、操作结果封装,注册参数配置

    登陆和注册之前,需要封装 前端参数的校验,ajax的封装 参数校验,创建公共的类 ,它是一个静态类 这样在调用的时候,直接一句话就可以了,这就是封装的好处 空字符串的校验 调用方式 EF的源码里面有这 ...

  4. 26.OpenIdConnect获取用户信息的两种方式

    openId在OAuth基础之上,在下面这红框内拿到Authorization Code之后还可以返回IdToken. IdToken和AccessToken一起返回.IdToken就会包括了用户的信 ...

  5. Windows对象、句柄与MFC对象

    windowsmfc编程c 目录(?)[-] Windows对象句柄与MFC对象 windows对象 句柄 mfc对象 杂谈 Windows对象.句柄与MFC对象 (2009-04-28 22:11: ...

  6. Django中ORM外键和表的关系(Django编程-4)

    外键 在MySQL中,表有两种引擎,一种是InnoDB,另外一种是myisam.如果使用的是InnoDB引擎,是支持外键约束的.外键的存在使得ORM框架在处理表关系的时候异常的强大.因此这里我们首先来 ...

  7. Mac安装python细节

    前言 之前在windows平台上安装python直接用Anaconda,优点是所有的科学计算的库都整合进去了,安装方便.在Mac系统下,当然也可以直接安装Anaconda,但是考虑到Mac会自带pyt ...

  8. Weekly Contest 112

    945. Minimum Increment to Make Array Unique Given an array of integers A, a move consists of choosin ...

  9. 获取URL地址栏参数(正则表达式)

    ]] = isEncode ? decodeURIComponent(arg[2]) : arg[2]; }); return obj;}

  10. com.android.builder.testing.api.DeviceException: com.android.ddmlib.InstallException: INSTALL_FAILED_ABORTED: User rejected permissions

    原因是连接了两个设备,所以无法启动,关掉一个即可