Most of these have to do with the deployment:
- The codepage differences.
- 10g / 11g / 9i / 8i ... version differences, you may be using something specific that is not supported by earlier versions (AFAIK, XE is 10g).
- Network/tnsnames.ora/sqlnet.ora
- expdp/impdp or exp/imp, and the different options.
You're not forced to use XE for development, Oracle also allows a development license, so you could run any edition or feature set (even Enterprise or RAC) if you only use it for development, and don't use it in production, they say on the OTN downloads page:
All software downloads are free, and each comes with a Development License that allows you to use full versions of the products at no charge while developing and prototyping your applications (or for strictly self-educational purposes), unless you're using XE on a laptop, or a low-powered VM, I'd go for the enterprise edition on a $300 PC on Linux (Centos?).