2017年技术预测

转载 2016年12月26日 18:18:49

哪门语言最受青睐,2017年,开发者应该学什么? 
以下汇集了数据信息和一些观点,希望给大家带来启示。感谢科技网站 HackerEarth、HackerNews、Github,门户网站 Glassdoor、Indeed的编辑们。

在2017年最受欢迎的顶级编程语言

Java SEJava EEJava Web 
Python 
PHP 
Swift 
R 
Matlab 
Arduino

在2017年最热门的领域

机器学习 
深度学习 
人工智能 
虚拟现实

关于Java

用于Android开发和世界上大多数金融系统。Java的速度和性能是显而易见的首选。它多年来被评价为最好的编程语言,它总是很好地保持用户的技能更新。

Java 9 预计在 2017 年发布,并将带来备受欢迎的新功能,例如用于评估代码的 repl、对 HTTP 2.0 的支持和新的 API。有才能的 Java 开发人员和使用该语言开发项目的人对于这些特性有强烈的需求。如果 Java 不是你需要的,有一些基于 JVM 的语言,如 Kotlin 和 Scala。

关于Python

Python 有以 Django 和 Flask 的形式组合的全栈/最小框架。Django 1.10 在 8 月发布,为 Postgres 引入了全文搜索和一个大修改的中间件层。

关于PHP

在过去,PHP是一种简单的方法来淘汰一些动态网页。如果你需要一点点的变化,你可以在HTML标签之间嵌入简单的代码。Web开发者有了它就基本足够了,但它的缓慢足以令程序员中的中坚分子看不起它。

因为一些喜爱PHP的程序员在Wordpress和Facebook等地方都在争相利用即时编译器,这种曾创造出Java如此高性能解决方案的技术来执行比以前更快的PHP代码。现在的工具如HipHop,虚拟机和PHP7.0提供的速度可能是旧版本的2倍。这会给Node.jsJava带来挑战。

PHP 有大量的 Web 框架可供选择。由于其出色的文档和功能,Laravel 构造了一个积极的社区。Zend Framework 发布了第 3 版,这标志着这个面向业务的框架的巨大升级。Symfony 在今年也发布了很多新的版本,使它作为一个全栈解决方案成为一个更好的选择。

关于Swift

Swift 3 于2016年早些时候发布。这是苹果对现代编程语言的愿景 — 简化 iOS 和 macOS 上应用程序的开发。Swift 是开源的而且吸引了大量的社区。版本 4 计划于 2017 年发布,将改进语言特性和引入服务器 API,使其成为编写 Web Apps 和后端的一个不错选择。

在 2016 年,我们看到了 Progressive Web App 概念的兴起。它代表了脱机工作的 Web 应用程序,并提供类似 Native App 的体验。它们可以添加到你的智能设备的主屏幕,甚至可以给你发送推送通知,弥补了与本地移动应用程序的差距。我们认为,在 2017 年,PWA 将变得更加重要,更值得探讨。

Progressive Web App(PWA) 是 Google 在 Web 
平台开始推广的一个新概念,可以理解为是尽可能借助目前的新技术(比如 Service Worker,Push Notification 
及其他展现层的新技术)以增强 Web App 的体验和功能,让 Web App 的体验无限接近 Native App。PWA 
并不只是在移动设备上使用,有现代浏览器存在的地方就可以有 PWA。PWA 也不是 Chrome Only,现代浏览器基本都支持。

关于Javascript

全球化的Web脚本语言。当Web接管我们的宇宙时,使用主要用于Web应用程序的Javascript也将接管世界。它是一个好的前端工具,可以在所有环境中使用。从添加效果到创建基本功能的游戏,Javascript是业界最喜欢和最受欢迎的编程语言学习。

2017年,JavaScript 继续着它令人难以置信的创新步伐。由于 Web 浏览器的快速发布计划的推动,JS 标准每年都会更新。下一个版本,ES2017 预计将于 2017 年中期完成。它将带来许多 JS 开发人员渴望的特性 — 用于处理异步函数的 аsync/await。

关于C++

《Effective C++》 系列图书的作者、编程新闻方面 Dr. Dobb 奖得主(Dr. Dobb’s JournalExcellence in Programming Award) Scott Meyers ——在我看来C++仍然是一个重要的编程语言,因为它自出生以来的长处仍然在各种各样项目的软件开发人员中具有持续的吸引力。我曾在2014年作过演讲《为什么C ++将继续远航》,其中我总结了C++以下优点:

  • C语言兼容
  • 非常通用的功能
  • 不存在范式(Paradigm agnosticism)
  • 专注系统编程

C ++是最适合那些要求苛刻的系统应用,那些不容易满足技术上的约束的系统。对于这样的应用程序,通常情况下,C ++的唯一重大的竞争对手是C,而与C相比,C ++ 又能提供更强大的抽象和建模功能。

抱有同样态度的还有Constantin Brancusi 大学的 Adrian Runceanu 教授在C ++,Java,Oracle 有超过16年的经验——我认为使用C / C ++是因为它提供了一个很好的指针机制(a good mechanism for using pointers),我们可以用这种语言创建可移植的应用程序。我相信C / C ++很容易学习,这就是为什么学生喜欢使用这种编程语言创建应用程序。其他语言(Java,Java,Python)可用于开发Web应用程序,但C / C ++不能以这种方式使用。我不知道这种语言的未来是什么,但我相信C ++在未来将继续在业界处于主导地位。”

关于R语言

随着世界对统计和数据分析越来越痴迷,R是你需要添加到你的技能组合的语言。如果你在工作门户网站上看到的与R相关的工作越来越多,那么可以肯定R在2017年可能是最受追捧的语言。

