Click here to Skip to main content
15,889,281 members

The Weird and The Wonderful

   

The Weird and The Wonderful forum is a place to post Coding Horrors, Worst Practices, and the occasional flash of brilliance.

We all come across code that simply boggles the mind. Lazy kludges, embarrassing mistakes, horrid workarounds and developers just not quite getting it. And then somedays we come across - or write - the truly sublime.

Post your Best, your worst, and your most interesting. But please - no programming questions . This forum is purely for amusement and discussions on code snippets. All actual programming questions will be removed.

 
GeneralRe: Iterating an Enum? [modified] Pin
notmasteryet15-Dec-08 4:11
notmasteryet15-Dec-08 4:11 
GeneralRe: Iterating an Enum? Pin
PIEBALDconsult15-Dec-08 11:01
mvePIEBALDconsult15-Dec-08 11:01 
GeneralHow to be popular among your colleagues PinPopular
notmasteryet11-Dec-08 15:30
notmasteryet11-Dec-08 15:30 
GeneralRe: How to be popular among your colleagues Pin
Thomas Weller11-Dec-08 20:15
Thomas Weller11-Dec-08 20:15 
GeneralRe: How to be popular among your colleagues Pin
Mycroft Holmes11-Dec-08 21:58
professionalMycroft Holmes11-Dec-08 21:58 
GeneralRe: How to be popular among your colleagues Pin
QuiJohn12-Dec-08 3:18
QuiJohn12-Dec-08 3:18 
GeneralRe: How to be popular among your colleagues Pin
Krirk26-Jan-09 23:09
Krirk26-Jan-09 23:09 
JokeRe: How to be popular among your colleagues Pin
notmasteryet27-Jan-09 5:55
notmasteryet27-Jan-09 5:55 
Enum NumberSize
  EightBits = 8
  SixteenBits = 16
  ThirtyTwoBits = 32
  SixtyFourBits = 64
  HundredTwentyEightBits = 128
End Enum

Smile | :)

IMHO in this particular case, there is no effective use of the enumeration (see #4). There is no checks on invalid enumeration values either; most common call of the CBin_Number function was performed with argument CType(size, NumberSize) where size is an integer.

It is hard to find best practices for enumerations since it just grouped constants. Usually all enumeration replaced by the Strategy Pattern during refactoring (see http://sourcemaking.com/refactoring/replace-type-code-with-state-strategy[^] or http://www.jeremyjarrell.com/archive/2007/10/28/64.aspx[^]).

Type casting to enumeration datatype does not do validation, so a callie have to validate enumaration value by itself. However, by decalaring enumeration as

Enum NumberSize
  Bit_8
  Bit_16
  Bit_32
  Bit_64
  Bit_128
End Enum


you may perform range (in)validation InputNumberSize < NumberSize.Bit_8 OrElse InputNumberSize > NumberSize.Bit_16, it also allows compliler to optimize Select statement code execution.

Do you think change NumberSize to an integer type would introduce more problems?
GeneralDo not trust a computer... PinPopular
notmasteryet11-Dec-08 12:51
notmasteryet11-Dec-08 12:51 
GeneralRe: Do not trust a computer... Pin
Lutosław12-Dec-08 9:57
Lutosław12-Dec-08 9:57 
GeneralAvoid return statement in the middle - horror or not? Pin
Georgi Atanasov5-Dec-08 12:01
Georgi Atanasov5-Dec-08 12:01 
GeneralRe: Avoid return statement in the middle - horror or not? PinPopular
Robert.C.Cartaino5-Dec-08 14:32
Robert.C.Cartaino5-Dec-08 14:32 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
John M. Drescher11-Dec-08 8:24
John M. Drescher11-Dec-08 8:24 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
PIEBALDconsult5-Dec-08 15:07
mvePIEBALDconsult5-Dec-08 15:07 
General[Message Deleted] Pin
Robert.C.Cartaino6-Dec-08 5:47
Robert.C.Cartaino6-Dec-08 5:47 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
harold aptroot6-Dec-08 6:48
harold aptroot6-Dec-08 6:48 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
Robert.C.Cartaino6-Dec-08 11:52
Robert.C.Cartaino6-Dec-08 11:52 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
harold aptroot6-Dec-08 12:10
harold aptroot6-Dec-08 12:10 
GeneralRe: Avoid return statement in the middle - horror or not? PinPopular
PIEBALDconsult6-Dec-08 13:44
mvePIEBALDconsult6-Dec-08 13:44 
GeneralRe: Avoid return statement in the middle - horror or not? PinPopular
Graham Bradshaw6-Dec-08 7:43
Graham Bradshaw6-Dec-08 7:43 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
PIEBALDconsult6-Dec-08 11:16
mvePIEBALDconsult6-Dec-08 11:16 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
Mladen Janković9-Dec-08 5:25
Mladen Janković9-Dec-08 5:25 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
PIEBALDconsult9-Dec-08 6:53
mvePIEBALDconsult9-Dec-08 6:53 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
johannesnestler23-Dec-08 1:56
johannesnestler23-Dec-08 1:56 
GeneralRe: Avoid return statement in the middle - horror or not? Pin
ehuysamer5-Dec-08 22:25
ehuysamer5-Dec-08 22:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.