I’m having an issue determining which technologies to use in a cross-platform environment. Here’s my thoughts so far.
-
Java is a fine programming language, although I’m not very used to it. And since I prefer having access to things like Linq, delegates and so on that I have gotten used to in C#, I would rather not use it that much. I’m also not a huge fan of how Beans work compared to User Controls.
-
C# is my preferred language. I love it, and I would call myself an expert within the field (not an expert within COM obviously though).
-
C++ is a city in Russia to me. I feel like I’m walking blind when using this programming language, and that things take longer to make compared to C#.
I am making a backup system for a 4 week school project. However, I have greater intentions for it in the future. And for a backup system to succeed, it must have cross-platform compatibility.
So if I made a Class Library in C# .NET COM visible, and used that COM within a Java project containing a GUI, would the whole application still work cross-platform?
My advice would be to focus exclusively on the goal of getting the 4 week school project done. Don’t add unnecessary complexity (such as cross-platform support) that might derail your project. Use the (applicable) technology that you are most comfortable with right now.
Once you’ve finished your course, by all means revisit the project and try to turn it into something bigger / better / more saleable / whatever.
(We can all dream of being the next Bill Gates, but do you seriously think that you will get rich and/or famous with yet another backup program? )