Hi,
For my research project at Avans University I have to find out why openEMS makes use of the Eclipse IDE in combination with OSGi-bundles. Is there anyone that could tell me the reasoning and strategy behind this.
Thank you
Hi,
For my research project at Avans University I have to find out why openEMS makes use of the Eclipse IDE in combination with OSGi-bundles. Is there anyone that could tell me the reasoning and strategy behind this.
Thank you
Dear Arshiya,
Thanks for getting in touch. The decisions can be broken down like this:
Choice of Java as programming language
Java was chosen, because it is a widely used, type safe programming language. Compared to alternatives like C or C++ it has some downsides in hard realtime applications, which are per definition outside of the scope of OpenEMS (we consider realtime tasks to be executed on a different system level, like e.g. on a battery management system or the firmware of an inverter.). Compared to alternatives like Python or JavaScript/NodeJS, Java has the benefit of being type safe.
Choice of the OSGi module system
As being the most advanced framework for modular systems in Java, OSGi was a natural choice:
Hope this helps.
Regards,
Stefan
(btw: I realized a colleague of yours also contacted the OpenEMS Association chair. For community questions we usually prefer to answer them here in the OpenEMS Community forum, as it also serves as a documentation for future readers. If you use OpenEMS at University, please consider becoming a member of the OpenEMS Association (it’s free for universities) and use our Zenodo-ID for publications)