Duplicate of: Debug VS Release in .net
Why there are 'Debug' and 'Release' modes on build in dot net application?
What is the major technical difference between them?
Duplicate of: Debug VS Release in .net
Why there are 'Debug' and 'Release' modes on build in dot net application?
What is the major technical difference between them?
The Main difference as i understand is that in Debug Mode the whole symbol information which is used by the debugger is stored along with the progra, so that if a developer wants to debug the application before releasing he may do so, by attaching to any debugger. You might've noticed the .pdb files in the debug folder. Also the size of the executable is fairly larger. However in Release mode, the debugger symbol information is omitted assuming that the end user is going to use the application so he must not be provided with the application symbols.
You can think of the symbols as the information proivided to the debugger to understand what local variables, what functions, where breakpoints are set and all sorts of information so that it can precisely tell you what part of code is being executed currently.
Yeah right, you can even debug in release mode [:)]. there are elaborate processes to do it . However the release build is optimized for speed and performance. Also Micorsoft End user licence agreement states that you cannot deploy your debug files on a client system.
Differences :
And many others. Release is sensibly faster but offers no real debug support. For debugging there is... the debug mode :)