You are right, and your friend made it poorly understood. In addition, from your question, I see that there are several problematic issues, I do not know where to start, so I just listed them, but not in any specific way. But the basic rule is for you to read: you have to accept that it’s easier than Einstein said: “Everything should be made as simple as possible, but not simpler” (or something like that, I don’t remember the exact quote).
- The concept of front and back end does not really apply to a desktop application. Rather, you want to use the MVC pattern to separate problems. Wikipedia can be a good place to start exploring or browsing.
- Why use a socket (which is completely unnecessary) if you do not need it. This is the first reason this is a bad idea, because you don’t need to use sockets if everything is done in a language that runs in the same process space (your application is a desktop or stand-alone application).
- Similarly, why is XML (again unnecessary). Not necessary, because you can just pass Java or C # objects. With XML, the noise problem first occurs as tags are added to the true data. Then there is time for parsing, for building XML, additional libraries potentially, etc. Thid will be all the code that is introduced in your friendly approach.
These are the most obvious reasons. There are other reasons for the prospect of a manager or company:
- To save this application, a manager or company must hire 2 different skill sets. This may not be true, as most programmers are multilingual. But this is not always the case.
- As part of the deployment, you are now forcing your users to have both the JRE and the .NET framework, only to be able to run your application. And any of them is not quite small.
source share