对这个问题先分别分析下Java和Python吧TIOBE指数

Java

根据TIOBE公司的数据,从2016年年初开始,Java一直处于滑坡

但与2017年5月的指数相比,Java已经上升了1.74%,仍然处于第1位,其评级为5.192%,不是很高。TIOBE2018年5月指数

虽然2017年斯坦福大学的入门计算机科学课程宣布放弃了Java,转而支持JavaScript。《斯坦福日报》援引计算机科学的荣誉教授、cs106课程的创始人埃里克·罗伯茨的话说,Java“显示了它的年龄”。尽管这种编程语言已经成为了15年来的贵宾,但罗伯茨认为,JavaScript是互联网最重要的编程语言。

但这并不意味着Java已成过去——大多数高级计算机科学课程仍在Java中。

Java有大量企业级的软件,所以大公司依赖Java是有原因的。未来几十年,Java开发人员的需求依旧会非常强劲。这不是最漂亮的语言,但它可靠、精心设计,而且安全,还有大量的框架和其他支持。在软件工程领域,这是一个稳定的职业选择。Java也是Android开发的首选语言。

更重要的是,Java是通向未来的桥梁。流行的基于Java的语言,如Groovy、Clojure、Jython和Scala都编译成Java编译的一样东西。开发人员可以尝试在其中一种新兴语言中编写代码,并保证当他们达到极限时(或者语言达到极限),他们可以安全地继续使用Java。

但Java也有一些缺点:需要运行环境、不适合开发桌面应用程序

与ASP一样,Java的一些优势正是它致命的问题所在。正是由于为了跨平台的功能,为了极度的伸缩能力,所以极大的增加了产品的复杂性。

它还需要硬盘空间来储存一系列的.java文件和.class文件,以及对应的版本文件。

Python

Python很容易想学习和上手,在近几年也是从排行榜的23名跃升为第4名。

Python的设计很容易学习,而且作为一种很受欢迎的语言,在学术界也很受欢迎,最近它的许多优秀的人工智能/神经网络/机器学习库受到了大量的关注。随着最近的机器学习的复苏,Python比以往任何时候都更加受到追捧。Ruby非常受初创公司的欢迎,因为它适合快速原型化,但是Python也同样擅长。当下一个大的兴趣领域出现时,相信Python会很快得到很好的支持。如果你想要极端的灵活性,Python几乎无可替代。

但python也有一些缺点:python的开源性使得Python语言不能加密

由于,Python是解释型语言,所有它的速度会比C、C++慢一些。有速度要求的话,用C++改写关键部分吧。不过对于用户而言,机器上运行速度是可以忽略的,因为用户根本感觉不出来这种速度的差异

如果你有其他语言的编程经验,例如:C语言或者Java语言,那么Python的强制缩进一开始会让你很不习惯。但是如果你习惯了Python的缩进语法,你会觉得它非常优雅。

很多时候不能将程序连写成一行,如import sys;for i in sys.path:print i。而perl和awk就无此限制,可以较为方便的在shell下完成简单程序,不需要如Python一样,必须将程序写入一个.py文件。

但是,当下的流行趋势是一部分影响因素,你还需要不断扩展知识,学习新的语言。

如果你想进跨国公司可以选择c去探索事物。基于需求Java在所有地方都被广泛使用。如果你对数据科学感兴趣,那么python有一些强大的库。喜欢前端可以选择Javascript。它有各种不同的框架,reacting等。

尝试不同的编程语言,然后决定你想专注于哪一个,并成为专家。

但是不要只关注一件事情,你必须保持灵活性并不断学习,因为编程会不断发展,并且会出现新的语言。