我开始为一些数学领域编写一个大的python库。你知道吗
所以我有这个数据结构(在类A中定义),它表示一个数学模型。你知道吗
我有一堆较小的函数,我把它们放在一个:
A.f(),A.g(),。。。你知道吗
计算更重要的函数A.X(),A.Y(),。。。最终用户感兴趣的。你知道吗
当然,所有这些函数都依赖于A中的数据
但是一个系统中的方法数量越来越多,越来越混乱。如何将这样一个类分割成更小的部分。
比如说,包含基本操作的数据结构和对该结构进行计算的“方法”?你知道吗
什么是通常的方法和最具Python性的方法?你知道吗
Tags:
对于不属于类公共接口一部分的“private”或helper方法,通常使用单下划线或双下划线作为前缀。你知道吗
一个影响是,例如在类上调用
help
时,不会显示像_my_helper
这样的方法。你知道吗更多细节见this post。你知道吗
您可以使用纯函数方法,并将类用户不应该在对象实例上调用的方法移动到单独的文件中。你知道吗
在纯函数方法中,函数不依赖于任何内部状态,没有副作用,只根据提供的参数计算返回值。你知道吗
举例说明如下:
使用:
当然,将
Shape
类的area
方法提取到另一个文件中的一个单独函数中可能不是一个好主意,但是您可以肯定地将所有“helper函数”移动到单独的文件中,并从类方法中正确地调用它们。你知道吗这也将大大简化助手函数测试。你知道吗
相关问题 更多 >
编程相关推荐