Java VS Python 应该先学哪个?(转)


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 的不同点




 

 

从这个图表,你可以很容易看出来 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

 

全部评论
都学好了
点赞 回复 分享
发布于 2015-06-28 09:00

相关推荐

面试的过程中感慨了平台的重要性,之前做的东西都太表层了,有时候可能一个平台才可能会有这些实际的应用场景二轮技术面(面试官职位应该比较高,并不会问八股文,全程问项目,和非常底层的知识,和一些整体的思考,奈何自己水平不够,我会附上我当时的回答,简单的记录一下给各位牛友参考)1. 自我介绍    我喜欢简单的自我介绍,就说了一下自己毕业时间,掌握哪些技术,公司参与过公司内部使用的系统,也参与过面向用户app的服务端开发工作,然后说了本次的求职岗位2. 独立负责这个项目的时候,你为什么要使用spring boot架构?    回答侧重点:理论上市面上最成熟的架构,本身支持自动配置减少自动配置的工作,可以很方便的集成其他的框架,并且可以自己定义一些配置3. 使用了redis的什么能力?    (redis是可以实现很多场景,但是自己直接触过缓存,希望自己未来有机会可以提升一下自己这方面的技能)只使用过他的缓存(然后本来想讲缓存的一些要点,但是想了想没讲,因为感觉没什么用,面试官想了解的应该是我是不是使用redi解决过 会话管理-分布式锁-排行榜-消息队列 的知识点 不过这些都是要契合项目说的 不可能凭空捏造)4. 缓存不一致的场景    (面试官几乎每次都强调了要契合项目说)没有出现,但是自己做了一个兜底,就是写了一个接口去主动删除缓存5. redis的一致性保障    回答了更新策略:是更新数据库再更新redis缓存;事务支持:使用redis的事务来确保一致性(只粗浅的看过,面试的时候压根想不起来只简单的说了一下这两个知识点)6. redis的可靠性    只回答了数据持久化 RDB和AOF    RDB:在指定的时间间隔内将数据以快照的方式保存到磁盘中    AOF:记录Redis数据库在执行写操作命令,生成一个文件(因为本身没有问redis数据持久化,所以我没有回答他们之间的区别,只是简单的介绍了一下概念)7. 从整个集群上的架构呢    (已经开始听不懂了)8.  redis的读写操作是不同的节点还是同一个节点9.  慢查询10.  用过消息中间件吗11.  历史老代码优化场景菜鸟集团丨2025届校招官方内推启动【公司介绍】菜鸟孵化于阿里巴巴全球最大的行业电子商务生态系统中,现已成为电商物流的全球领导者,全球第一的跨境电商物流公司【岗位方向】研发类、算法类、产品类、数据类、物流类、运营类、市场拓展类、职能类【工作地点】杭州为主,深圳、香港、北京也开放需求;区域物流岗(物流园区办公):东莞、珠海、厦门、漳州、杭州、威海【内推渠道】https://jsj.top/f/fjZDnI【内推码】CN003【备注】内推码在「校园大使内推人」栏填写,欢迎私戳跟简历进度哦~填写此链米哈游接后,同学会在近期收到一封内推确认邮件,通过邮件确认后才算内推成功、才能进入菜鸟校招流程❗️
菜鸟集团
|
校招
|
超多精选岗位
点赞 评论 收藏
分享
一面:Java的库有哪些JUC的使用死锁如果一把锁 两个线程执行会死锁吗synchronizedCountDownLatchCompletableFutureJVM对哪些比较了解?设计模式:画一个你经常使用的问项目的问题手撕算法反问:业务+今日表现二面:怎么去做日志的打印?AOP怎么使用?布隆过滤器为什么就比分布式锁的性能好?怎么样保障数据的一致性?如果布隆过滤器失效的话?Java的库有哪些?五个任务的编排并等待五个任务都运行后,进行最终的结果处理?五个任务的串行执行怎么去设计?可以怎么使用线程池去做?synchronized A-> synchronized B synchronized B->synchronized  A会发生什么现象?死锁 ?synchronized A-> synchronized B-> synchronized C synchronized C -> synchronized B-> synchronized  A会发生什么现象?死锁?如果一把锁 两个线程执行会死锁吗?SynchronizedCountDownLatchCompletableFuturesleep()和wait()的区别JVM的内存分配是怎么样的?有哪些是在栈生成?哪些是在堆生成?int类型的字节数在32位机和64位机下有什么区别?各占多少字节数?long类型呢?手撕算法:最小公倍数三面:怎么理解MVC?具体在你的项目里是指哪些模块?你的项目是怎么设计的?怎么写的?有哪些流程?怎么理解JVM?大概讲讲对哪块比较熟?怎么理解Java这门语言?如何理解团队合作?觉得自己基础怎么样?有什么问题想问的?HR面:自我介绍评价一下自己是否接受异地实习说一下自己的一些缺点为什么学习Java?怎么理解Java的?平时怎么学习的?有什么问题想问的吗?面向对象:2025届毕业生,可使用此内推码:NTAAi5Z1. 官网投递进入校招官网,输入内推码进行:https://app-tc.mokahr.com/m/recommendation-apply/csig/6007?sharePageId=54604&recommendCode=NTAAi5Z&codeType=1#/recommendation/page/54604投递即可(1)云智校招官网:(2)云智内推码: NTAAi5Z2. 工作地点西安、武汉、长沙、重庆、厦门、大连3. Q&AQ:我可以投递几个岗位?A:每位同学可投递两个岗位(如后台开发-2025届校园招聘 & 客户端开发-2025届校园招聘),请同学们查看岗位描述,选择最适合的岗位进行投递。如同学在简历筛选后希望修改投递岗位,请通过邮箱或者云智校招QQ与我们联系。Q:之前投递过暑期实习岗位,秋招还能投递吗?A:可以,不影响秋招简历投递哦,快选择心仪的职位投递吧!Q:面试方式是什么?A:本次校园招聘以线上远程面试为主,在线上远程视频面试时,建议同学处于熟悉且安静的环境中,并提前检查摄像头、麦克风和耳机是否运行正常、网速达标且稳定等、安装最米哈游新版的腾讯会议或Chrome/QQ浏览器。面试安排若有任何变动,我们将第一时间通过短信或邮件告知。Q:我想调整面试时间或面试形式,应该联系谁?A:请尽量按时参与面试,如果临时有事或因不可抗力无法参加,可以通过邮箱或者云智校招QQ与我们联系,说明你的姓名、联系方式、调整原因以及可以调整的几个时间段。Q:如何查看我的面试进展?A:如需查询招聘进展,可点击【腾讯云智研发】微信公众号,在后台回复“校招进度”即可获得查询链接;也可以登录云智校招官网,进入“投递记录“查看招聘进展及面试情况。Q:云智与腾讯集团的关系是什么?A:云智全称腾讯云与智慧产业研发公司,简称“云智研发公司”。作为腾讯集团的子公司,云智由腾讯云与智慧产业事业群(CSIG)全面管理,与CSIG总部联合形成分布式研发的组织模式,推进云与产业互联网战略落地。Q:我们是腾讯员工吗?薪酬福利如何?A:云智研发公司是腾讯旗下的子公司,我们是腾讯子公司正式员工。云智研发公司独立运行,致力于为每一个加入团队的伙伴提供有保障和竞争力的薪酬福利、成长发展平台。投递的uu评论一下姓名缩写加岗位(HFG+产品经理),我会尽力跟进~经理),我会尽力跟进~
腾讯云智研发
|
校招
|
超多精选岗位
点赞 评论 收藏
分享
1 收藏 评论
分享
牛客网
牛客企业服务