未发布 Google开源了Abseil,为C++和Python开发提供支持 Google公开了其项目内部使用的一系列C++库,随后还会公开其Python库。
Abseil已在Google历经十多年的开发,它的目的是为Google编程人员在各种项目上的工作需求提供支持,这些项目包括Protocol Buffers、gRPC和TensorFlow等。Google评价Abseil为:
- 它是从Google内部代码块中抽取出来的一系列最基础的软件库。作为基本的组成部分,这些软件库支撑了几乎全部Google在运行的项目。以前这些API是零零散散地嵌入在Google的大部分开源项目中,现在我们将它们规整在一起,形成这样一个全面的项目。
- Abseil是Google代码库的最基本构建模块,其代码经过了生产环节测试,此后还会继续得到完全的维护。
最初,Abseil提供的抽象并非C++ 14或C++ 17的组成部分,但最终它们已被添加到C++标准中。例如,Google提供一个称为StringPiece的类型,随后C++ 17也添加了一个称为std::string_view的相近类型。为了与新的C++ 17类型具有一致的API,Google将StringPiece重构为absl::string_view。从底层机制上看,如果开发人员正在使用的是C++ 17,那么Abseil的string_view默认为标准实现;如果开发人员正在使用的是C++ 17以前的版本,那么string_view默认为Google的实现。
使用Abseil的优点在于可以访问一些目前依然尚未添加到标准中的C++特性,并且一旦这些特性被添加到C++标准中,Google保证会重构这些特性为默认使用标准实现。Google鼓励开发人员使用Abseil,并提及已有超过两亿五千万行的C++代码使用它,并且几乎所有从头开始构建的项目都使用了它。这意味着,Abseil已被Google广为使用,并出于与项目需求同步的考虑而得以频繁维护。
Abseil中包括如下的库:
- base:初始化,以及其它的基础代码。
- algorithm:对C++的库的补充,并为原算法提供了基于容器的版本。
- container:提供了更多的STL类型容器。
- debugging:用于检查泄漏的调试库。
- memory:包括兼容C++ 11版本的std::make_unique()和内存管理。
- meta:包括兼容C++ 11版本的类型检查,在C++ 14和C++ 17版本的C++ 库中可用。
- numeric:兼容C++ 11的128位整数。
- strings:各种字符串工具。
- synchronization:并发原语和同步抽象。
- time:抽象了绝对时间点操作和时区操作。
- types:非容器工具的类型。
未发布 Zend Studio使用教程之在Zend Studio中调试PHP(2/5) 本教程将教会您如何调试文件和应用程序以便从您的PHP代码中获取最大的效率和准确性。Zend Studio的调试功能可以检查并诊断PHP代码在本地或远程服务器上的错误。调试器允许您通过设置断点、暂停启动的程序、单步调试代码和检查变量的内容来控制程序的执行。调试应该在您的脚本和应用程序已经充分形成试用和测试阶段试用。
未发布 Zend Studio使用教程:使用PHP 7进行开发(一) 【特惠专享】Zend Guard在线订购专享7.5折!在线订购>>
【特惠专享】Zend Studio线订购专享7.5折!在线订购>>
本教程将为大家介绍Zend Studio新版本中支持PHP 7的一些新功能,以便您可以在项目中开始使用PHP 7。
未发布 盘点开发人员的十佳AngularJS框架 您是否还在烦恼如何没有困难地创建一个创新型的Web应用程序?那么一定不要错过这个集合!在本文中,小编为大家收集了十个非常棒的AngularJS框架。AngularJS框架拥有大量有用的工具和组件,可以帮助开发人员轻松并且不浪费时间地创建清新并且附有创意的Web应用程序。
未发布 嵌入式跨平台C++3D界面开发框架最新版Qt 5.6 支持高DPI缩放 Qt 5.6改进了高DPI支持,以更好的形式支持devicePixelRatio缩放模式。在本文中,我们将看看如何从Qt应用程序用户和Qt应用程序开发人员的角度配置和启用它。
未发布 大数据时代:传统BI还能走多远? 从事BI多年,经历了经营分析系统的大建设,大发展时期,也有幸处在大数据与传统BI系统的交替之际,因此特别来谈谈,传统BI还能走多远?
因为所谓的代码性能不高而被离职的程序员 2013年6月16号,我不幸因为所谓的代码性能不高而被离职。此次被离职,即是意料之中,也是意料之外;意料之中是因为我又不是头一个,意料之外是他们的算盘打得精。当天早上来公司,大概早上10半左右,他们的技术经理找我谈话,说:“那天发生的事情你也晓得哈......,公司要个交待......”,说到这儿想必下文大伙也知道了。
此次被离职,代码性能不高只是一个导火索,而我就是点燃那导火索的那个人;在这家公司工作一年多点,期间因为工作的事情和上面的人有些技术见解及做法不同而闹得不开心,也许正是因为这样,他们参了我不少本,反而给你扣上一些帽子如:不听取别人的意见,固执等等。他们所做的web项目,对于后台拼接html代码情独有钟,谓之曰:这样性能高,当时听到这种理由,哥心里面就笑了;本想改善一下他们传统做法,还和总监据理力争,但笔者最后还是接爱了他们情独有钟的做法--慢慢拼呗......
未发布 11款Linux数据恢复工具,你知道几个? 如果你使用的是Linux操作系统,那么你一定想知道一旦硬盘崩溃的话又该如何保存和恢复数据。其实,现在有很多Linux数据恢复工具可以让我们摆脱数据安全的困扰。小编已经为各位准备好了一些最好的Linux数据恢复工具,欢迎大家品鉴。