Changes between Version 17 and Version 18 of CodeBestPractices


Ignore:
Timestamp:
2012-12-01 10:33:35 (11 years ago)
Author:
jeroens
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • CodeBestPractices

    v17 v18  
    22This page describes standard solutions for recurring oddities and nasties that we have ran into over the years when building EwE6. 
    33 
    4 == Mono compatibility == 
     4The following issues are discussed on this page: 
     5 * [#Robustness Robustness] 
     6   * [#try_/_cath Try / Catch and Assertions] 
     7   * Creation and disposal of objects and data 
     8 * Cross-platform compatibility 
     9   * Mono 
     10   * Target processor 
     11 * User-interface design guidelines 
     12   * Re-use what's already there 
     13   * Pop-up messages 
     14   * Status feedback 
     15   * Styling 
     16 
     17---- 
     18==Robustness== 
     19===Try / Catch== 
     20 
     21==Compatibility== 
     22===Mono=== 
    523.NET is in theory system-independent, and .NET applications can be deployed under Unix, Linux, MacOS, etc using runtime environments such as [http://www.mono-project.com/Main_Page Mono]. However, not all .NET features work under Mono, most notably the Microsoft.!VisualBasic assembly. This can prove problematic since every Visual Basic project by default receives a reference to this assembly. 
    624 
     
    826 
    927To remove reliance on Microsoft.!VisualBasic simply remove the auto-generated reference in the project properties References page. For most constructs .NET offers a solid alternative (for instance Array.!GetUpperBound()), but for other constructs you may have to be creative (vcTab becomes Convert.!ToChar(9).!ToString() - or do you have a better idea?). 
     28 
     29===Target processor=== 
     30The EwE source code now fully utilizes 64-bit capabilities. In order to make sure that Windows finds the correct 32 or 64 bit Access drivers make sure you always compile your EwE6 main project against x86 or x64, never against AnyCPU in'' Menu > Build > Configuration Manager''. 
     31 
     32Note that 64-bit EwE will not be able to find 32-bit Access database drivers and vice-versa. 
     33 
     34---- 
    1035 
    1136== User Interface design guidelines == 
     
    2247 * Set the 'localizable' property of any forms that you develop to True. 
    2348 
    24 == Target processor == 
    25 The EwE source code now fully utilizes 64-bit capabilities. In order to make sure that Windows finds the correct 32 or 64 bit Access drivers make sure you always compile your EwE6 main project against x86 or x64, never against AnyCPU in'' Menu > Build > Configuration Manager''. 
    2649 
    27 Note that 64-bits EwE will not be able to find 32-bit Access database drivers and vice-versa. 
    2850 
    2951----