Portability
Portability is hindered by:
- Different processors
 
- Different operating systems
 
- Different development tools and libraries
 
Porability can be enhanced by:
- Using only standard features
 
- Avoiding exotic and cutting edge features (even if standard)
 
- Avoiding undocumented features
 
- Not depending on binary formats and the host's byte order
 
- Using only standard or portable libraries
 
- Storing data in plain text files, possibly with XML markup