下一代 React 数据库 WatermelonDB
- 授权协议: MIT
- 开发语言: Objective-C JavaScript
- 操作系统: 跨平台
- 软件首页: https://github.com/Nozbe/WatermelonDB
- 软件文档: https://github.com/Nozbe/WatermelonDB
- 官方下载: https://github.com/Nozbe/WatermelonDB
软件介绍
WatermelonDB,下一代 React 数据库,可构建功能强大的 React 和 React Native 应用程序,可在保持快速的同时从数百个记录扩展到数万个记录。
WatermelonDB 是一种在 React Native 和 React Web 应用中处理用户数据的新方法。它针对在 React/React Native 中构建复杂应用进行优化,其首要目标是提高实际性能。简单来说,就是保证的的应用必须快速启动。
当你开始扩展到数千或数万个数据库记录时,会发现对应用的启动速度有很大影响,尤其是在速度较慢的 Android 设备上。WatermelonDB 通过惰性(lazy)来解决问题 —— 除非有要求,否则不加载。而且由于所有查询都是直接以单独的线程在稳定的 SQLite 数据库上执行的,所以即使是在较慢的 Android 设备上,多数查询也会在不到1毫秒的时间内解析,即使有 10,000 条记录!
Usage
首先,定义模型
class Post extends Model {
@field('name') name
@field('body') body
@children('comments') comments
}
class Comment extends Model {
@field('body') body
@field('author') author
}然后,将组件与数据连接:
const Comment = ({ comment }) => (
<View style={styles.commentBox}>
<Text>{comment.body} — by {comment.author}</Text>
</View>
)
// This is how you make your app reactive! ✨
const enhance = withObservables(['comment'], ({ comment }) => ({
comment: comment.observe()
}))
const EnhancedComment = enhance(Comment)即可进行渲染
const Post = ({ post, comments }) => (
<View>
<Text>{post.name}</Text>
<Text>Comments:</Text>
{comments.map(comment =>
<Comment key={comment.id} comment={comment} />
)}
</View>
)
const enhance = withObservables(['post'], ({ post }) => ({
post: post.observe(),
comments: post.comments.observe()
}))
深入理解程序设计
[美] Jonathan Bartlett / 郭晴霞 / 人民邮电出版社 / 2014-1 / 49.00
是否真正理解汇编语言,常常是普通程序员和优秀程序员的分水岭。《深入理解程序设计:使用Linux汇编语言》介绍了Linux平台下的汇编语言编程,教你从计算机的角度看问题,从而了解汇编语言及计算机的工作方式,为成就自己的优秀程序员之梦夯实基础。 很多人都认为汇编语言晦涩难懂,但New Medio技术总监Jonathan Bartlett的这本书将改变人们的看法。本书首先介绍计算机的体系结构,然后......一起来看看 《深入理解程序设计》 这本书的介绍吧!
