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. MemoryStream转string

    MemoryStream rtfTx = new MemoryStream(); var bs = rtfTx.ToArray(); string s = Encoding.UTF8.GetStrin ...

  2. 《Java多线程编程核心技术》读后感(二)

    方法内的变量为线程安全 package Second; public class HasSelfPrivateNum { public void addI(String username) { try ...

  3. Ubuntu下CodeBlocks更改调试终端

    Ubuntu下CodeBlocks更改调试终端   Ubuntu下的CodeBlocks自带的调试终端xterm不能进行复制粘贴操作,更换调试终端就可以解决了,就是把ubuntu下的gnome-ter ...

  4. SharePoint 2013 set site mailbox

    Automating Site Mailboxes in SharePoint 2013 and Exchange 2013 One of the completely new features to ...

  5. Linear Algebra - Matrix

    1. 矩阵 定义:有 \(m*n\) 个数 \(a_{ij}(i=1,2,\cdots,m; j=1,2,\cdots,n)\) 排成的 \(m\) 行 \(n\) 列的数表 \[ \begin{Bm ...

  6. 特性attribute,声明和使用attribute,应用attribute,AOP面向切面,多种方式实现AOP

    1 特性attribute,和注释有什么区别2 声明和使用attribute3 应用attribute4 AOP面向切面5 多种方式实现AOP ---------------------------- ...

  7. 原生js实现一个侧滑删除取消组件(item slide)

    组件,本质上是解决某个问题封装的类,在此记录原生js实现侧滑删除 先上效果图 实现思路 1. 确定渲染的数据结构 2. 思考划分布局,总的有两个主要的模块:内容区域和按钮区域 2.1 内容区域保持宽度 ...

  8. AI决策算法 之 GOAP (三)

    源码地址:http://pan.baidu.com/s/1dFwzmfB 这篇我们使用上篇文章写的GOAP框架来完成一个实例: 实例内容: AI有10HP, 需要去站岗,站岗完成扣5HP 当HP< ...

  9. HDU5340 Three Palindromes

    Three Palindromes Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others ...

  10. 剑指Offer的学习笔记(C#篇)-- 斐波那契数列

    题目:大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). 一 . 理解概念 斐波那契数列概念:斐波那契数列(Fibonacci sequence), ...