有没有人对这些类型的方法使用更漂亮的命名约定?我知道更好是主观但我恨他们。方法应该(通常)命名为动词。 Object.Move(),Object.Talk()not Object.PreDatabaseUpdateStep()。
我一直在使用Think()作为我的PreUpdate(),与Update()相比,它通常是纯逻辑,而Update()通常是纯物理。我还没想到PostUpdate()还有什么更好的。
建议?
答案 0 :(得分:0)
务实的程序员应该始终努力设计代码以便于阅读。名称PreUpdate
,Update
和PostUpdate
比Think
这样的名称更清楚地传达了他们的意图。
同样,我们可以看看其他项目的灵感来源。例如,JUnit套件使用与@Before
和@After
(以及@BeforeClass
和@AfterClass
)注释类似的命名约定。按照惯例,iOS委托模式通常指定“Will”和“Did”(如WillUpdateFoo
和DidUpdateFoo
)方法。
答案 1 :(得分:0)
PreUpdate
确实不具体。也许你可以更清楚地了解这些方法中发生了什么。
无论您在Pre和Post中找到什么替代品。在不同情况下使用相同的术语时,它不能具有特定信息。所以没关系。
PrepareUpdate
和FinishUpdate
呢?
C#中有这种事件的命名约定,它使用了时态。在更新发生之前调用Updating
,之后调用Updated
。就个人而言,我认为Pre和Post对每个人都更清楚,但我也使用这个命名惯例。