0基础学编程,为什么选Python不选Java?
0基础小白学编程,第一个问题就是,应该学什么语言?相信很多同学还在Java和Python之间犹豫不定,看了今天这篇文章,你将选出自己的编程语言。相信对你有所启发。
“Java是不可动摇的老大,而Python势头正猛”,直到现在,这对于想要学习编程语言的0基础同学来说,二者怎么选仍是一件抓耳挠头的事儿。
翻遍知乎与Quora,许多已经成为或者想要成为程序员的网友们围绕这一主题,进行了深入探讨。
赞赏Python的同学@changjiz表示:
“首先Python作为一门脚本语言,很容易入门。编程并不是说掌握一门或几门语言就足够了,重在提高思维能力。而Python容易入门,工具多,短短数行代码就可以实现一个强大的功能,增强初学者的信心,另一方面让初学者有一个对编程思维的初步理解。在这之后再学习Java,首先语法很容易入门,再者对编程有一定理解后,才更能体会到类、继承、接口,甚至之后接触各种框架,这些内容对于大型项目带来的优势。”诚然,从Python和Java二者的学习难度上讲,后者的难度不言而喻。如上图所示,同样写一段“Hello,World”的代码,在Python环境中可以用更为直观的编码方式呈现。也正因如此,Python大大降低了初学者的学习门槛。
不过,就实际情况来讲,初学者学习任何一种语言都需要综合考虑是否适合自己。在此笔者先抛给大家一个问题:如果给你机会尝试学习一门人类语言(例如法语和日语),你会选择哪个?虽然多数同学嘴上说要跟着兴趣选择初级难度较大的法语,但身体还是很诚实地拥抱了容易上手的日语,到最后则因缺乏兴趣和明确的目标而不了了之。这样的场景是不是似曾相识?
因此,科学判断和选择你的第一个编程语言更为重要。
▌薪资水平:
数据来源:100Offer
根据100Offer 1月发布的一项调研报告显示:2017是十大互联网热门岗位中,Java仍是需求量最大的岗位,而Python的需求量相对靠后。然而,从薪资水平上讲,Java岗位薪资水平稍逊于Python。
上图为:Java工资及就业走势图
目前应用最多的:全栈开发、数据分析、运维开发,可以看到,Python工程师的起薪大多数在15K起,3年以上工程师的起薪大多超过20K。
上图为:Python工资及就业走势图
总的来讲,无论选择哪种语言,对于走上技术之路的程序员都会有各自不同的优势。而对于初学者而言,更重要是如何将不同语言之间的相似之处关联起来,去不断领悟各种不同的语言、不同的平台的的相似点。
毕竟,重要的是编程能力,而非仅仅某一种语言。
▌使用情况:
与Java相比,Python拥有不断被增强的数据分析工具包,能与各种语言进行协作,支持多种操作系统和多类型的数据库,可以说是比Java更为高级的语言。
例如,在开发效率上,Python所需要编写的代码量比Java所需的代码量更短。在Java环境中,只有变量名称与变量类型和对象本身相关;而在Python环境中,每个变量都与该对象相关联,用户在创建变量时不必声明变量类型。
不过,在运行时间上,Python在程序执行时间上比Java慢三到五倍。
此外,与静态类型的语言Java相比,Python属于动态类型。这也就意味着:同一件事情可能取决于上下文而发生改变不同。随着Python应用程序变得越来越大,越来越复杂,可能未来因为错误难以追踪和修复而很难进行维护。因此,也更加需要从业者的相关经验和洞察力知道如何设计代码或编写单元测试,以简化可维护性。
通过以上对比可以发现,从开发效率上讲,Python语法简洁、容易上手,从运行时间和运行效率上讲,Java则更胜一筹。
▌趋势:
近段时间以来,在各大权威榜单上,Java仍霸占榜首,但Python的势头也很强劲,甚至有后来居上的意味。在GitHub 2017年度报告中,Python 超越 Java 成第二受欢迎语言。
在 ranked.com 的排名中,Python 是 2017 年最受欢迎人工智能编程语言。根据 Stack Overflow 流量统计,2017 年 6 月,Python 第一次成为高收入国家 Stack Overflow 访问量最大的标签。
在 TIOBE 2018 年 4 月编程语言排行榜前 20 名中,Python 已跃居到第四位,前三分别为 Java 、C、C++。
根据CSDN公布的中国软件开发者调研数据显示,尽管Java依然是开发者使用最多的编程语言,Python成为越来越多的开发者未来计划学习的编程语言首位。
▌应用范围:
基于人工智能和机器学习的热潮,很多科技公司都在应用 Python 语言。如在谷歌,有谷歌爬虫、谷歌广告、Google App Engine、Google earth 等;在腾讯,有基于 Python 开发的蓝鲸游戏运维平台;而 YouTube也同样使用 Python 语言开发;在 Facebook,有大量的基础库均是通过 Python 实现.....
此外,还有诸多通过Python 实现的功能应用,比如利用 Python 爬取网页制作电子书、用 Python 编写 Face ID 破解 iPhone X、用 Python 快速实现区块链、用Python写小游戏、甚至用Python写一个自动抢票的脚本。
而Java的应用范围更为广泛,并垄断了企业级应用的开发。
总的来说,这两种语言对开发人员和最终用户来说都具有独特的优势。
为什么这么多人学习python?
而近一两年,很多小伙伴都会发现,周围的人都开始学Python了。那么,Python为什么这么好?即使是学过Java的小伙伴也在学Python?
python号称胶水语言,本身也是解释语言,但它能调用c模块,可以用于Linux系统脚本开发、甚至用于linux嵌入式开发、可以用于web 开发(有丰富的、好用的框架);最重要的就是它的语法非常简洁;”最最“重要的是目前大数据分析、机器学习它也是热门的开发语言。
Python在2017年世界脚本语言排行榜中排名第1,也是多领域首选语言,作为一种高级程序语言。
打个比方,同样一项工作C语言可能要1000行,java要100行,python可能只要10行。
所以,小伙伴们应该看出来了,虽然Java是应用最广泛的语言,但是Python因为在人工智能和大数据方面的出色表现、以及简单易入门的性质,从去年开始,就已经成为了很多人的首选语言。
最后,总结一句话,人工智能是未来,Python也是未来。