Logo 
Search:

Java Answers

Ask Question   UnAnswered
Home » Forum » Java       RSS Feeds
  Question Asked By: Adelina Fischer   on Jul 30 In Java Category.

  
Question Answered By: Russell Burns   on Jul 30

Java has created a new wave in the programming
world, by introducing the
concept of managed execution. And it succeeded in what
it was created for. A
managed program means that all the memory needs of the
application are
handled by the platform itself. A platform means
anything over which the
program runs. Suppose a program is designed for intel
processors, it uses
the assembly language or opcodes which are designed
and are used by that
particular processor itself, so the program is running
on intel platform.
Samething applies to windows platform or Linux
platform or Java Platform or
.Net platform. As the program is managed, the
advantage of the application
is that it can be ran over any OS, because there is
little or no need to
interact with the base operating system, when you
program with Java. Even
.NET is designed in a platform independent way and it
is also a managed
environment. But for programs, designed in any managed
environment, to run
on any OS, there must be a runtime environment that
takes care of converting
what you programmed to what the system understands.
For thise Java uses Java
Runtime Environment(JRE). and .NET uses .NET Runtime
Environment. But JRE is
there on several different Operating Systems,
implemented by either Sun
Microsystems itself or other companies. But .NET
runtime is there only on
Windows Operating System, so people say that .NET is
not platform
independent. Infact there are some open source
implementations going on to
develop .NET for other platforms, like Mono for Unix
OS.
And another major difference  between Java and .NET
is that Java converts
Java source code into object code, which infact suits
for Java programming
language itself. .NET on the other hand converts
source code into IL
(Intermediate Language). This is somewhat similar to
Assembly language, but
it is not a low level language. This IL gives .NET a
major advantage. Any
compiler can be developed that can convert whatever
source code into IL. So
the result is that many languages can be used on .NET
platform, not
restricting to any single language. Therefore, there
are C#, J#, VB.NET,
VC++.NET, etc., And the result is Language
Independence. You can program on
any language that you want for which a .NET compiler
exists. And one more
advantage is that a library, if carefully designed can
be used by any
language on .NET platform. So if you design a new
compiler that supports
.NET, then whole .NET library can be used by the
programs developed by
people using your compiler. This makes .NET a good
platform. And moreover
.NET is more flexible then Java, interms of
programming. It's not that a
particular thing can't be programmed in Java, but
there are many things in
.NET that reduce the amount of code that you need to
write if you are using
Java. And Java always had a badname that it uses
naming of variables, which
are confusing. .NET is designed after studying the
weak points of Java, so
.NET has edge over Java on this Issue.
The first and foremost thing that gives Java an
edge over .NET is that
it is platform independent. And Java is already
available on many platforms
and it is installed on many desktops also. So the
program that you might or
already developed, will be used many people than if it
is designed using
.NET. Java is there since 9 years, and it is well
developed since then and
is used alot since it is designed. Java is well tested
and has been used in
various fields, so if you employ Java, it is quite
sure that you will get
some help anywhere. And another thing is that Java is
opensource and is
free. ofcourse .NET is also free, but there are a
number of free IDE's for
Java like NetBeans, that are as good as Visual
Studio.NET and are also free.
And Java can be used on Linux, which is free. so on
overall basis, for using
Java, you just need to buy hardware and everything
else is free. For .NET,
there are some free good IDE's but not as good as
Visual Studio.NET which is
unbeatable, but comes at a price, a heavy price
indeed. And moreover, .NET
has been there since 2001 only, and it needs somemore
time for people to
really install .NET runtime on there systems, and
developers like you to use
it.
And if you ask me, whether you like Java or .NET,
I personally like .NET
(may be you saw that inclination in my text). Anyway I
think I answered what
you asked. Hope you understood.

Share: 

 

This Question has 3 more answer(s). View Complete Question Thread

 
Didn't find what you were looking for? Find more on java vs .net Or get search suggestion and latest updates.


Tagged: