大家好,今天来为大家解答2017年度必学编程语言、框架及开发工具盘点这个问题的一些问题点,包括也一样很多人还不知道,因此呢,今天就来为大家分析分析,现在让我们一起来看看吧!如果解决了您的问题,还望您关注下本站哦,谢谢~
大趋势
渐进式 Web Apps2016年,我们见证了Progressive Web App概念的蓬勃兴起。这意味着Web应用程序可以离线工作并提供本机移动应用程序的体验。它们可以添加到您的智能设备的主屏幕,甚至可以向您发送推送通知,从而缩小与本机移动应用程序的差距。我们相信渐进式Web 应用程序将在2017 年变得更加重要并值得探索。请参阅此处的概述。
聊天机器人从聊天机器人运行的平台到构建它们的框架,现在每个人都在谈论它。社区里也忙着这项活动。 (阅读我们的介绍)Bots 是一款令我们兴奋的新兴移动应用程序。如果你快点,你就能赶上浪潮。然而,一旦新鲜感消失,它只会扮演无聊的角色,例如自动化客户服务支持。但是,相信我们能够实现我们的梦想。
前端框架的合并在JavaScript 社区中,每周都会出现新的东西,框架和工具的组合令人难以置信。直到最近,人们还希望旧工具被新工具取代,但这并不是我们在2016 年希望看到的。相反,我们看到了流行框架之间的思想交流,以及将创新元素融入到新生框架中。所以在2017 年,你选择哪个JS 框架并不重要,因为它们的功能大多是可比的。
云端从目前的情况来看,很多企业和开发者都在积极拥抱“云”。云是一种虚拟化的计算机基础设施,可以通过控制面板根据不同的需求进行完全配置。目前三大云提供商是亚马逊AWS、谷歌云和微软Azure。由于它们的竞争性价格一直在下降,允许小公司和个人开发者将云纳入他们的预算,熟悉云工作流程将是2017 年成功的关键。一项不错的投资。
机器学习机器学习(ML)在过去一年中经历了爆炸性增长。 3月份AlphaGo与李世石的精彩对决也成为焦点。从原始数据中学习的智能计算机系统正在改变我们与移动设备交互的方式。看起来机器学习将在2017 年成为一个更重要的因素。
编程语言
编程语言
JavaScript继续以令人难以置信的创新速度前进。由于网络浏览器的快速发布,JS 标准计划每年更新一次。因此,《ES2017》预计将在2017 年中完成,同时还将带来JS 开发者梦寐以求的新特性——:处理异步函数的sync/wait。感谢Babel,您现在可以在每个浏览器中编写ES2017。
TypeScript 2.1于2016 年底发布,将为旧版浏览器带来Async/Await 异步解决方案并改进类型推断。 TypeScript 是一种静态类型语言,可以编译为纯JavaScript。它通过可选的静态类型增强了经典的OOP 模型,使大型代码库更易于维护。它也是编写Angular 2 应用程序的首选语言,我们建议您尝试一下。这是有关它的快速入门指南。
C#7.0预计在2017年发布,作为优秀的编程语言,它也将得到更大的提升。当微软推出开源的Visual Studio代码编辑器和.Net Core时,让所有人都感到惊讶。它们不仅可以在Linux、Windows 和macOS 操作系统中运行,而且您可以用C# 编写快速、高效的应用程序(在此处了解更多信息)。同时,这两种工具都形成了充满活力的社区。相信2017年他们会给我们带来更多惊喜。
Python 3.6 将于12 月发布。它正在巩固自己作为开发人员、IT 专业人员和科学家首选脚本语言的地位。它适用于自动化、网络开发、机器学习和科学计算。尽管Python 2.X 和3.X 版本的分离对于社区来说是一场长达数年的斗争,但现在,您可以放心地选择Python 3 并享受完整的库支持。对于那些需要额外性能的人,我建议您看一下PyPy,这是一种为Python 运行时启用JIT 的替代方案。
Ruby 2.3于今年早些时候发布并带来了一些性能改进。 Ruby 也是学习通用脚本语言的不错选择,但只有与Rails 配合使用才能最有效。随着Ruby 33 项目的宣布,即将推出的Ruby 3 版本的运行速度将比当前版本快3 倍。您还可以打开在更多情况下使用Ruby 的大门。
版本PHP 7.1于12 月发布,其中包括对该语言的细微增强。该版本建立在去年7.0 版本的重大性能改进的基础上,将PHP 转变为构建Web 应用程序的快速平台。如果您打算学习,我们建议您查看PHP Tao 中的最佳实践。
Java 9预计将于2017年发布。它将带来一些深受开发者欢迎的新功能,例如用于评估代码的repl、HTTP 2.0支持以及一些新的API。对于有才华的Java 开发人员和广泛使用这种语言进行项目开发的人来说,他们对这些新功能有着强烈的需求。如果您不喜欢Java,也可以查看一些基于JVM 的编程语言,例如Kotlin 和Scala。
Swift 3已于今年早些时候发布。简化iOS 和MacOS 上的应用程序开发是Apple 对现代编程语言的愿景。由于Swift 是开源的,因此出现了一个大型社区。 Swift 4 计划于2017 年发布,将改进语言并引入服务器API,使其成为编写Web 应用程序和后端的不错选择。
如果您正在寻找一些令人兴奋的东西,您可以尝试Crystal 和Elixir。它们都具有类似于Ruby 的友好语法和出色的性能,或者您也可以看看像Haskell 或Clojure 这样的函数式语言。另外两种快速编程语言,我们向您推荐Rust 和Go 语言。
挑一个或多个学习:JS (ES2017)、TypeScript、C#、Python、Ruby、PHP7、Java/Kotlin/Scala。
前端开发
前端
最近,Web平台取得了两大进展:Web Assembly字节码技术和Service Workers技术。它们为快速、高效的Web 应用程序打开了大门,并有效地弥补了编译本机应用程序的差距。 Service Workers 是一种用于渐进式Web 应用程序的启动技术。为Web平台提供通知支持,未来还会有更多的API。
今年也发布了Angular.js 2。该框架由Google维护,受到很多企业和大公司的青睐。它的众多功能使编写从网络到桌面和移动应用程序的任何内容成为可能。它的框架也是用TypeScript 编写的,这也是编写应用程序的推荐编程语言。虽然学习Angular 2 需要大量阅读,但我们认为学习Angular 2 将是2017 年的一项不错的投资。
今年我们还看到了Vue.js2.0 版本的发布,它借鉴了Angular、React 和Ember 的好想法,并且比前两个框架更轻、更快。我们建议您今年尝试一下,您可以从我们的Vue.js 教程开始。
Ember是JavaScript 框架的另一个不错的选择。它支持双向数据绑定,可以自动更新模板、组件和服务器端渲染。与其他竞争对手相比,使用它的优势在于它更加成熟和稳定,并且其框架发生重大变化的频率较低。社区非常重视向后兼容性,这也使得该框架成为开发长生命周期应用程序的理想选择。显而易见的选择。
另外两个值得一提的框架是Aurelia 和React。在过去的一年里,React 生态系统变得越来越复杂,很难向初学者推荐。但经验丰富的开发人员可以将该库与GraphQL、Relay、Flux 和Immutable.js 结合起来,形成一个全面、完整的全栈解决方案。
如果不提及Bootstrap,前端最终是不完整的。 Bootstrap 4 目前处于Alpha 阶段,预计将于2017 年发布。显着的变化是新的通用卡组件和Flexbox 网格(参见与常规网格的比较),它们使框架现代化并使用户工作更舒适和。
SASS和LESS仍然是两个最流行的CSS 预处理器。虽然Vanilla CSS 已经实现了对变量的支持,但在对mixin、函数和代码组织的支持方面,SASS 和LESS 仍然更好。如果您还没有了解它们,请查看我们的SASS 和LESS 快速入门指南。
挑一个或多个学习:Angular 2、Vue.js、Ember、Bootstrap、LESS/SASS
后端开发
后端
后端有许多选项,但所有选择都取决于您对编程语言的偏好或特定的性能需求。 Web 开发的一个持续趋势是摆脱后端的业务逻辑,并将该层转移到前端和移动应用程序使用的API 上。但全栈框架往往开发起来更容易、更快,而且它仍然是Web 应用程序最有效的选择。
Node.js是在浏览器之外运行JS 的主要方式。今年我们也看到了很多新版本的发布。除了性能改进之外,还增加了对整个ES6 规范的覆盖。 Node 有一个用于构建快速API、服务器、桌面应用程序甚至机器人的框架,同时它可以创建包含各种可以想象的模块的巨大社区。以下是您可能想要研究的一些框架:Express、Koa、Next、Nodal。
PHP是一种Web开发语言,有大量的Web框架可供选择。由于其优秀的文档和功能,Laravel 建立了一个活跃的社区。 Zend Framework 发布了第3 版,标志着面向业务的框架的巨大升级。今年,我们也看到Symfony 发布了许多新版本,使其成为全栈解决方案的更好选择。
对于Ruby,首选Rails框架。 Rails 5.0 今年发布,提供了对Web Sockets、API 模型等的支持。对于小型应用程序来说,Sinatra 也是一个不错的选择,Sinatra 2.0 版本预计将于2017 年发布。
Python拥有结合了Django 和Flask 的完整堆栈/迷你框架。 Django 1.10 于今年8 月发布,引入了全文搜索和对Postgres 的中间件层进行了重大修改。
在Java生态系统中,还有很多流行的Web框架供您选择。 Play和Spark是两个必备选项,它们也可以与Scala一起使用。
对于编程爱好者来说,还可以选择Phoenix,写在Elixir。它试图成为一个性能优异并完全替代Rails功能的框架。如果Elixir 是你2017 年想学习的语言之一,不妨尝试一下Phoenix。
学习其中之一:全栈后端框架,微框架
数据库
数据库
PostgreSQL今年发布了两个完整版本——9.5和9.6。它们带来了自MySQL 以来我们一直期待的UPSERT(又名DUPLICATE KEY UPDATE)功能,以及更好的全文搜索和速度改进的功能,这要归功于并行查询、更高效的复制、聚合、索引和排序。 Postgres 适用于大规模、TB 级数据集和繁忙的Web 应用程序,这些优化很受欢迎。
MySQL 8.0将是数据库的下一个主要版本。预计2017年发布,将为系统带来更多改进。 MySQL 仍然是最流行的数据库管理系统,整个行业都受益于这些新版本。
对于NoSQL 爱好者,我们推荐CouchDB。它是一个快速、可扩展的JSON 存储系统,公开REST-ful HTTP API。该数据库使用方便,性能优良。与CouchDB相对应的是PouchDB,它完全在浏览器中工作,可以与Couch同步数据。因此,您可以在离线应用程序上使用PouchDB,当连接到互联网时,它会自动同步数据。
Redis是我们最喜欢的键值存储。它体积小、速度快且功能丰富。作为NoSQL 数据存储或流程消息传递和同步通道,您可以将其用作智能分布式缓存系统的替代方案。它提供了大量的数据结构可供选择,并且在即将发布的4.0版本中将会有模块系统和改进的复制功能。
学习其中之一:Postgres、MySQL、CouchDB、Redis。
编程工具
工具
Yarn是Facebook 开发的Node.js 包管理器。它是npm 命令行工具的升级版,提供更快的安装、更好的安全性和确定性构建。它仍然使用npm 包注册表作为后端,因此您甚至可以访问相同的JavaScript 模块生态系统。 Yarn 使用的package.json 格式与npm 兼容。不同的是前者可以实现快速安装。
作为最受开发者欢迎的两款开源代码编辑器——Visual Studio Code 和Atom,我们在过去的一年里看到了它们带来的许多令人难以置信的创新。这两个项目都是使用网络技术构建的,并在社区中吸引了大量追随者。该编辑器具有高度可扩展性,并提供语法检查、linting 和重构工具等相关插件。
作为最流行的源代码版本控制系统,Git当之无愧。尽管它是无服务器的,但您可以将计算机上的任何文件夹转变为存储库。如果你想共享代码,GitLab、Bitbucket、GitHub 都是不错的选择。 2017年,我们建议熟悉git命令行,因为它比你想象的更方便。
桌面应用程序仍然没有消失。即使Web 应用程序变得越来越强大,有时您仍然需要Web 平台无法提供的强大功能和API。您可以使用Electron和NW.js等工具来创建利用Web 技术的桌面应用程序,同时还允许您完全访问操作系统以及npm 提供的各种模块。要了解有关这些工具的更多信息,请阅读我们有关Electron 和NW.js 的教程。
软件开发团队的最新趋势是让开发人员负责自己软件项目的部署,也称为DevOps。这可以加快发布速度并更快地修复生产中出现的问题。有运营经验的开发人员会受到公司的高度重视,所以开始熟悉能够实现这一目标的技术对你来说将是一个巨大的进步。我们推荐的工具是Ansible 和Docker。同时,拥有Linux命令行和基本的系统管理技能也将为你的职业生涯大大加分。
尝试一个或多个学习:Yarn、Git、Visual Studio Code、Electron、Ansible、Docker。
技术
技术
随着大公司关闭数据中心并将其整个基础设施转向云,我们可以看到云已经赢得了整个软件行业。目前的三个主要平台是AWS、谷歌云和Azure。这三大平台都具有强大的功能,并且不断扩展其功能集,包括虚拟机、数据库托管、机器学习服务等。由于价格迅速下降,小公司和个人开发者也可以使用云。 2017 年,在云上部署一个业余项目将是一次很好的学习经历。
人工智能是2016年的流行词。语音识别和图像分类只是该技术面向用户的两个应用程序,人工智能设备的性能达到或超越人类水平。现在许多初创公司正在将人工智能和机器学习应用到他们的新领域,并且许多相关的开源项目也已经发布,例如谷歌的Tensor Flow和微软的Cognitive Toolkit。机器学习是一个与数学非常相关的主题,对于那些刚刚开始学习的人来说,有全面的在线课程供您学习。
虚拟现实(VR) 和增强现实(AR) 已经存在了一段时间,最终技术已经足够成熟,可以提供引人入胜的体验。 Facebook (Oculus Rift)、谷歌(Daydream) 和微软(Windows Holographic) 都拥有欢迎第三方开发者的虚拟现实平台。然而,VR可穿戴设备仍然面临着严峻的挑战。例如,如何消除佩戴者的恶心感,以及如何在游戏圈之外创建令人信服的用例。
挑一种学习:云部署、机器学习库、VR开发
如果您觉得文章不错,不妨点个赞。
注:
【2017年度必学编程语言、框架及开发工具盘点】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
我一直在想今年はどんなプログラミング言語を学べば良いか
有18位网友表示赞同!
新しい技術って毎年どんどん進化するよね!
有10位网友表示赞同!
このブログの記事読んで新しい知識を得られるかな?
有10位网友表示赞同!
プログラミングに興味があるけど、何から始めればいいか分からないんだ...
有6位网友表示赞同!
自分の仕事に役立つスキルを身に付けたいんだけど。
有17位网友表示赞同!
Web開發って流行ってるみたいだけど、どの言語が将来性あるんだろうね
有20位网友表示赞同!
最近人気のフレームワーク、試してみたくなっちゃった!
有14位网友表示赞同!
新しいツールを知ると、作業効率が上がること間違いなしだわ
有5位网友表示赞同!
プログラミングなんて難しそうで挑戦したことがないんだ...
有12位网友表示赞同!
でもこの記事を読んでモチベーションを上げられるかも!
有18位网友表示赞同!
技術系ブログって読み応えがあるよね。
有9位网友表示赞同!
最新のトレンドをチェックして、自分にも取り入れられるようにしたいな
有9位网友表示赞同!
専門家の方々の意見に興味があるんだよね...
有20位网友表示赞同!
自分のスキルアップを目指してみようと思います!
有11位网友表示赞同!
仕事で使えるようなプログラミング言語ってどんなものだろう?
有20位网友表示赞同!
興味のある分野の技術を調べてみよう!
有9位网友表示赞同!
記事を読んで、自分に合った学习プランを探してみる
有8位网友表示赞同!
プログラミングの世界は奥深いのかな?
有16位网友表示赞同!
この記事を参考に自分の好きなことをもっと具体的にしたいんだ.
有6位网友表示赞同!
新しいスキルや知識を身につけるって本当に楽しいよね!
有7位网友表示赞同!