java和python都要掌握_如果两者都决定要学的话,先学Java还是Python?

先后顺序不关键,要推荐的话推荐先Python。

如果说学过Java学Python会容易一点,那么反过来也一样。不是说会难一点的语言再学简单一点的语言就简单一点,而是会编程的话学简单一点的语言会比学复杂一点的语言更简单。

但是你想,如果不会编程,大概也是学简单的语言要比学复杂的语言轻松。

所以,先学了Java再来学Python会更简单一点是伪命题,容易是Python容易,和Java没关系。简单来说,你会JS再学Python和会Java再学Python其实并没有太多效率上的区别。

所以首要的是先掌握一门语言,编程入门,了解编程语言工作特点。

在这个前提下,推荐学习Python。理由有以下几点:简单直观。越简单的语言学起来越快的话,那么选较简单的语言作为入门语言是很自然的。

多范式。你可以在Python里面看到非常自由的程序设计和组织形式。

热门。为什么热门也能算理由,因为这样你能找到更多的最新学习资料和类库

简单来说,Python是一门多范式的语法简洁的高级语言,本身就是非常适合学习的,Python目前的热门和受欢迎也能在一定程度上降低学习成本。

不要觉得Python太简单会影响你学习更复杂的语言,复杂的语言不过是把抽象的工作交给使用这个语言的人来做罢了。你说什么语言最简单,我觉得C语言是最“简单”的,从语法上来说,C语言是我觉得最自然的语言(可能和我学的第一门语言是C有关)。但是,如果说C真的简单,那还要C++和Java做什么?语言的简单和复杂大多数时候指的是使用过程中需要注意的东西多少,和学习并没有太大关系。一门语言大可以很容易学但是很难用,因为一旦要你手动去做一些抽象的工作,这往往就是我们所说的复杂的或者说难的部分。

我不是在强行把学习和使用语言分割开来,事实上,任何使用语言的过程其实也就是在不停反复地去学习。但是Python就是又容易学又用起来很直观的语言。稍次一点的是JS,如果有编程基础大概半天就能学会,但是要具体掌握大概要一周的时间,真的精通可能需要花的时间就比较多了。但是JS是不那么适合做入门语言的,因为它的应用面不够宽(新手没有HTML的知识情况下能做的事情不多),它的表达能力不像个高级语言(你不可能要求一个没入门的人先掌握Babel或者TS),它的基于原型的设计和残缺的构造能力可能会让新手对面向对象有一些误解。

如果说要选择由Java入门,我觉得也是非常不错的。他本身的设计非常优秀(对,我就是在说原生JS设计得很烂),思路明确严谨。对比Python你更可能学到一些软件工程方面的优秀经验,你可以看到真正强大的面向对象设计到底有多大的潜力,你可以更早接触VM和JIT这样的性能敏感的概念。况且,Java本身就不是一门复杂的语言,它学起来也不困难,用起来也非常顺手,Java可以说是编程语言的标杆了。

最后比较重要的一点,Java就业形势要比Python好。Python固然火,但是你要靠转行临时学的Python去找一个开发的工作,你可以试试看难度。所以如果你是Python入门,其实很可能还是要靠Java去找工作。但是零基础的话,先学Python再来学Java和直接学Java花的时间差不了多少。

所以我一大堆废话的结论就是,先学哪个都很好,个人更推荐Python。

至于HTML,CSS和JS,这些东西是典型的我之前说的学起来简单但是用起来难。它们和C语言的难不太一样,它们的困难在于内容太多。但是它们的总体设计思路很明确,所以学起来简单。

就拿CSS来说,你大概了解一下就知道它工作的特点了,几乎是“秒学”了,但是实际使用过程中会有太多你想不到的情况。一来功能太多太分散,二来浮动或流式布局等你没有实际操作经验你永远无法理解它们到底是怎么设计成这样,为什么在某个情况下会是这样。你需要慢慢掌握伪类等一开始接触不到的功能,还要慢慢积累使用经验去体会使用布局时该注意的细节。你说专门学这个,我也不知道该怎么学。我只能说先入门,边用边学,慢慢积累经验。

包括HTML,它实在是简单,标记语言能有多复杂。但是实际使用你就知道情况不是这么简单的,别人能用更符合标准,和CSS配合更完美的方式写一些兼容性比你更高的标签来完成更多你需要用JS肮脏地去完成的功能。你能体会到里面的差距有多大吗。但是你不那么了解标准,属性用起来不那么熟练,不太会用CSS简单控制,也没关系,只不过你要花更多的精力去做一个不那么美观的实现罢了。

所以我的建议是,先专心学好Python或者Java之一,再学Python或Java里面剩下那个,这时候开始同时按照HTML-CSS-JS的顺序学习web相关的内容,找个自己感兴趣的点,写个实际项目,边写边学,掌握会更快。

如果说是立志后端,那么HTMLCSSJS的要求不会很高,我推荐Channel9上面Bob Tabor | Niners | Channel 9​channel9.msdn.com

Bob Tabor的系列视频。视频都很不长,语速适中,提纲挈领,适合入门。

如果要求稍微高一点,推荐MVA里面For Experienced Developers系列,难度会更高一点点,细节稍微多一点点,但是感觉讲得没有Bob Tabor好。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值