Realm 推出了适用于 React Native 的新数据库

  • James Chesters
  • 朱伟健

2016 年 2 月 28 日

话题:JavaScript语言 & 开发

Realm 日前为 React Native推出了新的数据库。React Native 是 Facebook 的开发平台,该平台使用 JavaScript 构建原生应用。

Realm 的这个移动数据库设计目的是“用于 react 类型应用的开发,具有 live 对象和 change 事件并支持单向数据流”。其旨在通过一个专门为 JavaScript 设计的直观的界面,让开发者使用 Facebook 的 JavaScript 开发平台快速建模、存储和查询数据。

Realm React Native 看起来像这样:

const Realm = require('realm');

class Person {}
Person.schema = {
    name: 'Person',
    primaryKey: 'name',
    properties: {
        name: 'string',
        age: {type: 'int', default: 0},
    },
};

const realm = new Realm({schema: [Person]});

// Query
let people = realm.objects('Person', 'age >= 17');
people.length // => 0

// Write
realm.write(() => {
    savedPerson = realm.create('Person', {
        name: 'Hal Incandenza',
        age: 17,
    });
});

// Queries are updated in real-time
people.length // => 1

宣布公司转向 JavaScript 开发时,Realm 的产品副总裁 Tim Anglade 说:“React Native 反映出许多我们认为最重要的优先事项,例如提供原生的 UI 体验和 react 类型的跨平台功能,这有助于开发人员加速开发过程”。

“我们发现客户对于 React Native 兼容性有较大需求,很高兴成为第一家提供集成支持的第三方平台。” Anglade 表示。

目前使用这个集成数据库的是外包任务初创公司TaskRabbit。Brian Leonard 是该公司的联合创始人和 TaskRabbit 网站的首席架构师。他说以前管理跨平台 APP 的代码时让人“精疲力竭”,但是使用 Realm 和 React Native 让他们可以将 APP 构建在无缝对接的跨平台系统上。Leonard 表示这个改变让团队的生产力翻了两番。

Realm发布了对标结果,宣称自己是最快的 React Native 数据库,他们评论道:“尽管我们一直建议每个人都应该在他们自己的用例中进行测试,但是我们在移植代码后总是能发现性能的巨大提升。”

Realm 的公告在开发者社区得到了许多积极地回应,包括许多参加 Facebook 的 React.js 会议的出席者。他们在 Twitter 上对该新闻发表了一些评论。

Hacker News上该公告链接的评论中,TaskRabbit 的 Brian Leonard 首先表达了对 Realm 团队的祝贺。他说:“我们一直都很高兴试用它,这是对标准的 flux 模型的简易替代方案。”Realm 贡献者Kristian Dupont评论道:“我觉得这是两个生态系统进行的一场激动人心的竞赛,非常期待看到它未来的发展。”

Realm 的团队表示他们计划将来增加对于Cordova、PhoneGap、IonicNode.js(V8)的兼容性支持

查看英文原文:Realm Launches New Database for React Native

JavaScript语言 & 开发