|
On the positive side, there's no bugs in code that's never executed.
|
|
|
|
|
I like the positive outlook you have.
Don't comment your code - it was hard to write, it should be hard to read!
|
|
|
|
|
jeron1 wrote: there's no bugs
That's not a correct statement, there could still be undetected bugs ![Smile | :)](https://codeproject.global.ssl.fastly.net/script/Forums/Images/smiley_smile.gif)
|
|
|
|
|
If the code is never executed, it'll go undetected for a really looooong time. ![Big Grin | :-D](https://codeproject.global.ssl.fastly.net/script/Forums/Images/smiley_biggrin.gif)
|
|
|
|
|
I'd like a list of all the undetected bugs, please!
If your actions inspire others to dream more, learn more, do more and become more, you are a leader.-John Q. Adams You must accept one of two basic premises: Either we are alone in the universe, or we are not alone in the universe. And either way, the implications are staggering.-Wernher von Braun Only two things are infinite, the universe and human stupidity, and I'm not sure about the former.-Albert Einstein
|
|
|
|
|
Ooops, I must correct my statement: that code is not thread-safe, it might be executed, and bad things would happen...
|
|
|
|
|
Even if the loop was set up right that is not a great way to prepend zeros.
Just because the code works, it doesn't mean that it is good code.
|
|
|
|
|
What a fast algorithm!
[Flags]
public enum Bool {
True, False, ForSure, Maybe, ProbablyNot, Depends, NotDecidedYet, Undefined
}
|
|
|
|
|
Very funny . It happens sometimes!
|
|
|
|
|
So here i am with my task (if you can say that) to do a documentation on 2 of the projects. And while doing it i saw a just brilliant piece of code. For my defense i will say its not mine.
try
{
}
catch (Exception ex)
{
throw ex;
}
So what's your memories of your first documentation? I guess i will have what to tell about mine
Microsoft ... the only place where VARIANT_TRUE != true
|
|
|
|
|
It is always good to see properly implemented try/catch. Too bad the example from your project doesn't have any.
Just because the code works, it doesn't mean that it is good code.
|
|
|
|
|
You know, that's not so bad if there was just on little change. Handle the exception.
As for first retro-documentation my fav was working on a project and for some fupped reasoning we sold the source code. The PHB said that all modules had to be commented with file headers stating the author.
When we came across anything that was [0] of unknown origin or [b] too embarrassing to admit to, we used one of the SysAdmins' names. ![Big Grin | :-D](https://codeproject.global.ssl.fastly.net/script/Forums/Images/smiley_biggrin.gif)
|
|
|
|
|
Nagy Vilmos wrote: When we came across anything that was [0] of unknown origin or [b] too
embarrassing to admit to, we used one of the SysAdmins' names.
Quite interesting numbering scheme. Was documentation created from the project organized similarily?
The good thing about pessimism is, that you are always either right or pleasently surprised.
|
|
|
|
|
[a] Considering how long you've been and [ii] that you read a lot of forum posts I'd assume you [3] know the convention.
|
|
|
|
|
Or at least at least AT LEAST! do use
{
throw;
}
to prevent slicing of the exception type.
(But maybe that's the purpose: outside code can't handle some Exception-.derived exception)
|
|
|
|
|
That's called the Try-Catch-Throw pattern. It is thoroughly described in
Real World Programming Patterns by W.T. and F.
|
|
|
|
|
Maybe i should have added that this function is actually exported from the dll and used in another dll. The main purpose was reading a xml file.
I don't see any point of using try catch with a throw in the first place and this function isn't safe, because when i use it from the other dll for some trivial job as xml reading I assume that the errors are properly treated in it and I would not use try catch, meaning automatically an crash with invalid xml which i expirienced. For me this function is useless when i can just write that code myself.
Microsoft ... the only place where VARIANT_TRUE != true
|
|
|
|
|
Didn't you see the joke in my post? Look at the author's name of the (non-existing) "book" I quoted. The code snippet you showed us is a WTF, isn't it?
|
|
|
|
|
I am blind, omg I just saw it. Well sarcasm is hard to see in forums sometimes. I am sorry
Microsoft ... the only place where VARIANT_TRUE != true
|
|
|
|
|
Argonia wrote: I don't see any point of using try catch with a throw in the first place
I do. Imagine a pretty red dot on the left margin. Every time this code fails the breakpoint is hit and you can see what exception will be thrown to the rest of the code, especially when it is called from many places.
You can find this in "Real World Programming Patterns", chapter IV: "Abuse of debugger". ![Wink | ;)](https://www.codeproject.com/script/Forums/Images/smiley_wink.gif)
|
|
|
|
|
We don't need no stinking documentation...the code is the documentation.
Code documentation done after the fact is probably worse than having to create a user manual! Even worse is documenting someone else's code!
"Go forth into the source" - Neal Morse
|
|
|
|
|
I clearly remember coming across a comment in the source of an old product called C-Scape.
(That was a common meme back then: C-Scape, C-Front, C-Shell, etc. How I laughed.)
"If you don't fail at least 90 percent of the time, you're not aiming high enough."
Alan Kay.
|
|
|
|
|
I must say I see this exact kind of foolishness pretty often, in the questions at the Q&A forum.
—SASergey A Kryukov
|
|
|
|
|
Just saw this in a colleague's code:
for (int i = 0; i < 2; i++)
{
if (i < 1)
{
}
else if (i > 0)
{
}
}
and a little further down:
for (int i = 0; i < 2; i++)
{
if (i < 1)
{
}
else
}
What is this talk of release? I do not release software. My software escapes leaving a bloody trail of designers and quality assurance people in its wake.
|
|
|
|
|
Has he done some kind of operator overloading and is now laughing at your post?
|
|
|
|