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
CODE PROJECT For Those Who Code
  • Home
  • Articles
  • FAQ
Community
  1. Home
  2. The Lounge
  3. Programming peeve of the Day

Programming peeve of the Day

Scheduled Pinned Locked Moved The Lounge
53 Posts 28 Posters 5 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.
  • C Chris Maunder

    if (condition)
    {
    return;
    }
    else
    {
    // Do something else
    }

    cheers Chris Maunder

    L Offline
    L Offline
    Lost User
    wrote on last edited by
    #8

    I would never do it the same, but I can understand it as a hint and that is ok. Of course

    if (condition) return;
    // Do otherwhise

    would be more appropriate On the other hand: Is it really worth to discuss such little things?

    W C 2 Replies Last reply
    0
    • F Forogar

      Obviously it should have been:

      if (!condition)
      {
      // Do something else
      }
      else
      {
      return;
      }

      :cool:

      - I would love to change the world, but they won’t give me the source code.

      L Offline
      L Offline
      Lost User
      wrote on last edited by
      #9

      Whehe, that's evil :D

      Bastard Programmer from Hell :suss: "If you just follow the bacon Eddy, wherever it leads you, then you won't have to think about politics." -- Some Bell.

      1 Reply Last reply
      0
      • L Lost User

        I would never do it the same, but I can understand it as a hint and that is ok. Of course

        if (condition) return;
        // Do otherwhise

        would be more appropriate On the other hand: Is it really worth to discuss such little things?

        W Offline
        W Offline
        W Balboos GHB
        wrote on last edited by
        #10

        Member 15092515 wrote:

        On the other hand: Is it really worth to discuss such little things?

        You're absolutely correct. Let's discuss this, instead: if (condition) { return; } else { // Do something else }

        Ravings en masse^

        "The difference between genius and stupidity is that genius has its limits." - Albert Einstein

        "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010

        L 1 Reply Last reply
        0
        • W W Balboos GHB

          Member 15092515 wrote:

          On the other hand: Is it really worth to discuss such little things?

          You're absolutely correct. Let's discuss this, instead: if (condition) { return; } else { // Do something else }

          Ravings en masse^

          "The difference between genius and stupidity is that genius has its limits." - Albert Einstein

          "If you are searching for perfection in others, then you seek disappointment. If you seek perfection in yourself, then you will find failure." - Balboos HaGadol Mar 2010

          L Offline
          L Offline
          Lost User
          wrote on last edited by
          #11

          Ah ok I see you have a problem with 'if ... else' ;P [Edit] Is see in your profile "In real life, a research chemist." Yep, better stop programming. This because programming follow strict rules while chemistry has only exceptions ;P

          1 Reply Last reply
          0
          • C Chris Maunder

            Your rewrite is how it should be done. Now get off my lawn.

            cheers Chris Maunder

            P Offline
            P Offline
            PIEBALDconsult
            wrote on last edited by
            #12

            Is snot.

            if ( !condition )
            {
            // Do something else
            }

            return ;

            Mike HankeyM 1 Reply Last reply
            0
            • C Chris Maunder

              Your rewrite is how it should be done. Now get off my lawn.

              cheers Chris Maunder

              N Offline
              N Offline
              NotTodayYo
              wrote on last edited by
              #13

              Chris Maunder wrote:

              Your rewrite is how it should be done.

              Why? It's not as clear as to what the code will do. Plus, returning from inside an if is bad form.

              Greg UtasG L M W 4 Replies Last reply
              0
              • F Forogar

                Obviously it should have been:

                if (!condition)
                {
                // Do something else
                }
                else
                {
                return;
                }

                :cool:

                - I would love to change the world, but they won’t give me the source code.

                Mike HankeyM Offline
                Mike HankeyM Offline
                Mike Hankey
                wrote on last edited by
                #14

                Got it before I did! :)

                The less you need, the more you have. JaxCoder.com

                1 Reply Last reply
                0
                • C Chris Maunder

                  if (condition)
                  {
                  return;
                  }
                  else
                  {
                  // Do something else
                  }

                  cheers Chris Maunder

                  M Offline
                  M Offline
                  Maximilien
                  wrote on last edited by
                  #15

                  when you refactor some code and are too afraid to remove else clauses.

                  I'd rather be phishing!

                  1 Reply Last reply
                  0
                  • C Chris Maunder

                    if (condition)
                    {
                    return;
                    }
                    else
                    {
                    // Do something else
                    }

                    cheers Chris Maunder

                    realJSOPR Offline
                    realJSOPR Offline
                    realJSOP
                    wrote on last edited by
                    #16

                    I like single exit points... That code would drive me nuts too...

                    ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                    -----
                    You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                    -----
                    When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                    C 1 Reply Last reply
                    0
                    • N NotTodayYo

                      Chris Maunder wrote:

                      Your rewrite is how it should be done.

                      Why? It's not as clear as to what the code will do. Plus, returning from inside an if is bad form.

                      Greg UtasG Offline
                      Greg UtasG Offline
                      Greg Utas
                      wrote on last edited by
                      #17

                      What's wrong with returning from inside an if? The rule about only returning at the end of a function leads to convoluted code where a flag is repeatedly used to bypass stuff just to reach the end of the function. Pure dross.

                      Robust Services Core | Software Techniques for Lemmings | Articles
                      The fox knows many things, but the hedgehog knows one big thing.

                      <p><a href="https://github.com/GregUtas/robust-services-core/blob/master/README.md">Robust Services Core</a>
                      <em>The fox knows many things, but the hedgehog knows one big thing.</em></p>

                      N N R 3 Replies Last reply
                      0
                      • C Chris Maunder

                        if (condition)
                        {
                        return;
                        }
                        else
                        {
                        // Do something else
                        }

                        cheers Chris Maunder

                        Sander RosselS Offline
                        Sander RosselS Offline
                        Sander Rossel
                        wrote on last edited by
                        #18

                        No religion in the lounge! ;p

                        Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript

                        L 1 Reply Last reply
                        0
                        • P PIEBALDconsult

                          Is snot.

                          if ( !condition )
                          {
                          // Do something else
                          }

                          return ;

                          Mike HankeyM Offline
                          Mike HankeyM Offline
                          Mike Hankey
                          wrote on last edited by
                          #19

                          I believe to be totally proper it should be;

                          if ( !condition )
                          {
                          // Do something else
                          return;
                          }

                          return ;

                          The less you need, the more you have. JaxCoder.com

                          P B 2 Replies Last reply
                          0
                          • Sander RosselS Sander Rossel

                            No religion in the lounge! ;p

                            Best, Sander Azure DevOps Succinctly (free eBook) Azure Serverless Succinctly (free eBook) Migrating Apps to the Cloud with Azure arrgh.js - Bringing LINQ to JavaScript

                            L Offline
                            L Offline
                            Lost User
                            wrote on last edited by
                            #20

                            hehe :thumbsup:

                            1 Reply Last reply
                            0
                            • Mike HankeyM Mike Hankey

                              I believe to be totally proper it should be;

                              if ( !condition )
                              {
                              // Do something else
                              return;
                              }

                              return ;

                              The less you need, the more you have. JaxCoder.com

                              P Offline
                              P Offline
                              PIEBALDconsult
                              wrote on last edited by
                              #21

                              If I had a lawn... :mad:

                              Mike HankeyM 1 Reply Last reply
                              0
                              • Greg UtasG Greg Utas

                                What's wrong with returning from inside an if? The rule about only returning at the end of a function leads to convoluted code where a flag is repeatedly used to bypass stuff just to reach the end of the function. Pure dross.

                                Robust Services Core | Software Techniques for Lemmings | Articles
                                The fox knows many things, but the hedgehog knows one big thing.

                                N Offline
                                N Offline
                                NotTodayYo
                                wrote on last edited by
                                #22

                                Greg Utas wrote:

                                The rule about only returning at the end of a function leads to convoluted code

                                As opposed to it not being clear when and where something can be returned.

                                Greg UtasG 1 Reply Last reply
                                0
                                • P PIEBALDconsult

                                  If I had a lawn... :mad:

                                  Mike HankeyM Offline
                                  Mike HankeyM Offline
                                  Mike Hankey
                                  wrote on last edited by
                                  #23

                                  We have a saying here in the south; Hold my beer[^].

                                  The less you need, the more you have. JaxCoder.com

                                  1 Reply Last reply
                                  0
                                  • L Lost User

                                    I would never do it the same, but I can understand it as a hint and that is ok. Of course

                                    if (condition) return;
                                    // Do otherwhise

                                    would be more appropriate On the other hand: Is it really worth to discuss such little things?

                                    C Offline
                                    C Offline
                                    Chris Maunder
                                    wrote on last edited by
                                    #24

                                    You're asking if it's worth having a pointless whinge about something others do that's outside of one's control? What a silly question!

                                    cheers Chris Maunder

                                    1 Reply Last reply
                                    0
                                    • realJSOPR realJSOP

                                      I like single exit points... That code would drive me nuts too...

                                      ".45 ACP - because shooting twice is just silly" - JSOP, 2010
                                      -----
                                      You can never have too much ammo - unless you're swimming, or on fire. - JSOP, 2010
                                      -----
                                      When you pry the gun from my cold dead hands, be careful - the barrel will be very hot. - JSOP, 2013

                                      C Offline
                                      C Offline
                                      Chris Maunder
                                      wrote on last edited by
                                      #25

                                      Bonus points to JSOP! I actually like having two exit points at most 1st at the very top if your initial sanity checks on input parameters fail. Get that out of the qay early 2nd at the very end of the routine.

                                      cheers Chris Maunder

                                      N R 2 Replies Last reply
                                      0
                                      • C Chris Maunder

                                        Bonus points to JSOP! I actually like having two exit points at most 1st at the very top if your initial sanity checks on input parameters fail. Get that out of the qay early 2nd at the very end of the routine.

                                        cheers Chris Maunder

                                        N Offline
                                        N Offline
                                        Nelek
                                        wrote on last edited by
                                        #26

                                        That's what I like too. If the function is something easy... just one return at the end. If the function is something normal size... what you said. If the function is big... I do a second function to "check all needed stuff" at the beginning and then what you said.

                                        M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.

                                        1 Reply Last reply
                                        0
                                        • Greg UtasG Greg Utas

                                          What's wrong with returning from inside an if? The rule about only returning at the end of a function leads to convoluted code where a flag is repeatedly used to bypass stuff just to reach the end of the function. Pure dross.

                                          Robust Services Core | Software Techniques for Lemmings | Articles
                                          The fox knows many things, but the hedgehog knows one big thing.

                                          N Offline
                                          N Offline
                                          Nelek
                                          wrote on last edited by
                                          #27

                                          If the return is within an "check initialized stuff" at the beginning... nothing. If there are 3 or more returns... it might get so confusing / convoluted as having only one at the end.

                                          M.D.V. ;) If something has a solution... Why do we have to worry about?. If it has no solution... For what reason do we have to worry about? Help me to understand what I'm saying, and I'll explain it better to you Rating helpful answers is nice, but saying thanks can be even nicer.

                                          Greg UtasG 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