ufo22940268
V2EX  ›  Android

是不是现在写 java 代码都流行不折行了

  •  
  •   ufo22940268 · Dec 16, 2014 · 15732 views
    This topic created in 4218 days ago, the information mentioned may be changed or developed.
    https://github.com/ksoichiro/Android-ObservableScrollView/blob/master/observablescrollview-samples/src/main/java/com/github/ksoichiro/android/observablescrollview/samples/FlexibleSpaceToolbarScrollViewActivity.java#L106

    今天刚刚看到这个代码,一行远远超过70个字符了吧。虽然说也许对于现在来讲70个字符的限制已经更不上潮流了,那这么长都不需要折行吗?

    我还在[SO](http://stackoverflow.com/questions/27180507/android-studio-format-code-wont-auto-break-line/27180581#27180581)上问了一下为什么Android Studio在格式化代码的时候不自动换行。
    6 replies    2014-12-18 19:50:00 +08:00
    ming2050
        1
    ming2050  
       Dec 16, 2014 via Android
    我喜欢折行,如果你显示器横向分辨率足够,不折行也可以
    vietor
        2
    vietor  
       Dec 16, 2014 via Android
    换行是为了适应显示器
    v94Gp9JsQRL0r43E
        3
    v94Gp9JsQRL0r43E  
       Dec 16, 2014
    没什么流不流行的,不换行就是太任性,坑队友
    rrrrutdk
        4
    rrrrutdk  
       Dec 17, 2014   ❤️ 1
    我不喜欢将一行折成多行。
    而是想尽办法不写出那样的代码。

    Linux内核的代码约定里说如果一行超过80字宽,
    那么一定是你需要修改你的程序了。

    但是Java的命名规范以及语法冗余,就会出现
    AInterface<LongButOkayType> anInstance = new AnImplementation<LongButOkayType>();
    t.longAndMustNotBeAbbreviated(parameterA, parameterB, parameterC, .....);

    没人能忍受t.lAMNBA这样的方法名,同样Java里也不会待见t.some_underscore_func();

    所以,我使用2个空格缩进,方法尽量不超过三个以上参数
    多个表达式逻辑运算使用有意义的变量:
    var isFriendly = booleana && booleanb || booleanc && booleand;
    var isMerciless = booleana && booleand || booleanb && booleanc;
    而不是丑陋的
    if ((booleana && booleanb || booleanc && booleand)
    || (booleana && booleand || booleanb && booleanc)

    同时不滥用链式调用与嵌套调用:
    sb.append("afdsafdsafas").append().append().append()......append();
    first(second(third(fourth(fifth()))));

    在这些手段下,基本不会有超过80字符的,如果有,控制行最大字符数在90以内也是可以接受的。

    折行只会打断代码的流畅性,扰乱阅读者的视线,过长的行会扭断他的脖子。
    feilaoda
        5
    feilaoda  
       Dec 17, 2014
    现在都是放到120个字符再这行

    80太少
    zhurenhu
        6
    zhurenhu  
       Dec 18, 2014
    显示器越来越宽了。貌似现在程序员都很流行21:9的显示器。
    那一行可以显示多少字符,何必换行。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2781 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 06:47 · PVG 14:47 · LAX 23:47 · JFK 02:47
    ♥ Do have faith in what you're doing.