led软件2014年
每年我最喜欢写的文章之一是我在那一年中阅读或观察到的软件开发领域的一些年终总结。 与任何有观点的职位一样,从我的角度来看,这些都是重大的发展,对他人而言,对我而言可能或多或少地具有重要意义。 毫无疑问,我也将完全错过2014年软件开发领域的一些重大事件。
10. Docker(和一般的容器)
Docker 被描述为“开发人员和系统管理员用于构建,交付和运行分布式应用程序的开放平台”,在2013年开源并于2014年发布 1.0版之后,其在2014年受到了广泛关注 。 Docker现在有几个主要合作伙伴,包括IBM , VMware , OpenStack和RedHat 。 尽管通常将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 2014 , Agile2014上的 DevOps跟踪 ,2014 DevOps峰会以及DevOps Days 。
2014年,许多人认为“ DevOps工具”的工具的兴起也非常重要。Docker, Chef和Puppet等工具在今年广受欢迎。
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可以与Objective-C一起在Cocoa和Cocoa Touch上运行 。
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 8和2014年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年是Heartbleed和Shellshock的年份 。 我发现了互联网被打破,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将类似SQL的语义带入XML,经常描述类似于JMS的选择器,类似于SQL,JMS表达式语法“基于SQL92条件表达式语法的子集”(有关JMS消息选择器的 Java EE 6教程 ),以及Java SE简介8个流和聚合操作经常使用SQL作为其说明的一部分。
关于软件专利的法律变更
至少在美国,有证据表明,软件专利可能越来越难以获得和捍卫。 蒂莫西·李 ( Timothy B. Lee )在“ 专利局正在拒绝更多的软件专利 ”中写道, 最高法院最近的一项裁定 ( PDF )“导致专利局拒绝了关于“商业方法”的更多专利,这是一种软件专利。以诉讼率高而臭名昭著。”
React式宣言2.0
我们似乎喜欢在软件开发中使用常用短语。 例如,自Edsger Dijkstra于 1968年写的《致有害的声明》一书以来,“ xxxxxxx 被认为是有害的 ”已在各种所谓的有害软件开发实践中变得非常流行。
同样,宣言在软件开发中也变得很流行。 宣言早在软件开发之类的东西之前就已经在软件开发之外使用。 卡尔·马克思 (据我所知与我无关)以对共产党宣言的贡献而闻名。
敏捷宣言已在软件开发中普及了宣言方法。 其他与软件开发相关的宣言包括: 异步软件开发 宣言,软件Craft.io 宣言,半弓箭敏捷软件开发的搞笑(但有些真实 ) 宣言,现实软件开发 宣言 ,拟议的DevOps宣言 , 坚固耐用的宣言 , 软件设计宣言 , Gobbledygook宣言 , 极简主义软件工程师宣言 ( Minifesto ), 软件体系结构宣言 , SOA宣言 , GNU宣言 ,甚至是反敏捷宣言 。
《React式宣言》断言“React式系统”“更加灵活,松耦合和可扩展”,因此“易于开发且易于更改”。 《React式宣言》还指出,React式系统具有响应性,弹性,弹性和消息驱动能力。 《 React式宣言》的第二版于2014年9月发布。 马丁·汤普森 ( Martin Thompson)讨论了《React式宣言2.0》和《 React式宣言2.0 》,讨论了第二版的差异。 关于“React式宣言”的其他有趣帖子包括《React式宣言》的思考,React式宣言 “甚至没有错”和对React式宣言的回应 。
Chrome Dropping NPAPI插件
从2013年9月的博客文章“ 告别我们的老朋友NPAPI ( Netscape插件应用程序编程接口 )”中宣布,Chrome Web浏览器将从2014年1月开始“默认在稳定频道上阻止网页实例化的NPAPI插件”。 2014年11月的博文NPAPI的最终倒计时宣布,白名单将允许最常用的基于NPAPI的插件 ( Silverlight , Google Talk , Java , Facebook , Unity和Google Earth )在2015年1月删除。 NPAPI弃用:已提供开发人员指南,其中包含有关Chrome 弃用NPAPI的其他信息。
帖子“ 即将被禁止的Chrome浏览器插件获得暂停 ”说明,鼓励使用NPAPI的插件迁移到Google自己的Pepper Plugin API ( Native Client的一部分)。 已经有一些实现 ,例如Flash 。
对于这个消息有很多不同的React。 有些人关注积极方面,包括以下论点:删除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发行版 , 被设计破坏:systemd和The Biggest Myths of systemd 。 在对Linux的systemd的 理解和使用Systemd和Linus Torvalds以及其他文章中,对 systemd进行了很好的总结,并解释了为何引起争议。 声明的无用目的是“将systemd 简化为基本的initd,流程管理者和事务依赖系统,同时最大程度地减少侵入性和孤立主义。”
结论
2014年是软件开发领域又有很多发展的一年。 我今年没有足够多的时间来发表这篇文章,所以我可能会在未来几天里增加它。 如果添加任何新项目,我会在“反馈”注释中注明添加的项目。
往年版本
- 2013年
- 2012年
- 2011年
- 2010
- 2009年
- 2008年
- 2007年
翻译自: https://www.javacodegeeks.com/2015/01/significant-software-development-developments-of-2014.html
led软件2014年