2014年重要的软件开发发展

每年我最喜欢写的文章之一是我在那一年中阅读或观察到的软件开发领域的一些年终总结。 就像任何有观点的职位一样,从我的角度来看,这些都是重大的发展,对他人而言,对我而言可能或多或少地具有重要意义。 毫无疑问,我也将完全错过2014年软件开发领域的一些重大事件。



10. Docker(和一般的容器)

Docker 被描述为“开发人员和系统管理员用于构建,交付和运行分布式应用程序的开放平台”,在2013年开源并于2014年发布 1.0版之后,2014年似乎受到了广泛关注Docker现在有几个主要合作伙伴,包括IBMVMwareOpenStackRedHat 。 尽管通常将Docker视为Linux风格的容器,但微软在2014年底宣布 ,“希望使用Docker创建容器应用程序的开发人员和组织将能够使用Windows Server或Linux以及不断增长的用户Docker生态系统,应用程序和工具。” Docker被称为第一个真正的DevOps工具,而Docker可能被视为正在变得非常流行的一般容器类别的代表。

9. DevOps

我曾考虑过将Docker和其他容器归入DevOps类别,但是我认为容器(尤其是Docker)在2014年已经成为了一个大新闻,可以单独考虑。 但是,他们在2014年的成功无疑为2014年DevOps的增长做出了贡献。我仍然发现DevOps对不同的人而言意味着不同的事物,但是毋庸置疑,2014年该术语经常被讨论。与之相关的会议数量之多证明其受欢迎程度。 这些会议包括Mountain Western DevOps 2014Agile2014上的 DevOps跟踪 ,2014 DevOps峰会以及DevOps Days

2014年,许多人认为“ DevOps工具”的工具的兴起也非常重要。Docker, ChefPuppet等工具在今年广受欢迎。

8. C ++ 14

2014年夏末宣布 C ++ 14已获批准 。 那些只阅读最受欢迎的软件开发博客的人可能会想知道为什么新的C ++标准很重要,但是任何对软件开发行业有更广泛了解的人都知道C ++是地球上使用最广泛的编程语言之一。 关于“ C ++ 14的新功能的简要概述”,请参见“ C ++ 14已完成-这是新功能”

O'Reilly在11月发表的Scott Meyer的有效的现代C ++:42种改善C ++ 11和C ++ 14使用的特定方法 》的出版物为C ++取得了丰硕的发展提供了更多证据。 如果这本300余页的书中,没有什么能像经典的《 有效的C ++》和《 更有效的C ++》一样有见地,那么它将是现代C ++开发人员的重要著作。

7. Java 8

自从J2SE 5以来, Java 8可以说对Java带来了最重大的变化。 Java 8将流行的编程语言的一些最令人希望的功能引入了最常用的编程语言之一。

6.苹果的Swift编程语言

直到2014年,当我们想到Apple设备的本地语言开发时,我们大多数人都想到了Objective-C 。 苹果在2014年推出了Swift ,称其为现代,安全,富有表现力和高性能的产品。 与任何这些特性一样重要的是,Swift可以与Cocoa和Cocoa Touch上的Objective-C一起运行。

5. AngularJS

AngularJS去年的这篇文章中成为我的“荣誉提名”名单,并且在2014年更加流行。在有关Web开发的讨论中,它经常像jQuery一样被提及。 是jQuery使(并且仍然使)我们许多人可以接受JavaScript开发,并且有趣的是,看看AngularJS对Web开发是否具有相同类型的远程影响(将更多的开发移至HTML内置标签和扩展标签)并远离JavaScript)。 随着AngularJS 2.0 ,WebComponents和ECMAScript 6( ES6 )的出现,这个已经流行的框架似乎具有很大的潜力。

4.云计算

Barb Darrow在Yup开业,2014年是云计算的重要一年 :“ 2014年是Microsoft和Google都认真对待其公共云选择,并直接通过自己的基础架构即服务和相关服务采用Amazon Web Services的一年。服务。” Office 365 ,其他Microsoft产品和Google产品正在将云带给越来越多的个人,组织和企业

2014年:云杀死了数据中心的那一年Jason Perlow写道:


去年,竞争激烈的公共和私有云提供商在降低成本和改善服务功能方面大大提高了赌注。 …在2013年,对于企业而言,云的低谷成果全在于处理开发和测试工作负载,这些工作负载可以利用自助服务配置和取消配置的优势。 在2014年,对于CxO来说,这一切都是关于调查,试验和积极将生产工作负载迁移到云中。

3.技术故障和停机

2014年,技术功能障碍的延续在去年我的榜单上名列前茅 。 存在着备受关注的云中断 ,安全事件(在下面获得其自己的第一项),软件更新问题(例如iPhone上的iOS 82014年8月Windows更新 )以及以消费者为中心的软件的其他问题(例如无法提交)律师考试RepricerExpress / Amazon.com问题)。

