前情
几天前翻译了一个有关Firebase的介绍IO的视频,在此写篇文章来总结一下
主讲人是James Tamplin,Firebase的联合创始人,本人很喜欢他的口音(捂脸XD)

热场
首先,他是讲述了10年前笨重的软件开发过程,于是引出了Firebase的目的和他们的关注点
接着,他引出的Firebase很重要的三个关注点 用户
、数据
和 任务
那么谷歌是如何做的呢?
首先要从 谷歌云服务平台(Google Cloud Platform)
开始
-
它的最底层是基础设施层,也就是
谷歌计算引擎(Google Compute Engine GCE)
,它使物理机器呈现出虚拟形态 -
接下来是容器层,也就是
谷歌容器引擎(Google Container Engine GKE)
,它使你可以运行软件而不用考虑底层的硬件 -
再上一层就是平台层,也就是
谷歌应用引擎(Google App Engine GAE)
,有了它你就可以不用考虑内存、CPU和系统更新,你只需要给它后端代码,它就可以接收、部署、运行并处理,这让一切变得更高效

主题
那么如果你是个移动端或者Web开发者呢?
那就该Firebase出场了
那么到底什么是Firebase?
简而言之它就是一个帮助你快速开发高效的移动和Web应用的平台
而我认为它是结合了后端和数据库,使原来的三层结构变成了两层结构,也就是一体化后端框架,使开发变得更加快捷

Device-->Application Server-->Database

Device-->Firebase(Hook Server or Third part API)
它有三大功能:用户认证
、实时数据库
和 托管服务
-
用户认证:如果你构建一个APP,那么你要做一个用户认证系统,而Firebase允许你用Email和密码连接到第三方,例如Facebook,Twitter等等。你所要做的就是使用一个服务端的库来生成JSON Web标记和另一个开放标准,这样你就可以告诉Firebase谁是你的用户了
-
实时数据库:Firebase用的是一个实时的NoSQL的JSON数据库,所有的数据都以JSON的形式存在于数据库里面,并且它们还为每个键值做映射(mapping),它可以实现毫秒级的数据推送。还有一点就是客户端可以不和服务器交流直接去访问数据库

- 托管服务:很典型的例子就是英国大选的时候,Sky News利用Firebase来同步大选的数据,这个应用每天都有几百万的访问量,而Firebase就得托管这些数据并同步给几百万的用户,更激动人心的是这个应用在数周之内就被开发出来并投入使用
新功能
-
手机离线支持(Mobile Offine Support)
所有数据都会存在于你的磁盘上,而不仅仅是内存
当你离线时,你的所有数据都会尽量保持最新
当网络重新连接时,应用会马上进行重新同步,使你的数据保持最新
当你重新开启应用时所有东西都会还原
-
支持React Native(React Native Support)
React Native是Facebook的一个开源库,并且Facebook有团队正在使用它
而Firebase则是驱动React Native的后端,并可以完美协作
React会在你的数据模型发生改变时更改你的UI,而Firebase则负责实时更新
总结
Firebase给我最深的印象就是整合了后端框架,这大大改变了原有了软件过程
以往软件开发是先要设计一个数据库,然后再搭一个服务器,最后在应用端进行开发
现在是你启动一个Firebase项目,挂上服务器,有必要还可以挂上第三方API,然后就可以进行开发了
你只需要向Firebase抛后端代码,它就可以自动处理并返回你想要的数据
James Tamplin讲述了很多快速开发的例子,在此我就不一一举例了
如果有兴趣的童鞋,可以点击下面的链接来下载或者在线观看James Tamplin的演讲
Don't Worry,所有翻译我都已经做好了,如果观看过程中发现不足,也欢迎指正
资源
参考
- Martin 20150817凌晨撰写
网友评论