开源公司黄页之 Google 开源软件推荐

在企业使用开源和贡献开源方面,Google一直是行业的典范。一直以来,Google都在极力推广和倡导开源,并发布了一系列开源项目。如果没有开源软件,Google也难以达到今日的成功。开源中国 区目前收录了Google 259 款开源软件,详见:http://www.oschina.net/project/google

但其最震撼人心之处在于Android手机系统的开放性和服务免费。Android是一个对第三方软件完全开放的平台,开发者在为其开发程序时 拥有更大的自由度,突破了iPhone等只能添加为数不多的固定软件的枷锁;同时与Windows Mobile、Symbian等厂商不同,Android操作系统免费向开发人员提供,这样可节省近三成成本。

Android项目目前正在从手机运营商、手机厂商、开发者和消费者那里获得大力支持。谷歌移动平台主管安迪·鲁宾(Andy Rubin)表示,与软件开发合作伙伴的密切接触正在进行中。从去年11月开始,谷歌开始向服务提供商、芯片厂商和手机销售商提供Android平台,并 组建“开放手机联盟”,其成员超过30家。

Android Studio——Android Studio logoAndroid 开发环境

Android Studio 是一个全新的 Android 开发环境,基于 IntelliJ IDEA。类似 Eclipse ADT,Android Studio 提供了集成的 Android 开发工具用于开发和调试,在 IDEA 的基础上,Android Studio 提供:

  • 基于 Gradle 的构建支持

  • Android 专属的重构和快速修复

  • 提示工具以捕获性能、可用性、版本兼容性等问题

  • 支持 ProGuard 和应用签名

  • 基于模板的向导来生成常用的 Android 应用设计和组件

Android NDK

Android NDK 是在 SDK 前面又加上了原生二字,即 Native Development Kit,因此又被 Google 称为 NDK。

在此之前,Android平台的第三方应用程序均是依靠基于Java的Dalvik特制虚拟机进行开发的。原生SDK的公布可以让开发者更加直接的接触Android系统资源,并使用传统的C或C++语言编写程序,并在程序封包文件(.apks)中直接嵌入原生库文件。

不过,Google也表示,使用原生SDK编程相比Dalvik虚拟机也有一些劣势,比如程序更加复杂,兼容性难以保障,无法访问Framework API,Debug难度更大等。开发者需要自行斟酌使用。

众所周知,Android程序运行在Dalvik虚拟机中,NDK允许用户使用类似C / C++之类的原生代码语言执行部分程序。

NDK包括了:

  • 从C / C++生成原生代码库所需要的工具和build files。

  • 将一致的原生库嵌入可以在Android设备上部署的应用程序包文件(application packages files ,即.apk文件)中。

  • 支持所有未来Android平台的一些列原生系统头文件和库

GWT——Google Web工具包

Google 页工具包——GWT 提供了一组基于Java语言的开发包,这个开发包的设计参考Java AWT包设计,类命名规则、接口设计、事件监听等都和AWT非常类似。熟悉Java AWT的开发者不需要花费多大的力气就能够快速的理解GWT开发工具包,将更多地时间投入到GWT应用的开发过程中。

开发出来的Java应用将由GWT开发包提供的编译工具编译后声生成对应的、应用了Ajax技术的Web应用,Java应用中出现的、和服务器之间的交互动作被自动生成的异步调用代码所代替。

GWT特性:

GWT除了支持将应用Java语言开发的应用转化为Ajax应用,同时提供了更多的高级特性。

  • GWT编译器

  • 跨平台支持

  • 宿主模式(Hosted Mode)

  • Web模式(Web Mode)

  • 命令行工具

Dart——结构化编程语言

Dart是一种基于类的可选类型化编程语言,设计用于创建Web应用程序。 Google称,Dart的设计目标是为Web编程创造结构化但又富有灵活性的语言;编程方法一目了然,符合程序员的自然习惯,易于学习;能在所有浏览器 和不同环境中实现高性能。

MDL——前端开发工具组 

MDL (Material Design Lite) 是 Google 推出的 站前端开发工具组。Material Design Lite (MDL)可以让你添加一个 Material Design 的外观和感觉到你的静态内容 站,不依赖于任何的 JavaScript 框架和库。MDL 可以优化跨设备的使用体验,可以在旧版的浏览器进行平滑的切换,提供非常快速的访问体验。

浏览器支持:

IE9-11,Chrome,Opera,Firefox,Safari,Chrome(Android),Mobile Safari。

Bazel——代码构建工具

Bazel 是 Google 的一款可再生的代码构建工具。它主要是用于构建 Google 的软件,处理出现在谷歌的开发环境的构建问题,比如说:大规模数据构建问题,共享代码库问题,从源代码构建的软件的相关问题。

Bazel 支持多种语言并且跨平台,还支持自动化测试和部署、具有再现性(Reproducibility)和规模化等特征。Bazel 在谷歌大规模软件开发实践能力方面起着至关重要的作用。

具有以下功能:

  • 支持自动化测试和发布

  • 支持多语言和多平台的多样性

SyntaxNet——全球最精准自然语言解析器 

SyntaxNet 是一个框架,即学术圈所指的SyntacticParser,他是许多NLU系统中的关键组件。在这个系统中输入一个句子,他会自动给句子中的每一个单词 打上POS(part-of-Speech)标签,用来描述这些词的句法功能,并在依存句法树中呈现。这些句法关系直接涉及句子的潜在含义。

AnyPixel.js 是 Google 开源的一个软件和硬件框架,可以用来构建各种由“像素”构成的展示,每个像素可以是任何一种可交互的实体对象,如 LED 灯、气球等。

谷歌希望让用户获得掌控权,创造自己熟悉的设置,无论是选择气球、灯箱或者大量其它部件以将你的想法变成现实。在你开始之前,你可以使用谷歌的浏览器预览,大致了解下你的项目完成后的样子,所以你不会盲目的创造而不知道结果是怎样。

Gson——Java的JSON类库 

Gson 是 Google 提供的用来在 Java 对象和 JSON 数据之间进行映射的 Java 类库。可以将一个 JSON 字符串转成一个 Java 对象,或者反过来。

Eclipse ADT——Eclipse ADT logoAndroid开发插件

Eclipse ADT 是 Eclipse 平台下用来开发 Android 应用程序的插件。

在线安装地址:https://dl-ssl.google.com/android/eclipse/

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年6月8日
下一篇 2016年6月9日

相关推荐