Objective c 这个方法应该命名为什么?

Objective c 这个方法应该命名为什么?,objective-c,methods,coding-style,naming-conventions,naming,Objective C,Methods,Coding Style,Naming Conventions,Naming,我有一个方法,可以用4个不同的条件(2个布尔参数)对块(比如数据库事务)执行一些操作。在很多惯例中,包括苹果的,block参数应该是最后一个,但是我们不应该把bool参数放在第一个。 你认为我应该给这个方法取什么名字 - (void)performDatabaseTransactionWithSynchronously:(BOOL)synchronously isWritterOperation:(BOOL)isWritter

我有一个方法,可以用4个不同的条件(2个布尔参数)对块(比如数据库事务)执行一些操作。在很多惯例中,包括苹果的,block参数应该是最后一个,但是我们不应该把bool参数放在第一个。 你认为我应该给这个方法取什么名字

- (void)performDatabaseTransactionWithSynchronously:(BOOL)synchronously
                                 isWritterOperation:(BOOL)isWritter
                                        transaction:(TransactionBlock)block

还是其他版本?

我的版本是:

- (void)performDatabaseTransactionSynchronously:(BOOL)synchronously
                              isWriterOperation:(BOOL)isWriter
                                      withBlock:(TransactionBlock)block
现在我用

- (BOOL)performDatabaseTransactionWithDeffered:(BOOL)useDeferred
                             isWriterOperation:(BOOL)isWritter
                                         error:(NSError * __autoreleasing *)error
                                    usingBlock:(TransactionBlock)block


还有其他答案吗?

如果它也必须接受NSError**参数怎么办?@domi,块应该是最后一个参数,请参见答案下的我的注释。只需将它添加到块参数之前。我会把块放在原处,因为块可能包含许多代码字符串,其他参数(在块后面)可能不可见。我同意这一评论,它也在我的惯例中。也许你接受答案,那么?我喜欢你的答案,但我也想听听其他人:)是的,当然,但在我看来,这里最重要的事情是将块参数设置为最后一个,并在参数之前为选择器的各个部分指定有意义的名称
- (void)performDatabaseTransactionSynchronously:(BOOL)synchronously
                              isWriterOperation:(BOOL)isWriter
                                      withBlock:(TransactionBlock)block
- (BOOL)performDatabaseTransactionWithDeffered:(BOOL)useDeferred
                             isWriterOperation:(BOOL)isWritter
                                         error:(NSError * __autoreleasing *)error
                                    usingBlock:(TransactionBlock)block
- (void)performDatabaseTransactionAsynchronouslyWithDeffered:(BOOL)useDeferred
                                           isWriterOperation:(BOOL)isWriter
                                                 transaction:(TransactionBlock)block
                                                  completion:(CompletionBlock)completion