面对 NSArray 中的一百万个项目时的 Cocoa 绑定

发布于 2024-09-06 05:41:32 字数 565 浏览 4 评论 0原文

我正在使用 Cocoa 为 MongoDB 编写 GUI。进展顺利,但我不知道如何制作延迟加载的 KVO 属性。如何处理这个问题?

例如,查看 Mongo 集合中的文档。该收藏可能包含一百万件物品。我怀疑我不应该将完整的 2-5 GiB 数据下载到我的 Cocoa 应用程序,然后格式化并显示 20 行。如何实现这一点?

我将我的项目命名为 Mongo Explorer,可在 GitHub 上找到。具体来说,我将如何编码 -[MECollection reload] 到偷懒?我需要为我的 NSTableView 实现数据源委托吗?

I'm writing a GUI for MongoDB using Cocoa. It's going well, but I don't know how to make KVO properties that would be lazily loaded. How does one handle that?

For instance, viewing the documents in a Mongo collection. The collection might have a million items in it. I suspect I shouldn't be downloading the full 2-5 GiB of data to my Cocoa app, then format and display 20 rows. How does one implement that?

I called my project Mongo Explorer, available on GitHub. Specifically, how would I code -[MECollection reload] to be lazy? Do I need to implement a data source delegate for my NSTableView?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

北风几吹夏 2024-09-13 05:41:32

您可以在 NSArrayController 子类中或通过实现 NSTableView 数据源委托来管理延迟加载。前者更通用(您可以将其用于其他视图类型),但后者可能更容易。

You could manage lazy loading either in an NSArrayController subclass or by implementing the NSTableView data source delegate. The former is more general (you could use it for other view types), but the later is probably easier.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文