00:00
好,然后下边呢,我们就往这个,诶Java这块呢去聚拢啊,这里呢提一个问题,接着这个问题呢,我们再把这几个语言呢,也可以说一说啊,说why is Java啊后边这个小机器人呢,应该都认识了,对对,代表的就是安卓的这个操作系统啊,那为什么谷歌公司,然后他会在最初啊写这个开发这个安卓操作系统的时候,把这个Java语言作为他的一个开发语言呢?呃,首选语言呢,哎,通过这个呢,我们把这个问题的解决呢,就来说一下,就不同的这个编程语言的一个特点啊,编程语言特点,哎,大家呢,也可以简单的先了解一下啊,我这个课件里边第一张啊这呢我放了一个图啊,叫谷歌的安卓系统架构。哎,大家呢,就看一眼就可以了啊,这是安卓的一个系统架构,最底层的是Linux内核啊,安卓也好,IOS也好,都是用的Linux内核,跟我们的硬件呢做交互的啊,然后这个呢,就不用管了,然后在上边一层呢,有个叫libraries,那这一层主体都是用C语言开发的。
01:11
啊,中医都是用C语言开发的啊,那这呢,其实也提到一个问题啊,就是C语言也好,C加加也好,虽然说呢,年代已经很很早了,包括呢,它还是一个面向过程的,呃,但是呢,呃,他到现在为止仍然不过时。啊,就是C语言和C加加的语言的特点是什么呢?它的开发效率不算高,就是你要写一个就是写一个系统,用Java能写啊,用C跟C加也能写,那用Java写起来速度一定是比较快的,这叫开发效率啊,虽然说C跟C加的开发效率不高,但是呢,它的运行效率很高。对,就虽然我们开发的慢,但是呢,我这个运行起来就是一旦我开发好,以我运行的效率会更快一些,所以呢,凡是跟操作系统交互的这种底层呢,通常我们都是用C或C加加啊,包括大家做那个嵌入式的啊也是啊,C跟C加加是属于必会的语言啊,那我们在安卓的里边呢,它的这个level这一层呢,就是呃,用了这个C啊或C加加来写的啊,这呢它的一个运营环境,这呢,其实用到了是提供了一些Java的类库了啊,再往上呢,就是应用程序框架了,这都是用Java来写的,在上面具体的一些应用,打电话呀,浏览器呀,联系人呐等等,这都是属于这个Java的应用程序了,就这两层呢,都是Java的,然后这一层呢,都是C的啊,那这里边就提到,那你既然是有这个C做这个底层,因为做操作系统都得用到C个C了啊,那干脆直接用C做开发语言得了,那为什么还要专门整一套Java,让Java程序员上,不让C程序员上呢?
02:51
对,这这就涉及到刚才提到的第一个点,就是涉及到开发效率的问题了啊,实际上啊,这个安卓系统在最初的时候呢,它就是用C,想用C去开发,因为效率比较高嘛,呃,但是后来呢,他又在上面加了一层,然后呢,还是面向Java进行开发更好一点,呃,原因呢,其实有挺多的了哈,呃,第一个原因呢,就是Java的这个开发效率比较高,它毕竟是一个面向对象的语言是吧,也更适合于现代这样的一些应用软件的一个开发的一个一个理念啊,那C呢,它在底层呢,用它执行这个执行效率高一点是OK的,但是你要开发角度来讲,它毕竟要慢一些啊,是一个面向过程的语言。
03:34
啊,那其次的话呢,这个Java呢,从这个社区的活跃程度上来讲啊,第三方框架的角度来讲,还是从业人员上角度来讲,这个Java成员呢,都是最多的,技术呢也不错。啊,那肯定优先呢,还是面向Java的这些人做开发更好一些。啊是这样的原因啊行,那接着呢,我们再来看一下这个其他的一些这个语言,那这呢提到了一个叫tobe,对这个呢,大家这个可以稍微关注一下啊,去百度去搜,输入这个网址啊,都能找到TLB呢,它是一个比较权威的一个,呃,公布语言排行榜的这样的一个地方。
04:16
啊,每个月呢都有更新啊,他这个更新榜的这个权重呢,是参照了呃,从业的工程师的数量,课程的数量,第三方供应商的数量啊,包括呢,在谷歌呀等等这些第三方平台上搜索的一些量啊,集合起来算出来的一个指标,那么这个指标呢,哎,我们这个非常有底气的去说Java呢,基本上一直都是排老大的位置。啊,一直你可能看这个呢,不是那么明显了,你看这个走势图哈。哎,这个淡蓝色的呢,就是Java这块呢,被C超过过是吧,这块呢也短暂的有过一个交互,那后边呢,就基本上一直呢都是扎在排第一的位置啊,常年呢八宝是吧?嗯,然后呢,C语言刚才咱们也有介绍了,嗯,就是凡是涉及到跟这个操作系统层面做交互的呢,都还是会选择用C或C加加的啊,因为它的执行效率呢更高。
05:17
啊更高,那Python呢,其实比Java呢,就是就更过分一点了哈,其实他要排这个CC加加。这这个呢,属于这个叫开发效率差。执行效率高对吧,然后比他这个这个在靠这边一点呢,这就Java Java呢,刚才我们说了它俩的区别了,然后这个Python就是更往这边了,Python呢是开发效率比Java还要快,但是执行效率呢,比Java呢还要差。嗯,能听懂这个意思吧,对啊,就Python适合干什么用呢?就是比如说大家大学里边一些导师啊,或者一些科研人员呢,我们现在需要这个做一些数据分析了,然后呢,我需要现在快速的把这个代码写出来啊,可能这个一两个小时我这就要写好,然后呢,我就部署起来,让他开始跑。
06:08
呃,跑一天跑半天,跑完以后就可以了,你不能让他用C语C语言去写,写了半个月写出来了,虽然说一跑很快就出来了,但是写了半个月是吧?哎,那太慢了,所以呢,Python的特点就是更容易上手,开发的效率更高。啊,你要用写一个项目,比如说你要用C跟C加学,可能需要2000行,你要用Java呢,可能需要200行,你要用Python,可能20行对他开发效率更快,但是呢,执行效率低,他一定是是一个相对的是吧,你不能什么都好啊。好,这个Python现在比较火啊,他也可以做外部开发,但是跟Java比呢,那还是小巫见大巫。啊,Java的这个,呃,在web开发领域那绝对的是霸主是吧?呃,后边呢,像这个当耐的平台是吧,包括这个c sharp,这都算是微软这个体系里了啊,那为什么这个谷歌没选这个微软的这个c sharp呢?这不也是面向对象的吗?
07:08
啊,按说呢,也可以考虑一下是吧,呃,但是呢,从这个社区活跃度上来讲,那肯定没有Java好呀,而且Java呢还是一个开源的啊,那这呢,主要都是微软这个体系在用的语言啊,肯定有选用Java啊,然后呢,这个javascript呢,这也是节日性的语言,像像这个javascript也好,Python也好,其实我们都可以把它看成稍微轻型的一些语言,就是它的那个类库啊,语法呀,没有那么严格了,像Java呀,C呀,这个这个这个c shop呀,这都属于比较重型的语言啊啊严格的一些语法啊,这个丰富的类库啊,这样的一些特点啊,那JS的话呢,这个开发这个前端页面更更适合一些啊,然后PPPP的这个这也就不考虑了是吧,也是节日性语言circleq啊,操作数据库的,呃,以前呢,这个这个这个前几个月的时间,并没有把circle当成一门语言列到这个表里边啊,后来呢,给他加进来了,加进来以后呢,你发现circle,那那肯定还是这个占有率很高的,只要我们操作。
08:09
数据库那肯定要用到色。啊,那大数据的同学呢,这个circle口这就更重要了啊,你可能到公司里边说的简单一点,你做书仓的每天就是写circle口,就是写circle口啊,几百行上千行特色口是吧?好,这个OC听过吧,没有OC呢,曾经特别风光,然后大概能排到第三第四的位置啊呃,它呢主要用来开发。哎,就是苹果的这些操作系统的应用了,哎,不管是苹果的笔记本还是这个苹果的手机,它的开发语言呢,用的都是OC啊,还有另外一个语言呢,叫Swift是吧。那这里边没有了,因为他得还得往后排了,那OC或者是Swift,那来开发苹果的这个应用啊行,后边呢,像这个MATLAB只是做这个呃,数据分析的,数据系的或者一些这个理科系的啊,做一些分析啊,图表啊等等啊需要用到的行呃,大体上大家呃对这个语言呢,稍微有个概念啊,然后呢,你更加的自信坚定啊,要学Java是吧?啊,这是我们的目的啊。
我来说两句