2. .NET Core和免费提供的Visual Studio Community Edition的开放源代码

Immo Landwerth.NET Core是开放源代码一 文中写道:“。NET Core将是开放源代码,包括运行时以及框架库。” 他还解释说:“。NET Core是模块化开发堆栈,是所有未来.NET平台的基础。”“新的.NET Core堆栈将完全在GitHub上开源。” 2014年初,我们宣布 C#编译器已开源。

Scott Guthrie的博客文章“ 宣布.NET Core框架的开源,Linux / OSX的.NET Core发行版和Free Visual Studio Community Edition”讨论了.NET Core的开源问题,还提到了Microsoft打算在Linux和OS上支持它的意图。 X. Guthrie还介绍了Visual Studio Community 2013版,并声明它“是功能齐全的IDE”,对于以下类别之一的开发人员(个人开发人员,对开源,学术性,非企业贡献的开发人员)“完全免费” 5人或更少的开发人员团队进行开发)。

微软并不是最早想到“开源”的公司之一,这些公告甚至被称为 “震惊者”。 帕特里克·海因茨Patrick Hynds )的Microsoft开发人员不再被孤立, 它对导致微软宣布这一消息的市场力量进行了全面的概述,并解释了为何这一政策变更可能意味着“该语言(甚至框架)的另一十年仍然有意义。”

1.软件安全

在关于去年最重要的软件开发开发的文章中 ,我的前两个开发是“技术功能障碍”和“安全性”类别。 在2013年成为这些主要因素的引人注目的案例与2014年的引人注目的案例相匹配。2014年是HeartbleedShellshock的年份 。 我发现了互联网被打破,Shellshock只是我们祸根的开始,以及令人 心碎的互联网破裂的原因—以及为什么它又会再次发生 ,使人有深刻的洞察力(和恐惧感),看看这些错误是如何引入的,而更早之前没有发现。 许多其他软件开发团队和项目很容易发生这种情况。

里克·德尔加多(Rick Delgado)表示:“这些最近的袭击使人们想到了最坏的情况是在我们身后还是仍在继续。” 他的意见是,“不幸的是,似乎是后来者了。”

“软件安全性”已经是我在此列表中排名第一的项目,而当索尼黑客的消息曝光时,此句上面的#1说明中的所有内容均已写成。 本节的其余部分以Sony骇客为准,并进一步巩固了“软件安全性”作为我2014年软件开发的第一名。

索尼的骇客在金钱 ,声誉和赚钱潜力方面一直很昂贵。 它还使许多人感到尴尬,成为国际事件,并影响了美国的言论自由。 此外, 它还产生了阴谋论对朝鲜的指控以及关于它是索尼内部人士的说法 。 这也很可能预示着即将发生的事情

我之前引用的有关云计算2014年巨大发展的一篇文章中,该文章的作者指出“数据安全性问题仍然是采用云技术的最大障碍。”

荣誉奖

在给定的日历年中,我从来没有将软件开发中的所有重要开发挤入十个项目中。 今年也不例外,这个“荣誉奖”部分使我可以列出我认为进入前十名的项目,但最终,对我而言,前十名中没有任何项目发生变化。

SQL提醒我们它的优势

大约八年前, 史蒂夫·耶格Steve Yegge )在他的文章《下一代大语言》中写道,确保一种新的编程语言“有机会”的第1条规则是使用“类似于C的语法”来创建它。 关于创建下一个大型数据库的类似帖子,对于类似SQL的语法(规则1)可能会说同样的话。 在我的职业生涯中,我显然曾使用过关系数据库,但也曾使用过面向对象和XML数据库。 在所有情况下(不仅是关系型),我都在尝试使用SQL或类似SQL的语法的产品中尝试获得关系数据库所享有的市场份额。

今天,我们在NoSQL数据库中看到了同样的事情,这使“ NoSQL”这个名字变得更加不精确。 当我刚开始使用 Cassandra时,吸引我的一件事就是类似SQL的Cassandra查询语言CQL )(和cqlsh环境)。 CouchBase宣布将N1QL (发音为“镍”)作为其“下一代查询语言”,并且《 N1QL语言参考 》相对于SQL对其进行了描述:“ N1QL建立在SQL语言的基础上,除了与文档相关的功能外,还包括许多SQL功能,面向数据库。”

尽管特别是关系数据库和各种数据库一般都采用了SQL,但是结构化查询语言也影响了数据库外部的软件开发。 XQuery为XML带来了类似SQL的语义,经常描述类似于SQL的JMS选择器,JMS表达式语法“基于SQL92条件表达式语法的子集”(有关JMS消息选择器的 Java EE 6教程 ),以及Java SE简介8个流和聚合操作通常使用SQL作为其解释的一部分。

关于软件专利的法律变更

