2012-04-13 63 views
-1

至于编码风格,我已经遇到了两个问题,我只是想知道什么是解决它们的最佳方法?格式化大型方法

第一个是有很多参数的方法,我一直在做两件事情之一(为了演示使用Java)。

someObj.bigMethod(someData, 
        moreData, 
        evenMoreData, 
        moar, 
        andMore); 

someObj.bigMethod 
    (
     someData, 
     moreData, 
     evenMoreData, 
     moar, 
     andMore 
    ); 

有时还打算一路回。

至于方法声明我赞成#1

class SomeClass 
{ 
    public void someMethod(int someData, 
          int moreData, 
          int evenMoreData, 
          int moar, 
          int andMore) 
    { 
     // Blah 
    } 
} 

对于我喜欢#2,因为它是更快地写出来(是的,我很懒惰),并得到调用的完成工作。但显然这可能会让人困惑,因为它使用了类似于我对花括号进行格式化的方式,并且一见钟情,人们可能会认为它是某种东西的声明,我不知道,当我是那个人时很难分辨出来实际上写它。

我碰到的另一个问题,虽然不是很常见,但是当一个方法处于类内某个类的类中时等等。我甚至不知道如何格式化这个混乱,我只是猜测首先将它放在一个不好的做法,但是,嘿,它发生了。

someObj.anotherObj.yetAnotherObj.betterThanTheNextObj.nextObj.someMethod(); 

也许不是这么极端,但类似,特别是当名字很大时。

回答

0
  1. 对于声明,我也肯定会赞成方法1

  2. 的方法调用:

    :如果间接链变得很长,你可以随时通过变量剪var currentAnotherObj = someObj.anotherObj.yetAnotherObj; var currentNextObj = currentAnotherObj.betterThanTheNextObj.nextObj;

    currentNextObj.someMethod();

HTH