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. Other Discussions
  3. The Weird and The Wonderful
  4. A big if

A big if

Scheduled Pinned Locked Moved The Weird and The Wonderful
rubyhelp
43 Posts 13 Posters 1 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

    If the exceptions are forbidden for whatever reason, there is nothing wrong with it.

    Programming Blog utf8-cpp

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

    I agree. I generally prefer to see the normal paths first followed by the error paths. Deep nesting should be avoided other things being equal. But if there is a regular pattern to the code (as in your COM example elsewhere in the thread) this is fine. What is not fine is when you have deep nesting combined with loops and randomly sprinkled if-then-else blocks.

    Kevin

    T 1 Reply Last reply
    0
    • K Kevin McFarlane

      I don't see the problem here (I assume this is VB 6?). It's a linear sequential pattern. If you think about it it's semantically equivalent to a try-catch block.

      Kevin

      T Offline
      T Offline
      Tom Deketelaere
      wrote on last edited by
      #33

      If it was VB6 is would agree but this code was written in .NET and only about a year ago (with visual studio 2005)

      K T 2 Replies Last reply
      0
      • T Tom Deketelaere

        If it was VB6 is would agree but this code was written in .NET and only about a year ago (with visual studio 2005)

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

        OK, in that case he should be shot. :laugh: BTW, why did they keep that stuff in VB .NET? Ditto Option Explicit turned off by default?

        Kevin

        T 1 Reply Last reply
        0
        • K Kevin McFarlane

          OK, in that case he should be shot. :laugh: BTW, why did they keep that stuff in VB .NET? Ditto Option Explicit turned off by default?

          Kevin

          T Offline
          T Offline
          Tom Deketelaere
          wrote on last edited by
          #35

          Yeah and that wasn't even his biggest horror :sigh: I'd laugh if I didn't have to work in the code :sigh:

          1 Reply Last reply
          0
          • T Tom Deketelaere

            If it was VB6 is would agree but this code was written in .NET and only about a year ago (with visual studio 2005)

            T Offline
            T Offline
            Thomas Weller 0
            wrote on last edited by
            #36

            This code was written by someone who is used to VB6, I bet. In this case it's not the code that is awesome - it's the language... :) Regards Thomas

            _Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

            Programmer - an organism that turns coffee into software._

            T 1 Reply Last reply
            0
            • K Kevin McFarlane

              I agree. I generally prefer to see the normal paths first followed by the error paths. Deep nesting should be avoided other things being equal. But if there is a regular pattern to the code (as in your COM example elsewhere in the thread) this is fine. What is not fine is when you have deep nesting combined with loops and randomly sprinkled if-then-else blocks.

              Kevin

              T Offline
              T Offline
              Thomas Weller 0
              wrote on last edited by
              #37

              Kevin McFarlane wrote:

              deep nesting combined with loops and randomly sprinkled if-then-else blocks.

              They also call it reality - at least very often... :((

              _Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

              Programmer - an organism that turns coffee into software._

              K 1 Reply Last reply
              0
              • T Thomas Weller 0

                This code was written by someone who is used to VB6, I bet. In this case it's not the code that is awesome - it's the language... :) Regards Thomas

                _Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

                Programmer - an organism that turns coffee into software._

                T Offline
                T Offline
                Tom Deketelaere
                wrote on last edited by
                #38

                Actually his resume said he had 20+ years of freelance programming experiance and 5 off those in C#.NET (if that is true is another story). He also traded in a 3000€+ a month job for a 2000€ a month job :confused:

                T 1 Reply Last reply
                0
                • T Thomas Weller 0

                  Kevin McFarlane wrote:

                  deep nesting combined with loops and randomly sprinkled if-then-else blocks.

                  They also call it reality - at least very often... :((

                  _Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

                  Programmer - an organism that turns coffee into software._

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

                  :laugh:

                  Kevin

                  1 Reply Last reply
                  0
                  • T Tom Deketelaere

                    Actually his resume said he had 20+ years of freelance programming experiance and 5 off those in C#.NET (if that is true is another story). He also traded in a 3000€+ a month job for a 2000€ a month job :confused:

                    T Offline
                    T Offline
                    Thomas Weller 0
                    wrote on last edited by
                    #40

                    Tom deketelaere wrote:

                    Actually his resume said he had 20+ years of freelance programming experiance and 5 off those in C#.NET

                    Impossible. This is an old school VB programmer. You can clearly see this from the above snippet (I'm not saying it's somehow bad VB6 code, but that it for sure is VB6 code). There must be sth. wrong here... :confused: Regards Thomas

                    _Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

                    Programmer - an organism that turns coffee into software._

                    T 1 Reply Last reply
                    0
                    • T Thomas Weller 0

                      Tom deketelaere wrote:

                      Actually his resume said he had 20+ years of freelance programming experiance and 5 off those in C#.NET

                      Impossible. This is an old school VB programmer. You can clearly see this from the above snippet (I'm not saying it's somehow bad VB6 code, but that it for sure is VB6 code). There must be sth. wrong here... :confused: Regards Thomas

                      _Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning.

                      Programmer - an organism that turns coffee into software._

                      T Offline
                      T Offline
                      Tom Deketelaere
                      wrote on last edited by
                      #41

                      Well I can imagine that at some point he did work with vb6 (hell even I did) but this was written in .NET. And his resume did say 5 years experiance in C#.NET but we (my boss and I) do think he had been lying a bit, since after he was fired here he told one off our customers (where he was being interviewed for a hardware maintenance position) he had experiance in maintaining servers. He could barly keep his desktop pc running while he was here so... (he was actually not allowed to come anywhere near our servers :-P ) The guy had the tendancy to overcomplicated things (currently working on another one off his programs to get the CPU usage and Ram usage down since it olmost takes 100% CPU and more than 100mb ram, for a programme without GUI that's alot)

                      1 Reply Last reply
                      0
                      • T Thomas Weller 0

                        KarstenK wrote:

                        But it allows -as seens- also the opposite.

                        Sure, it allows for bad coding style as well - as every other programming language does even more. Do you really blame C# for being a language that does not impose on its user what to say with it?? Do you have a car that forces you to adhere to traffic rules? Does your money tell you what to buy with it? ... :wtf: Regards Thomas

                        J Offline
                        J Offline
                        johannesnestler
                        wrote on last edited by
                        #42

                        Right - and think about the possibilties of "bad coding" e.g. in C++ (add some mystic macros - done) vs. C#.. I think C# is a lot cleaner and full of nice features. The best programming language I know... (I used one or two during my career... :) )

                        1 Reply Last reply
                        0
                        • C ClementsDan

                          Recently, I stumbled across this little gem. I don't have the exact code handy, but the gist of it is:

                          nErrorCode = cFtpConn.SetHost(HOST);

                          if (nErrorCode == 0)
                          {
                          nErrorCode = cFtpConn.SetUser(USERNAME);

                          if (nErrorCode == 0)
                          {
                          nErrorCode = cFtpConn.SetPassword(PASSWORD);

                            if (nErrorCode == 0)
                            {
                               nErrorCode = cFtpConn.SetPath(PATH);
                          
                               if (nErrorCode == 0)
                               {
                                   nErrorCode = cFtpConn.SetFilename(FILENAME);
                          
                                   if (nErrorCode == 0)
                                   {
                                      // Retrieve files, adding a few _more_ levels of `if`
                                   }
                                   else
                                   {
                                       Log("Error setting filename");
                                   }
                               }
                               else
                               {
                                  Log("Error setting path");
                               }
                            }
                            else
                            {
                               Log("Error setting password");
                            }
                          

                          }
                          else
                          {
                          Log("Error setting username");
                          }
                          }
                          else
                          {
                          Log("Error setting host");
                          }

                          C Offline
                          C Offline
                          cliran
                          wrote on last edited by
                          #43

                          :laugh:

                          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