gpt4 book ai didi

python - Cocoa 客户端/服务器应用程序

转载 作者:太空狗 更新时间:2023-10-29 18:31:05 24 4
gpt4 key购买 nike

Cocoa 中是否有一种方法目前被认为是创建多层或客户端服务器应用程序的最佳实践?

我是一名经验丰富的网络开发人员,我非常喜欢 Python。虽然我是 Cocoa 的新手。我正在编写的应用程序是一家大型医院的患者管理系统。随着时间的推移,系统预计会存储大量数据,但在单个 session 期间传输的数据非常少(主要是文本)。假定通信发生在本地网络(有线或无线)上。当然,它必须高度安全。

我能想到的最好办法是编写一个 Python REST Web 服务并通过 Cocoa 应用程序连接到它。也许我什至会使用 Python 来编写 Cocoa 应用程序本身的代码。

看看 Cocoa,我在 Cocoa 中看到了非常棒的技术,比如 CoreData,但我找不到任何类似的客户端服务器开发技术。我只是想确保我没有遗漏任何东西。

你怎么看?

将不胜感激现实世界的例子。

提前致谢。

最佳答案

如果您同时控制客户端和服务器,并且可以将客户端限制为仅使用 OS X,我支持 Marc 的回答。 Cocoa 的分布式对象是一项了不起的技术,它使 RPC 风格的客户端-服务器应用变得非常简单。

如果上述要求对您来说过于严格,您在 Cocoa 世界中仍然有很多选择:

  1. 您可以使用 PyObjC 在 Python 中编写整个客户端应用程序。通过这种方法,您可以使用您熟悉的 Python 标准库中的标准网络代码。 Twisted还与 Cocoa 运行循环(PyObjC 示例代码中的示例)很好地集成,并且我在 Cocoa 应用程序中使用 Twisted 进行网络通信取得了很多成功。如果你选择走这条路,你可能想要在 Objective-C 中编写客户端应用程序并将 python 代码作为插件加载(使用 NSBundle)。 PyObjC 的 py2app 可以从 python 代码编译可加载的包。

  2. 您可以使用 NSURLConnection 对基于 HTTP 的服务器进行高级访问。

  3. 降低抽象级别,您可以使用 Cocoa 的 NSStream 来实现您的网络协议(protocol)。类文档是 here ,带有指向演示 HTTP 和 SOAP 协议(protocol)的示例代码的链接。

  4. 您可以进一步降低级别并使用 CFNetwork 类。 NSStream 基于 CFNetwork,但您可以使用 CFNetwork 对线路进行较低级别的控制。

最后,用于客户端-服务器架构的 Apple 技术是 WebObjects框架。

关于python - Cocoa 客户端/服务器应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/409354/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com