京东6.18大促主会场领京享红包更优惠

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4794|回复: 0

学Java还是 Python?你要先明白他们的区别

[复制链接]

31

主题

0

回帖

10

积分

新手上路

积分
10
发表于 2019-4-26 06:16:15 | 显示全部楼层 |阅读模式 来自 中国

* Z* e1 M% E2 U  O) I, K' L
/ G* C3 `. p" q$ o& p3 V: i9 T$ b4 E1 F2 Y( X  h& |/ j$ G
本文对Java和Python的比较会帮助你更好地了解这两种编程语言,并帮助你找到更符合目标的那一种。
3 ]5 p  f% y% F3 v  ]5 [Java和Python因其通用性、高效性和自动化能力,成为了目前市场上最热门的两种编程语言。& E3 S+ m! Y/ [
这篇比较Java和Python的博客会通过以下顺序,让你全面了解这两种语言:+ l, h4 U  V/ {  \3 ?6 N
先回溯一下这两种语言的起源,看看Python和Java有没有相似之处。
4 t8 f; b4 p& F2 [  L+ H0 {Java是一款面向对象的语言,其语法类似于很多程序员都熟知的C/C++语法。
8 K+ i8 B- T: x* t- SJava是动态链接的,允许下载和运行新代码,但不可以动态输入。
. `6 O2 I- T& i+ Y5 a+ T5 xPython是两种语言中较老的一种,1991年由其发明者Guidovan Rossum首次发布。它是一种可读、高效、功能强大的高级语言,具有自动管理内存功能。- {  D6 f; l4 u' I
那么,Python和Java之间有什么区别呢?两种语言既有相似之处,又有不同之处,这使得在两种语言中选择一种更为困难。程序员最常问的问题就是,Python是不是比Java好。
- w- s- Z* H6 ^* m  C: p我们会用到以下因素来比较Java和Python:  i; w* P7 v4 K& D5 R

9 {: L; t& g% D. L3 O: V9 Z/ z8 K& }$ C3 y1 V6 \
- I6 x& u8 a+ @) Z1 I- [! e( ~' t* f
该表显示Python似乎略胜一筹,但还需深入地了解比较因素的细节,并找出哪种编程语言更好。
3 F3 z6 v& @- w) ^' S" t6 |9 I# j速度6 V+ ?8 J+ N: _: u
9 I/ s+ ?% I8 z, A* h/ S% S. D8 I$ X
# F. D5 R( R  }6 T$ y
4 N# P6 ~. t0 N* C5 v
3 v4 g9 H& C3 h% z
就速度而言,Java是一种编译型语言,因此速度比Python更快。Java执行代码所需的时间更少。
" y- c/ q! r) O4 }$ K( u
, P1 \1 M) b9 B! h7 q  m$ a7 N  _
* f* ^% y# [+ p- E2 y6 R4 W
9 X" y8 r. y1 s6 g& h5 Tpython是一种解释型语言,它决定了运行时的数据类型,这使得它相对较慢。0 c4 u3 k! Z/ O( N1 B
遗留系统问题
! `* x) r' f  i+ Z. H' j+ K0 S1 F+ y* o

* r9 R" N- i3 a5 V
8 ]% Y7 U2 ^' ?  K' I, V) s7 {& b1 l
Java在企业中的历史和略微冗长的编码风格使得Java的遗留系统通常比Python更庞大且更为繁杂。
8 I: B: w; o. F$ m) K( W% C9 G! `4 Y5 P3 }& [2 I2 f, V

) c# p  U; R4 P! U+ ^! k  e* C/ t8 p) I! ]
Python具有较少的遗留问题,因此组织发现脚本较难复制和粘贴代码,这使Python略微优于其他语言。# \8 }; Z3 r* a# ]: C9 D/ N
当我们谈论这两种语言时,难免会有另一个困惑,那就是Java和Python哪个更简单。因此,让我们看看在两种语言中编写代码时所需的行数。
; Q  g" e2 _$ k代码
. O* ^4 g. n$ J. n# t5 D  P6 S5 f" M) Y& h+ V