关于Swift

当苹果应对开发商的投诉时,它决定拿出 Swift 取代 Objective-C。它必然成为开发商的最爱。到目前为止,iOS开发人员正在像其他人一样快速地编码,当他们在市场现身时,Swift的使用率只会更加扩大。

关于MATLAB

曾经是数学家和科学家使用的硬派语言。随着对分析和统计的兴趣越来越大,MATLAB的受欢迎程度正在复苏。更多的开发人员将回到MATLAB,因为数学分析的复杂性正在增加。

关于SQL

随着人们越来越需要技术,数据库一直在指数级增加。如果你有兴趣管理数据库,SQL是你的首选。SQL是为了特殊的数据库目的设计的语言,不同于通用语言。几乎可在需要数据库管理的任何地方使用它。SQL是一个需要学习的重要技能,是为数据库忠实粉量身定做的。

关于Arduino

这并不是一项新语言,它由 C 和 C++组合而成,但物联网将属于 Arduino! 嵌入式编程也将是一个关键的玩家。随着更多的嵌入式芯片需要编码,Arduino将是在 2017 年兴起的新技能

关于Redis

Redis 是最受欢迎的 Key-Value 数据库。它体积小,快速而且通用性好。作为 NoSQL 数据存储或进程消息传递和同步通道,你可以将其作为智能内存缓存的替代方案。它提供了大量的数据结构可供选择,并且即将到来的 4.0 版本将有一个模块系统和改进的复制功能。

关于机器学习

机器学习在过去的十二个月中已经呈现爆炸式的增长。通过在今年 3 月份的 AlphaGo vs Lee Sedol 的历史性比赛,它进入了主流。从原始数据中学习的智能计算机系统正在改变我们与移动设备交互的方式。机器学习将是 2017 年更大的影响因子。

关于GO

Java 和 Javascript 可能仍然是其基于网络的服务行业的最爱,Google的GO也已经出现了几年,并将是一个伟大的语言。Ruby 是初创公司最喜欢的,这已经有一段时间了,其流行度在预计的未来不会减少。Mozilla 的 Rust和 Facebook 的 HACK(超过90%的Facebook 代码用 HACK 书写)必须也加入这些列表,但在2017年上半年还不行。

关于MySQL

MySQL 8.0 将是该数据库的下一个主要版本。正式版预计 2017 年发布,将给系统带来很多改进。MySQL 仍然是最受欢迎的数据库管理系统,整个行业都受益于这些新版本。

关于Node.js

Node.js 是在浏览器外运行 JS 的主要方式。今年我们看到它发布了许多新版本,提升了性能以及添加对整个 ES6 规范的覆盖。Node 具有快速构建 API、服务器、桌面应用程序甚至机器人的框架,以及创建可以想象到的各种模块的庞大社区。一些你可能想研究的框架:Express, Koa, Next, Nodal。

相关文章推荐

2017年Java就业前景分析

权威统计机构统计在所有软件开发类人才的需求中,对Java工程师的需求达到全部需求量的60%~70%。JAVA工程师的薪水相对较高,通常来说,具有3~5年开发经验的工程师,拥有年薪10万元是很正常的一个...

消息总线扩展之集成Thrift-RPC

本文主要探讨了消息总线支持Thrift RPC的实现过程。鉴于RabbitMQ官方的Java Client提供了基于RabbitMQ的JSON-RPC,消息总线也顺道提供了JSON-RPC的API。之...

WebSocket刨根问底(三)之群聊

前两篇文章【WebSocket刨根问底(一) 】【WebSocket刨根问底(二) 】我们介绍了WebSocket的一些基本理论,以及一个简单的案例,那么今天继续,我们来看一个简单的群聊的案例,来进一...

Java程序猿跳槽应该学哪些方面的技术

 互联网产品、大型企业级项目常会用到的: 并发处理技术。具体到Java上通常是涉及java.util.concurrent、并发锁机制、NIO等方面,当然最近比较火爆的Netty框架也可以作为...

2017年视频监控与存储技术变革发展预测

智慧城市发展有目共睹,作为一个生态系统,感知是重要一部,通过以视频监控等为基础搭建的感知物联网是数据收集的重要环节,而对数据进行存储、分析则成为重中之重。那么在万物联网的世界,视频监控编码分析、存储有...

2016 年 7 个最佳的 Java 框架

毫无疑问,Java是目前最需要的编程语言之一。在这里,我们已经挖掘了一些关于框架趋势的有用信息,以减轻全球软件开发人员的日常工作。 根据RebelLabs,也是在线Java用户组(虚拟JUG)的...

2017年,你需要GET的9大技术领域

2016年过去了,然而我一点也不怀念它,因为2017年的技术趋势更加吸引人。回顾一年里业界的发展,2017年的技术趋势初现端倪。根据CSDN知识库这一年来大家关注的热门知识图谱,我们来给大家梳理一下2...

架构师入门笔记九 初识IO NIO AIO

架构师入门笔记九 初识IO NIO AIO 在学习netty之前,我们要对Socket网络编程有一定的了解。这里先来了解一下 IO(BIO),NIO,AIO(NIO2.0)这几种通信的特点以及其演...

2017你不应该错过的Java库包

下面是2017年你不应该错过的Java库包清单: Guice Guice是一个Java 6以上支持依赖注入框架。由谷歌提供。 # Typical dependency injection...

Shiro安全框架入门篇(登录验证实例详解与源码)

一、Shiro框架简单介绍Apache Shiro是Java的一个安全框架,旨在简化身份验证和授权。Shiro在JavaSE和JavaEE项目中都可以使用。它主要用来处理身份认证,授权,企业会话管理和...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)