The choice between java and dotnet ?
There are a lot of people who are so confused when they cannot to choose which direction (java and dotnet) that you’ve driven before are choosing Java, but heard .NET or too well to wonder, you have choose .NET already but sorry, you want choose both but are afraid not afford to pursue. I myself have experienced such situations but reading through some posts on a forum for IT then I realized many things. I think this article is very helpful to many young people start learning programming …
At first, we will research about the primary advantages and disadvantages of java and .net:
Advantage java and dotnet:
- Ease of development, very good support tools (Visual Studio)
- Development of the interface is very easy on Windows.
- Work well with all other Microsoft technologies (COM, DCOM)
- Architectural design is very good.
- Strong community, so is the technology open source -> multiple new technologies appearance from the community (eg Hibernate, Seam, Spring …)
- Running on multiple platforms of different possible (especially on linux).
Defect java and dotnet:
- Only works well with Microsoft products.
- Closed source but the design and specification is open (hence has the Mono)
- Replace the programmer too much -> programmers are created according the standard of Microsoft (normally There are a lot of differences than the rest of the world standards).
- To intervene in the architecture underneath is slightly difficult.
- While there was Mono Project for Linux, but the application written in .NET almost exclusively run on Microsoft’s operating system.
- Must pay for Microsoft to develop.
- Difficult to develop, especially for debug.
- Tools support is not as strong, simple, free, no one cared worry all you get.
- It seems that the slower pace of the program NET
- Secure .NET source code is not as good
In my opinion, you do not need to weigh what thoughts should follow, because when you’ve mastered Java you can jump over .Net extremely easy, and vice versa.
To master the syntax and programming of 1 in 2 languages (java and dotnet), for people not to know anything about programming it takes about 3 to 9 months. But once mastered by 1 in 2 languages, you can study the remaining language in 1-2 months.
About the tool and framework support, they are too many. You certainly cannot predict exactly which ones need to work later, so you while learning just hold some framework. Once you’ve mastered the syntax, basic techniques and mastering a few frameworks are learning new working framework is very easy.
In short, which language (java and dotnet) would you like you pick it, but in the learning process also browsed through the remaining languages. And I recommend the distribution of the appropriate time, to still have time to learn more about other something as: computer architecture, algorithms …
And note that you must learn to study technology. Different in that one is able to grasp new technologies faster, not who knows many technologies. Do not be like many lamented that technology is not stable, then do not study for long.
This article does not aim at comparing the technical aspects between Java and .NET technology which will go to analyze whether you should choose which direction and why.
If you’re wondering whether to choose any direction and you really good, I recommend that you select both directions. Research directions never excessive (admit).
But at the same time, you cannot learn two or more direction, you choose a course and learn it thoroughly, once mastered a technology and then you can move on to the technology More to learn.
If you are constantly chasing new technology then you would have to run forever without doing anything. Technology changes every day, every hour, so you’re learning one world has launched over 100 new ones already.
Overall, according to my personal experience, the need to develop a major software running on the Windows operating system, I will use .NET, because the development is very fast and easy. However, if you develop a large application (Enterprise) and need to work on many different platforms, I’ll use Java. Although more difficult to develop, but thanks to very good architectural design, will make stable performance and higher scalabilityTags: java and .net, java and dotnet, java or dotnet