3 w( S" ^8 v" R# y+ x$ E
' ?: I  Z3 k) T) Q0 P2 M* q9 J' h2 W0 k* h& }& j8 V0 q. O( y
与Python相比,Java非常冗长。从Java中读取文件需要10行代码。
& e: m  Z' V+ e4 W3 w  S
; O( Y& a  i7 ?3 `
% A# k8 W/ W  l0 G( v8 N6 v" A& |. r. _6 X
而Python仅需要2行。这使得Python成为更优选的语言。9 J& X3 U* Q4 @  _3 z
实用敏捷性
. `+ j# O3 `0 v* R4 {" f
% t/ N0 i* \! f6 h( y* e! ^4 g2 A8 o4 x0 f( R8 G, d

# D! l8 E$ q; ?% h. [# v7 v" N8 F- G) Q0 @9 _1 ?
由于Java的静态类型系统和集成开发环境(IDE)在开发中的普及,它比Python拥有更一致的重构支持。Java在移动和Web应用中更受欢迎。. R$ I0 V2 Z, Q# Q0 K# N; I
' \, ?6 S& @/ v) R, Z
1 j( F& G2 ^/ p# E$ K4 D1 T

" W7 ^" r+ ~* x7 N/ h( L  vPython在智能领域广受欢迎,被认为是研究机器学习、人工智能、物联网等领域的最佳语言。
/ ]  O2 ?3 _  O: O$ ~趋势
' {) W9 N- B; N0 h. {% }- t: M" P  _- Q, Y) t8 D5 Q5 y! E9 P

" e) S0 `1 {+ f% x6 p, w7 [印度3 g) q) E5 U  I7 A! ]6 x
9 Z& X/ ^# y+ o& S5 t
% q, {1 _9 e8 ?& ]" ~9 \0 |, R
虽然不像以前那样热门,但Java实际上仍然是最流行的编程语言。另一方面,Python的发展,特别是在发达的高收入国家,简直是突飞猛进。其原因包括开发者生产力、语言灵活性、库的支持、社区支持和易学性。  K  N% y$ P) v
薪水( |$ u3 ]& U5 Q5 h( ^$ M

8 v6 p, A9 D- }3 |9 s+ X# P; _5 K  A) M' i0 b
6 W( U( O! D5 p4 u3 G

: ]$ t7 \& h7 I: c3 e9 q8 n, [3 C6 A
大多数人都想知道Python是否会在近期取代Java。对于新晋工程师而言,考虑到近期Python的需求增长,Python会略胜一筹。如今,工程师的工作主要与自动化和人工智能有关,而这些工作都倾向于使用Python而不是Java,这就是为什么我们可以看到图表中的变化。# b7 X" }4 ~% O: j! c6 Z

) V( O. s  Q. h& [$ Q
0 l$ n' u/ @2 Y; D: p4 t; Z% ]4 Y+ o* o8 c2 c' H$ X  m2 }: Q& k
但是对于经验丰富的工程师而言,随着时间的推移还是Java占据了主导地位。毕竟在Python流行之前,大家用的都是Java。有经验的工程师会觉得,相比新学一种语言,还是继续使用以前的语言会比较方便。
- I* Q8 k0 d4 ~: E$ D, n基本区别
3 a" K" U( t4 L: s( ~1 w4 N3 `! K- b3 U& b1 ^: _) T

+ x4 c0 B/ C, \5 ]. x7 o1 E  ^( `& E
4 H8 w* ]4 c0 d; b: q, x
所以,在大多数情况下,Python都会比Java更有优势一些。. z/ o* R" g5 f, n
0 V& d9 x- T* K
/ [5 x% ~" D, Z/ ~9 z3 m
来源:https://www.toutiao.com/a6682989700724032003/( N: L& D* k  {0 L* u5 B/ @0 s  E% d
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

帖子地址: 

梦想之都-俊月星空 优酷自频道欢迎您 http://i.youku.com/zhaojun917
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|梦想之都-俊月星空 ( 粤ICP备18056059号 )|网站地图

GMT+8, 2026-6-17 15:15 , Processed in 0.060203 second(s), 27 queries .

Powered by Mxzdjyxk! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表