至少在美国,有证据表明,软件专利可能越来越难以获得和捍卫。 蒂莫西·李Timothy B. Lee )在“ 专利局正在拒绝更多的软件专利 ”中写道, 最高法院最近的一项裁定PDF )“导致专利局拒绝了关于“商业方法”的更多专利,这是一种软件专利。诉讼率高而臭名昭著。”

反应式宣言2.0

我们似乎喜欢在软件开发中使用常用短语。 例如,自Edsger Dijkstra于 1968年写的《致有害的声明》一书以来,“ xxxxxxx 被认为是有害的 ”已在各种所谓的有害软件开发实践中变得非常流行。

同样,宣言在软件开发中也变得很流行。 宣言早在软件开发之类的东西之前就已经在软件开发之外使用。 卡尔·马克思 (据我所知与我无关)以对《 共产党宣言》的贡献而闻名。

敏捷宣言已在软件开发中普及了宣言方法。 其他与软件开发相关的宣言包括: 异步软件开发 宣言,软件Craft.io 宣言,半弓箭敏捷软件开发的搞笑(但有些真实宣言,现实软件开发 宣言 ,拟议的DevOps宣言坚固耐用的宣言软件设计宣言Gobbledygook宣言极简主义软件工程师宣言Minifesto ), 软件体系结构宣言SOA宣言GNU宣言 ,甚至是反敏捷宣言

《反应式宣言》断言“反应式系统”“更加灵活,松耦合和可扩展”,因此“易于开发且易于更改”。 《反应式宣言》还指出,反应式系统具有响应性,弹性,弹性和消息驱动能力。 《 反应式宣言》的第2版​​于2014年9月发布。MartinThompson讨论了《反应式宣言2.0》和《 反应式宣言2.0 》中讨论了版本2的差异。 关于“反应式宣言”的其他有趣帖子还包括“反应式宣言”的思考,反应式宣言 “甚至没有错”对反应式宣言的回应

Chrome Dropping NPAPI插件

2013年9月的博客文章 向我们的老朋友NPAPINetscape插件应用程序编程接口说再见时宣布,Chrome Web浏览器将从2014年1月开始“默认在稳定频道上阻止网页实例化的NPAPI插件”。 2014年11月的博客文章NPAPI的最终倒计时宣布,白名单将允许最常用的基于NPAPI的插件SilverlightGoogle TalkJavaFacebookUnityGoogle Earth )在2015年1月删除。 NPAPI弃用:已提供开发人员指南,其中包含有关Chrome 弃用NPAPI的其他信息。

帖子“ 即将被禁止的Chrome浏览器插件获得暂停 ”说明,鼓励使用NPAPI的插件迁移到Google自己的Pepper Plugin APINative Client的一部分)。 已经有一些可用的实现 ,例如Flash

对于这个消息有很多不同的反应。 有些人关注积极方面,包括认为删除NPAPI会使事情变得更加安全和“更加移动友好”。 其他人则争辩说,他们并不需要Google成为老大哥,并且即使用户自担风险也无法使用插件。 另一个论点是, NPAPI替代品还不够成熟或不足以证明完全放弃NPAPI,并且Google的Pepper Plugin API不足以使用据说可以与之配合使用的流行插件。 对于那些需要特性使插件比HTML5更具吸引力的Web开发人员来说,这似乎确实使事情变得更加困难,因为该开发人员需要为每个浏览器编写不同的应用程序,因为他们无法就其本机客户端技术达成共识。

物联网

去年,物联网就在我的名单上,并且仍然是软件开发社区中的一个主要概念,随着消费者购买了连接的设备,该概念已经普及到了大众

HTML5

由于Web和移动设备的普及,HTML5继续获得市场份额。

OpenStack迁移到企业

OpenStack之所以变得更具凝聚力,是因为OpenStack在企业中更具吸引力。

systemd(Linux)

红帽Linux发行中对systemd的引入一直是引起争议的根源。 有关该主题的文章和博客文章的标题传达了这里涉及的感觉力量Systemd:Linux启示的先驱者Meet systemd,这个有争议的项目接管了您附近的Linux发行版被设计破坏:systemdThe Biggest Myths of systemd在Linux的systemd上的 理解和使用SystemdLinus Torvalds以及其他文章中介绍了systemd的不错摘要,以及为什么有这么大的争议。 声明的无用目的是“将systemd 简化为基本的initd,流程管理者和事务依赖系统,同时最大程度地减少侵入性和孤立主义。”

结论

2014年是软件开发领域又有很多发展的一年。 我今年没有足够多的时间来发表这篇文章,所以我可能会在未来几天里增加它。 如果添加任何新项目,我会在“反馈”注释中注明添加的项目。

往年版本

翻译自: https://www.javacodegeeks.com/2015/01/significant-software-development-developments-of-2014.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值