[译]Java和Python——应该先学习哪种编程语言

news/2024/7/3 12:51:33

Java和Python是目前两种非常流行且功能强大的编程语言。初级程序员常常感到困惑,最常被问到的问题就是应该学习Java还是Python,Python是不是容易上手,应该推荐给初学者学习什么样的编程语言等等。首先因为我是一个Java开发者,所以我会有偏见,我会建议你用Java入门,然后学习Python,但如果你向一个Python开发者问这个问题,你可能会得到相反的答案。我有很多很好的理由证明为什么一个程序员应该学习Java。最重要的一个原因,你会发现其实博客就是一个强大的Java社区,它能够帮助你更好地发展你的Java事业。你可以问一些初级程序员,在用Eclipse调试Java程序时遇到的无论是简单的还是高级的问题,在Java社区总会有一些人会时刻准备着帮你回答。这便是为什么Stack Overflow上全是Java问题的原因。顺便一提Python不再是程序语言界的黄毛丫头了,它已经成长起来并可以和像Java、C++一样的主流语言进行竞争。

当我第一次遇到Python,我认为它是一种脚本语言,但这样说是很肤浅的。你也可以用它来进行面向对象编程。从初学者的角度出发,我总是建议选择一门简单的语言学习,因为这能很好地吸引你,同时能有强大的社区支持你的学习,现在Java和Python都符合这一特点,直到你做一些很棒的比较分析之前,你可以先不决定学习Java还是Python。值得庆幸的是,我们有一个图表,它说明了Python和Java的一些重要的区别,我确信当你仔细看完这个图表之后,你将会知道哪一门编程语言更适合你学习。

Python 和 Java 之间的区别 - 图表

Java Vs Python

作为两种不同的编程语言,Java和Python都是现在开发者非常有用的工具。在学习任何编程语言之前,你必须知道它们之间的区别。由于众多的决定性因素,简单的说Java相比Python成效不足是不严谨的。让我们通过这个图表认识差异。在这个图表中,你可以很容易地看到,Java与Python相比非常冗长。Java读取文件需要写10行代码,而Python只需要2行代码。这一点倾向了Python,因为初级程序员当然喜欢写更少的代码。第二点是关于静态和动态类型变量,在我看来,初学者需要一个强类型的语言和严格的编译器来检测初学者犯的低级错误,你可以看到Java不能在一个字符串变量中存储整数值。所以在这一点上,我把票投给了Java。

对于速度,这是企业级应用开发的关键,你可以看到,Java的执行速度比Python快,但请记住,Java需要编译然后运行,而Python不需要被编译可以直接运行。Python控制台可以直接解释成Python命令,这意味着对程序员来说更为简单。所以现在Python和Java的比分都是2比2。你同时可以看到Hello World在Java中比Python需要更多行的代码。剩下的例子你可以自己分析,但所有这些看来Java和Python的能力是相同的,没有一个会比另外一个差。作为一个Java开发人员,我可以说,以我个人的经验,你学习Java然后选择它成为你的职业是不会后悔的,当然你随时都可以学习Python然后用它来写一些实用工具,但Java终究是Java。

享受你的编程吧。

原文:http://javarevisited.blogspot...


http://www.niftyadmin.cn/n/2643651.html

相关文章

visual studio快捷键大全

ctrlk,c 注释选中行 ctrlk,u 取消对选中行的注释 CTRL SHIFT B:生成解决方案 CTRL F7 :生成编译 CTRL O :打开文件 CTRL SHIFT O:打开项目 CTRL SHIFT C:显示类视图窗口 F4 :显示属性窗口 SHI…

MySQL管理利器 MySQL Utilities 安装

#下载 [root166087 mysql]# wget #解压 [root166087 mysql]# tar xf mysql-utilities-1.5.6.tar.gz #安装 [root166087 mysql-utilities-1.5.6]# python setup.py install copying build/scripts-2.6/mysqlfailover -> /usr/bin copying build/scripts-2.6/mysqldbcompare…

openstack message queue

http://lynnkong.iteye.com/blog/1699299

Android数据库--Sqlcipher的使用(二)

1、使用Sqlcipher对数据库加密,并结合ORM框架LitePal进行使用。 2、对LitePal的使用我就不在讲解了,大家可以参考下面七篇博客: http://blog.csdn.net/guolin_blog/article/details/38461239 http://blog.csdn.net/guolin_blog/article/detai…

8天玩转并行开发——第四天 同步机制(上)

在并行计算中,不可避免的会碰到多个任务共享变量,实例,集合。虽然task自带了两个方法:task.ContinueWith()和Task.Factory .ContinueWhenAll()来实现任务串行化,但是这些简单的方法远远不能满足我们实际的开发需要&…

修改远程登录端口

1.打开注册表之后,按顺序点击[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control \Terminal Server\Wds\rdpwd\Tds\tcp],然后看到右侧的PortNumber,右击点击修改。这里注意要将基数选项改为十进制 2.打开[HKEY_LOCAL_MACHINE\SYSTEM\Curr…

redis学习#随便瞎玩的收获

2019独角兽企业重金招聘Python工程师标准>>> 2015年11月26日redis windows 下学习#乱玩心得(第一次写博客写的差别介意) 平常习惯用onenote 博文应该都是从里面翻出来的。 redis-2.4.5-win32-win64 这是我用的redis 有32位和64位的解压就能用,资源网上一…

Linux下拆分大文件

2019独角兽企业重金招聘Python工程师标准>>> linux split 命令 功能说明&#xff1a;切割文件。 语  法&#xff1a;split [--help][--version][-<行数>][-b <字节>][-C <字节>][-l <行数>][要切割的文件][输出文件名] 补充说明&#xff…