我是一名 C 程序员,而且我对 Python 的掌握相当不错。但我仍然无法理解 Python 的 OO 魅力。
这是我目前的设计问题:
最终的“产品”是一个用 Python 创建的 JSON 数据结构(并传递给 Javascript 代码),其中包含不同类型的数据,例如:
{ type:url, {urlpayloaddict) }
{ type:text, {textpayloaddict}
...
我的 Javascript 知道如何解析和显示每种类型的 JSON 响应。
我对这个设计很满意。我的问题来自于在 Python 代码中处理这些数据。
我从各种来源获取数据:MySQL、表查找、对 Web 服务的 API 调用...... 基本上,我应该创建一个父类(super class) responseElement 并针对每种类型的响应专门化它,然后在 Python 代码中传递这些对象的列表,或者我应该简单地传递包含键值对中的响应数据。答案似乎导致了截然不同的实现。
我有点不确定我是否变得太对象快乐 ??
请您参考如下方法:
在我看来,它基本上是这样的:你应该尽量在它们相同的地方保持相同,并在它们不同的地方分开它们。
如果您对数据执行完全相同的操作,并且它都可以用通用格式表示,那么就没有理由为它设置单独的对象 - 尽快将其转换为通用格式,不要在实现没有区别的事情时不要重复自己。
如果每种类型/数据源都需要特定于它的专门操作,并且在您的 Python 代码正在处理的层之间没有太多重叠的方式,那么将事物保存在单独的对象中,以便您维护专用代码与其能够操作的特定数据之间的紧密关联。
