未来想往能源互联网、人工智能等方面发展,学编程的话是python还是java合适呢?

shiyanbo

要回答这个问题,首先要搞清楚什么是“能源互联网”,什么是“人工智能”?在清楚这两个概念之后,再具体分析一下这两个概念背后所使用的技术,进而选择学习什么内容。


能源互联网


能源互联网在我看来是物联网和大数据融合的产物,首先能源互联网的基础是物联网,其次实现能源物联网的应用要依赖于大数据,所以能源互联网是物联网和大数据发展的产物之一。能源互联网关注的是能源的合理应用、智能应用,要实现这个目标就需要有一个完整的物联网基础,从生产、运输到使用的整合环节都需要进行监控。

技术方案则是物联网+大数据+整合平台,从这个技术方案上看采用的编程语言需要使用C语言、Java语言、Pyton语言。


人工智能


人工智能的概念相对来说比较复杂,也许只有哲学家才能解释清楚到底什么是人工智能。但是人工智能关注的问题可以总结为四点:1.像人一样思考。2.合理的思考。3.像人一样行动。4.合理的行动。

而作为人工智能的科研人员需要从六个方面进行人工智能的研究,这六个方面分别是:1.自然语言处理。2.知识表示。3.推理。4.机器学习。5.计算机视觉。6.机器人学。这六大方面基本上涵盖了目前人工智能研究的大部分内容,所以从事人工智能的程序员也需要从这六个方面着手。

目前Python在机器学习领域有广泛的应用,所以做人工智能学习Python是一个好选择。当然也可以使用Java,Java在人工智能领域也有大量的应用。

需要强调的一点是人工智能领域重点在算法的设计和实现上,所以打算从事人工智能的程序员要有良好的数学基础。

综上所述,C、Java、Python都是要学习的,建议从Python开始学起,因为Python够简单、易上手。

我在头条上写了关于Java和Python的系列文章,感兴趣的朋友可以关注我,一起交流学习。


IT人刘俊明

1、Java

在2017年TIOBE编程语言排行榜上,我们总能看到Java稳坐第一宝座。 毋庸置疑,java仍然是世界上最流行的编程语言。 Java已经有20多年的历史,被全球数百万的开发者和数十亿设备所使用。 再者,所有Android应用程序都基于Java。无论是哪一门编程语言,其流行程度短期要超过java都是一件非常困难的事情。



2、Python

Python简直可以评得上2017年网红编程的语言,在此次榜单上,它又火了一把。 Python加入浙江省高考,而且还成为了山东省小学生教材。 小学生都开始学的编程语言,你敢说它未来几年不火呢? 这多半也是由于:未来是AI的时代,Python语言是最接近人工智能的语言。


Python读取文件内容的代码:

JAVA读取文件内容的代码:

初学编程的入门学生,Python是最好选择,语法简洁,运行调试方便,现在又有越来越多的库支持,编写高级的业务效率将更加高,特别是现在大火特火的AI,但AI并不是Python的特权,Python上编写AI相对普通软件工程师也是调用第三方的库,像Google的tensorflow,因为它开发效率快,可以让开发人员更专注在解决现实业务的逻辑上更花时间。相比JAVA也能开发AI,也有第三方的AI支持库,Weka Deeplearning4j ,AI重点还是在能理解复杂的数学算法,知其然,还要知其所以然。

那些厉害的大牛开发者们,开发并提供了一套套的AI库,接下来就是看像作者这样普通的软件工程师,怎么去运用并落到现实的世界中,除了那些大数据计算,智能家居、智能家政、智能玩具都是不错的选择,开发出的东西能让普通百姓享受,懂点技术改变自己的生活。

如果想在编程行业深入,学习JAVA还是非常好用,学成能做找到工作的机会还是比较广,能干好后端,开发web并处理高并发,开发企业级的管理系统,也能做好前端,桌面软件和Android,而且Android又是一个非常广的行业,手机,TV,pad,各种触屏设备。


海岸丽归

关于学python还是java得问题,之前笔者有很多回答提供了这个问题。笔者的建议是,pyhon和java是两个类型的编程语言,学习时候两个都学习,而不是选择一个来选。学习时候可以调整下学习顺序就可以,先学习perl,再学习java,有条件情况下再涉猎下其他的语言。

笔者在《C、C++、Java、JavaScript、PHP、Python、Ruby这些语言分别主要用来开发什么?》问题回答中提到了很多语言的用途和已有的著名项目。

python和java主要作用和著名的项目


pyton语言小巧方面是非常趁手的胶水语言。做系统应用脚本,数值算法,云开发,AI接口。

在系统脚本方面python就是个非常好的胶水语言,写自动化小脚本,替代shell脚本,做些爬虫等,都非常方便,只需短短几行code就能实现你要的功能。



用户django写写web小应用,结合ansible,saltstack做dev ops运维自动化工具。这方面也很火,需求量大。

python在数值计算,人工智能方面有着最广泛地支持。基本上所有的深度学习系统都提供了python的接口,基于python调用这些系统,用DL人工智能处理实际中的问题,非常方便快捷,当然这只是指应用,如果你想用的好,必须学习底层的算法,学习他们的原理。有个很好的机器学习和人工智能公开课,非常好,就是斯坦福ng大大的公开课,去搜索一下就可以找得到。


在云方面,基于openstack的私有云开发也是一个很火,很重要的方向。

java 主要用于web,系统,大数据方面。


在WEB方面java很适合大型项目和网站的底层开发,在国内流量比较大,比较知名的网站比如淘宝、比如京东,在比如12306的售票系统都是用java开发,足矣说明java在WEB开发方面的实例。


当然php在WEB方面凭借大量的中小心网站的数量在web开发方面是一枝独秀占了互联网站点语言中的83%还多。但是java站点都是巨无霸,以一当万,当亿的。所以光从数量来比较的话对java有点不公。

java还有了大量的系统工具,中间件,应用框架,比如Apache基金话的项目中多一半都是java项目,而且也都是非常知名,广泛应用的响应。这笔者在文章中《「服务安全」Tomat安全设置和版本屏蔽》做过叙述。

Java在大数据、分布式计算方面有大量的应用和项目。比如hadoop、HBase、Accumulo,ElasticSearch、吞吐量消息队列Kafka等等。

还有最重要的一点是java是长期占据程序语言排行榜第一的语言,在企业职位需求上也是最多的,如果会java的话,在职场方面也是有巨大的优势的。

编程语言学习顺序

关于学习顺序方面,笔者也有总结过篇文章《[程序开发]从Scratch开始零基础编程学习、用Python入门》。

虽然讲的是对纯小白从零开的的,但是你可以作为参考从python部分开是进行学习入门,然后继续深入。

关于算法和人工智能方面的学习


在统计算法和AI方面的学习,要提下R语言作为一个很棒的数据统计和画图语言R都很棒,值得学习下。


分享到:


相關文章: