在第一次使用python时,我发现我最终在同一文件中编写了多个类,这与Java之类的其他语言(每个类使用一个文件)相反。
通常,这些类由1个抽象基类组成,其中1-2个具体实现的用法略有不同。我在下面发布了一个这样的文件:
class Logger(object):
def __init__(self, path, fileName):
self.logFile = open(path + '/' + filename, 'w+')
self.logFile.seek(0, 2)
def log(self, stringtoLog):
self.logFile.write(stringToLog)
def __del__(self):
self.logFile.close()
class TestLogger(Logger):
def __init__(self, serialNumber):
Logger.__init__('/tests/ModuleName', serialNumber):
def readStatusLine(self):
self.logFile.seek(0,0)
statusLine = self.logFile.readLine()
self.logFile.seek(0,2)
return StatusLine
def modifyStatusLine(self, newStatusLine):
self.logFile.seek(0,0)
self.logFile.write(newStatusLine)
self.logFile.seek(0,2)
class GenericLogger(Logger):
def __init__(self, fileName):
Logger.__init__('/tests/GPIO', fileName):
def logGPIOError(self, errorCode):
self.logFile.write(str(errorCode))
如上所示,我有一个Logger基类,下面有几个实现方面的区别。
问题: 此标准适用于python还是任何语言?如果使用此实现,可能会出现什么问题?
编辑:我并不是真正在寻找有关此特定文件的指导,而是从更一般的意义上讲。如果该类最终是3-5个中等复杂的方法,该怎么办?那么将它们拆分会有意义吗?说应该分割文件的临界点在哪里?