Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Brace style

Brace style

Scheduled Pinned Locked Moved The Lounge
comquestion
140 Posts 69 Posters 4 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • N Nemanja Trifunovic

    Whatever makes the boss happy. If I am the boss, probably K&R these days.


    Programming Blog utf8-cpp

    R Offline
    R Offline
    rtalan
    wrote on last edited by
    #43

    Nemanja Trifunovic wrote:

    probably K&R these days

    K&R the dudes or K&R the book? See my post: Even K & R preffered the latter

    B N 2 Replies Last reply
    0
    • K Kevin McFarlane

      Indented braces are argued for in the otherwise excellent Code Complete book. It was one of my few disagreements with McConnell. I prefer style 2 but am OK reading style 1. I can never get used to indented braces.

      Kevin

      J Offline
      J Offline
      John R Shaw
      wrote on last edited by
      #44

      I have never known anyone who used them. But then again I have known few peaple who seem to want to make their life more difficult.

      INTP "Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra

      D 1 Reply Last reply
      0
      • J John R Shaw

        Niall Joubert wrote:

        As long as there are braces, there will be debate, some fierce...

        True. ;) I can switch between both at will and once thought the former was a good idea. I have since learned the errors of my ways, because the former makes it more difficult to see where the block begins or if there is even a block to begin with. Regardless of the project, I automatically use what ever style is currently used if I am modifying or adding to someone else’s code.

        INTP "Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra

        N Offline
        N Offline
        Niall Joubert
        wrote on last edited by
        #45

        John R. Shaw wrote:

        I automatically use what ever style is currently used

        Dexterity... :laugh: Frankly though, as long as tabbing is consistent (preferably spaces though), either style should provide a relatively clear indication of where the blocks are.

        J 1 Reply Last reply
        0
        • K Kyudos

          The second form is preferable, I don't know how anyone can put up with the lack of symmetry in the first form. UGH! X| X| X|

          J Offline
          J Offline
          John R Shaw
          wrote on last edited by
          #46

          Bingo! :laugh:

          INTP "Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra

          1 Reply Last reply
          0
          • S SimonRigby

            LOL That used to be me. Don't know why but lately I switched to the latter.

            The only thing unpredictable about me is just how predictable I'm going to be.

            M Offline
            M Offline
            Muhadeeb99
            wrote on last edited by
            #47

            I like the latter, because it conforms to style of proper programming. the boolean in me says yes.

            All things being equal, tommorrow will never equal today

            B 1 Reply Last reply
            0
            • P Paul Watson

              Why the different styles dependant on language?

              regards, Paul Watson Ireland & South Africa

              Shog9 wrote:

              And with that, Paul closed his browser, sipped his herbal tea, fixed the flower in his hair, and smiled brightly at the multitude of cute, furry animals flocking around the grassy hillside where he sat coding Ruby on his Mac...

              K Offline
              K Offline
              Kevin McFarlane
              wrote on last edited by
              #48

              There seems to be a "house style" for langauges. So Java and JavaScript seems mostly to follow the former. Microsoft-centric code tends to follow the latter.

              Kevin

              1 Reply Last reply
              0
              • R rtalan

                Nemanja Trifunovic wrote:

                probably K&R these days

                K&R the dudes or K&R the book? See my post: Even K & R preffered the latter

                B Offline
                B Offline
                blackjack2150
                wrote on last edited by
                #49

                I guess the Java language is a taboo subject here. The Java code-style guide explicitly mentions the first form as desirable. And I respect that when coding in Java. However, I feel more comfortably with the second and I use that one in C#.

                The more I see of men, the better I like my dog. Blaise Pascal.

                1 Reply Last reply
                0
                • M Muhadeeb99

                  I like the latter, because it conforms to style of proper programming. the boolean in me says yes.

                  All things being equal, tommorrow will never equal today

                  B Offline
                  B Offline
                  Brady Kelly
                  wrote on last edited by
                  #50

                  I like the latter as well, but I don't feel I am in any position to say it's more 'proper'. I would confine my public opinion of what is proper programming is only to ensure all braces match.

                  M 1 Reply Last reply
                  0
                  • P Pete OHanlon

                    Who cares? Does this actually improve the quality of your code in any way? Does the first version produce different code to the second? It doesn't matter. As long as you are consistent and follow internal coding standards then it shouldn't matter which one it is.

                    Deja View - the feeling that you've seen this post before.

                    N Offline
                    N Offline
                    NormDroid
                    wrote on last edited by
                    #51

                    Pete O`Hanlon wrote:

                    Who cares?

                    I care, the first leads to unreadable code and working for many software houses, the first think you learn are the programming standard for that company and at a time top of the list if braces style. You'd get hanged if you coded the brace if(blah de blah){ } If so freakin unreadble!

                    .net is a box of never ending treasures, every day I get find another gem.

                    K P 2 Replies Last reply
                    0
                    • J John R Shaw

                      Simple the second choice, because it makes more since and is easier to read. I used the first one for a few years and eventually found it very annoying when reading the code, because it is too easy to miss where the block starts. The third option would be to indent the braces, but that has never made since to me. Of course writing ‘if ()’ as opposed to ‘if()’ still does not make since to me, unless you are programming in multiple languages, where one requires that (like VB6). And I would like to know which idiot started the trend of writing ‘i++’ instead of ‘++i’, because that is not a matter of formatting but is a matter of understanding the language. Sorry, I almost got carried away for something so simple.

                      INTP "Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra

                      K Offline
                      K Offline
                      Kevin McFarlane
                      wrote on last edited by
                      #52

                      John R. Shaw wrote:

                      Simple the second choice, because it makes more since and is easier to read. I used the first one for a few years and eventually found it very annoying when reading the code, because it is too easy to miss where the block starts.

                      I fully agree.

                      John R. Shaw wrote:

                      he third option would be to indent the braces, but that has never made since to me.

                      Same here.

                      John R. Shaw wrote:

                      Of course writing ‘if ()’ as opposed to ‘if()’ still does not make since to me

                      It makes perfect sense to me. I hate not having the space after the keyword. However, it's not a big deal. It's less of a deal than bracket placement and that's not much of a deal.

                      John R. Shaw wrote:

                      And I would like to know which idiot started the trend of writing ‘i++’ instead of ‘++i’, because that is not a matter of formatting but is a matter of understanding the language.

                      Most of the time it makes no difference and on most of the occasions when it does we shouldn't be writing code that way anyway. I've got used to writing i++ and it just looks nicer to me. However, I'm clued up enough to use ++it for STL iterators. But I haven't done any C++ for over 2 years.

                      Kevin

                      J 1 Reply Last reply
                      0
                      • L lotuspro

                        Doh, I learned to code from that book. For my 2c, I find myself siding daily with Messrs Kernighan and Richie on this point. I can't abide by all those extra line breaks.

                        B Offline
                        B Offline
                        Brady Kelly
                        wrote on last edited by
                        #53

                        Line breaks that do what? Bloat your source? I seldom code methods that need more than my current window, and that is with being anal about braces, as in even for single statement 'if' blocks, e.g. if (someExpression) { SomeStatement; }

                        R 1 Reply Last reply
                        0
                        • P Pete OHanlon

                          Who cares? Does this actually improve the quality of your code in any way? Does the first version produce different code to the second? It doesn't matter. As long as you are consistent and follow internal coding standards then it shouldn't matter which one it is.

                          Deja View - the feeling that you've seen this post before.

                          K Offline
                          K Offline
                          Kevin McFarlane
                          wrote on last edited by
                          #54

                          Pete O'Hanlon wrote:

                          Does this actually improve the quality of your code in any way?

                          No, but religious wars are fun.:) Pointless, but fun.

                          Kevin

                          N 1 Reply Last reply
                          0
                          • N NormDroid

                            Pete O`Hanlon wrote:

                            Who cares?

                            I care, the first leads to unreadable code and working for many software houses, the first think you learn are the programming standard for that company and at a time top of the list if braces style. You'd get hanged if you coded the brace if(blah de blah){ } If so freakin unreadble!

                            .net is a box of never ending treasures, every day I get find another gem.

                            K Offline
                            K Offline
                            Kevin McFarlane
                            wrote on last edited by
                            #55

                            norm .net wrote:

                            I care, the first leads to unreadable code

                            I don't think it's unreadable. But it's less readable. However. many think the first is more readable on the grounds that they can see more lines of code at once. Incidentally there is some variation on the first style if (blah) { } else { } versus if (blah) { } else { } The latter is even worse as the if and else don't line up.

                            Kevin

                            N 1 Reply Last reply
                            0
                            • N N a v a n e e t h

                              Which one you prefer ?

                              if{
                              //do something
                              }

                              Or

                              if
                              {
                              //do something
                              }


                              printf("Navaneeth!!") www.w3hearts.com

                              M Offline
                              M Offline
                              Michael Lewis
                              wrote on last edited by
                              #56

                              Most people prefer the later, perhaps because they can more easily identify matching braces because they line up vertically. However, the former is often used in printed material because it takes up less space.

                              1 Reply Last reply
                              0
                              • R rtalan

                                Nemanja Trifunovic wrote:

                                probably K&R these days

                                K&R the dudes or K&R the book? See my post: Even K & R preffered the latter

                                N Offline
                                N Offline
                                Nemanja Trifunovic
                                wrote on last edited by
                                #57

                                rtalan wrote:

                                K&R the dudes or K&R the book?

                                OK - call it Stroustrup style[^] if you want :)


                                Programming Blog utf8-cpp

                                1 Reply Last reply
                                0
                                • K Kevin McFarlane

                                  norm .net wrote:

                                  I care, the first leads to unreadable code

                                  I don't think it's unreadable. But it's less readable. However. many think the first is more readable on the grounds that they can see more lines of code at once. Incidentally there is some variation on the first style if (blah) { } else { } versus if (blah) { } else { } The latter is even worse as the if and else don't line up.

                                  Kevin

                                  N Offline
                                  N Offline
                                  NormDroid
                                  wrote on last edited by
                                  #58

                                  Kevin McFarlane wrote:

                                  don't think it's unreadable. But it's less readable

                                  Ok I over-exaggerated somewhat, but brace per newline line seems to be the standard in every company I have worked.

                                  .net is a box of never ending treasures, every day I get find another gem.

                                  K 1 Reply Last reply
                                  0
                                  • N N a v a n e e t h

                                    Which one you prefer ?

                                    if{
                                    //do something
                                    }

                                    Or

                                    if
                                    {
                                    //do something
                                    }


                                    printf("Navaneeth!!") www.w3hearts.com

                                    W Offline
                                    W Offline
                                    WhiteSpy
                                    wrote on last edited by
                                    #59

                                    Is'nt it amazing how people constantly complain about code they didn't have to write? I think as long as the person doing the coding is consistant in there style and methods it really doesn't matter. The worst thing in the world would to make a rule about what is the proper way to code. The proper way is any way the compiler can understand...lol.

                                    1 Reply Last reply
                                    0
                                    • B Brady Kelly

                                      Line breaks that do what? Bloat your source? I seldom code methods that need more than my current window, and that is with being anal about braces, as in even for single statement 'if' blocks, e.g. if (someExpression) { SomeStatement; }

                                      R Offline
                                      R Offline
                                      R_L_H
                                      wrote on last edited by
                                      #60

                                      [Message Deleted]

                                      B C U 3 Replies Last reply
                                      0
                                      • J John R Shaw

                                        I have never known anyone who used them. But then again I have known few peaple who seem to want to make their life more difficult.

                                        INTP "Program testing can be used to show the presence of bugs, but never to show their absence."Edsger Dijkstra

                                        D Offline
                                        D Offline
                                        Dan Neely
                                        wrote on last edited by
                                        #61

                                        pascal poisoning. Indenting Begin End pairs actually did make some degree of sense IMO. People who do the same in C style languages are as bad as those using lpszFoo style naming in VB.

                                        -- You have to explain to them [VB coders] what you mean by "typed". their first response is likely to be something like, "Of course my code is typed. Do you think i magically project it onto the screen with the power of my mind?" --- John Simmons / outlaw programmer

                                        J 1 Reply Last reply
                                        0
                                        • G Graham J Newton

                                          Do'h, of course HTML strips spaces! so, try again:     if (condition)         do something;     other code;

                                          D Offline
                                          D Offline
                                          Dan Neely
                                          wrote on last edited by
                                          #62

                                          Wrap it in pre tags to keep the formatting intact.

                                          -- You have to explain to them [VB coders] what you mean by "typed". their first response is likely to be something like, "Of course my code is typed. Do you think i magically project it onto the screen with the power of my mind?" --- John Simmons / outlaw programmer

                                          T 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups