谷歌发布 Google I/O 2018 Android App 的源代码
谷歌有在每年 I/O 大会结束后的几个月发布当年大会 App 源码的惯例。今天,谷歌宣布公开 Google I/O 2018 Android App 的源代码,并已将其托管到 GitHub。
虽然该 App 的功能比较简单,主要目的是作为活动的日程安排程序,但它通常是一个很好的指标,表明谷歌在特定年份中将遵循的视觉审美趋势为用户提供了什么。同样的,对于开发者而言,App 的源码将为大家揭示“官方推荐”的编码实践,通过它们你将了解如何最好地利用最新的 API 和平台。
与 I/O 2017 App 所遵循的传统 ContentProvider + SyncAdapter 架构不同,2018 App 进行了几乎完全的重写,它遵循了新的Android 架构组件系统,并将代码与 Android 团队目前构建现代 App 的建议同步。
此外,在设计 App 时遵循的总体方法也发生了相当大的变化,变得更加强调模块化。开发团队表示,这是遵循“App架构指南”中提出的建议。于是他们在确定 App 的架构时决定要编写模块化、可测试和可维护的代码。他们将 Activities 和 Fragments 保持逻辑上的独立,并将其移至 ViewModels。他们使用 LiveData 观察数据,并使用数据绑定库将布局中的 UI 组件绑定到 App 的数据源。
App 的整体架构如下图所示:
而 Kotlin 作为谷歌今年大力推广的 Android 开发语言,这款 App 当仁不让地采用了 Kotlin 进行编写。如果你最近正在学习或使用 Kotlin,不妨看看谷歌官方是如何使用 Kotlin 开发 App 的。
详情请查看 https://android-developers.googleblog.com/2018/08/google-releases-source-for-google-io.html
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Linux 基金会发布免费电子书 — 《企业开源:实践》
Linux 基金会发布了一本专门面向企业的免费电子书 ——《企业开源:实践》,提纲挈领的讲述了企业该如何应对开源的浪潮。 Linux 基金会表示,这本 45 页的书籍基于数百家公司,跨越二十多年的专业的企业开源经验,概述了企业可以采取的具体行动,以加速推进开源工作。主要面向的对象是软件工程主管、开发经理、合规专家、高级工程师和其他参与企业开源活动的人员。 涵盖的主题包括 为什么要使用开源 各种开源商业模式 如何开发自己的开源策略 重要的开源工作流程实践 工具和集成 电子书下载地址
- 下一篇
甲骨文宣布开源 GraphPipe,一种机器学习模型的新标准
这个高性能标准协议应该能使企业更容易从任何框架部署和查询机器学习模型。 机器学习有望改变行业现状。但是,它在企业中的应用速度比大家预期的要慢,因为这些组织很难自己部署和管理机器学习技术。部分挑战是机器学习模型通常使用定制技术进行训练和部署,从而难以跨服务器或不同部门进行模型的部署。 为此,甲骨文希望通过开源且高性能的标准网络协议来传输张量数据(tensor data) —— 这样的一种技术手段来解决上述挑战。这项新标准,甲骨文称之为 GraphPipe,可使企业更容易从任何框架部署和查询机器学习模型。 官方对 GraphPipe 的解释为,这是一种协议和软件集合,旨在简化机器学习模型部署并将其与特定于框架的模型实现分离。 GraphPipe 旨在解决三个特殊挑战: 首先,模型服务 API 没有标准,这意味着业务应用程序通常需要定制客户端与已部署的模型进行通信。 接下来,构建模型服务器非常困难,并且几乎没有开箱即用的部署解决方案。 最后,企业现在通常使用的解决方案(如 python-JSON API)无法提供关键业务应用程序所需的性能。 GraphPipe 包括 一组 flatbuffe...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS6,CentOS7官方镜像安装Oracle11G
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,8上快速安装Gitea,搭建Git服务器
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7,CentOS8安装Elasticsearch6.8.6
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作