On Tue, Jan 13, 2015 at 5:17 PM, Emmanuel Lécharny <[email protected]>
wrote:

> Le 13/01/15 09:30, Kiran Ayyagari a écrit :
> > On Tue, Jan 13, 2015 at 4:01 PM, Zheng, Kai <[email protected]> wrote:
> >
> >>>> I don't like 4 spaces for XML files, it's quickly too wide, I use 2
> >> spaces.
> >> Agree, let's follow this.
> >>
> >>>> Regarding teh Java code, I suggest we keep what you have (likely Java
> >> code convention), we can vote later on keep it or moving globally to
> >> another convention.
> >> I do like the current one that can be most easily setup in IDEA or
> Eclipse
> >> in my view and is also very concise/compact in lines, but sure I would
> >> follow the best practice if we vote one. The major concern would be we
> have
> >> to find/write a tool to convert the existing codes to use the new style
> if
> >> we have to change.
> >>
> >> Current codes follow in the following style I copied from IDEA template.
> >> ===
> >> public class Foo {
> >>     public int[] X = new int[]{1, 3, 5 7, 9, 11};
> >>
> >>     public void foo(boolean a, int x, int y, int z) {
> >>         label1:
> >>         do {
> >>             try {
> >>                 if (x > 0) {
> >>                     int someVariable = a ? x : y;
> >>                     int anotherVariable = a ? x : y;
> >>                 } else if (x < 0) {
> >>                     int someVariable = (y + z);
> >>                     someVariable = x = x + y;
> >>                 } else {
> >>                     label2:
> >>                     for (int i = 0; i < 5; i++) doSomething(i);
> >>
> > the above block certainly hurts my eyes ;)
>
>
> I can understand. But let's not be religious about that...
>
> definitely not :)

> In any case, even if we keep the Java standard code format, there are
> things that must change for rational reasons :
>
> 1) int someVariable = a ? x : y;
>
> Barely readable. And it's just about using simple variables here, but
> when it comes to complex expressions, the ? and : will be totally
> invisible.
>
> Better write :
>
> if ( a ) {
>     int someVariable = x;
> } else {
>     int someVariable = y;
> }
>
> Way more readable.
>
> 2) someVariable = x = x + y;
>
> Yuk. Everytime I see such construct, I vomit. Again, this is an almost
> guarantee to fuck up big time. Every expression when a normal human being
> have to *think* to understand what the code is doing is a nail in the
> coffin of what computer science is made for : spare a human being the pain
> to think.
>
> 3) for (int i = 0; i < 5; i++) doSomething(i);
>
> Any construction where a loop is done without { and } to enclose the
> expression to execute is dangerous.
>
> At first, you do something like :
>
> for (int i = 0; i < 5; i++);
>
> then you decide to do something and change the code to be :
>
> for (int i = 0; i < 5; i++);
>    doSomething(i);
>
> Now, you are totally fuxked, and it may takes hour to understand why.
>
> *Every* single expression must be enclosed into { and }.
>
>
> besides all that said above, as a person who works on more than one
sub-project of ApacheDS I wish to spare some
pain for my eyes and fingers everyday while switching between source files
in the editor.

> Otherwise, I don't mind if we decide to use Java coding convention. I
> prefer the Directory coding convention, because I'm under no obligation to
> work on a VT-100 since 1985, so with my 1680x1050 display, with 50
> lines/200 char per line screen (and it's a laptop, I'm not mentionning
> those who use a 30" screen here...), and even when using Monaco 11 fonts -
> and being 50 years old, with difficulties to read small font, it tells
> something ;-), I have no problem with spaced code.
>
>
>
>


-- 
Kiran Ayyagari
http://keydap.com

Reply via email to