I ask this question many peoples, & they give me answer as bellow
Making use of technology such as programming language Java, which is simple,distributed,object-oriented, interpreted, secure, robust[/B],portable,multi threaded,high-performance and dynamic, adds better performance and best support for latest wave of open, quick web services. Independent Java applets are utilized for Internet programming in Java.
I read following Book J2EE-vs-DotNET But still i didn't know why we choose java?
A glib answer would be: You might choose Java because it does what you need done, and you can master it, or because you're for some reason interested in learning it.
A more interesting question might be why one might choose Java over some other language/technology. Unfortunately, most of the time this question does not result in a fruitful discussion.
Yet another interesting question would be why a company might choose a specific language. Then we're getting into the territory of what the company's existing technology is like, what its developers know, what the technical/architectural constraints are, etc. etc. So there's lots of things to know before a recommendation can be made. [ December 22, 2007: Message edited by: Ulf Dittmer ]
I read following Book J2EE-vs-DotNET But still i didn't know why we choose java?
Well, if you are writing your own applications -- then you can choose whatever language (framework) that you wish to use. Heck, in fact, if you are doing it commercially, you can choose either too.
However, if you don't want to stick your neck out too much. If you want to use systems that are in common use. If you want a choice of vendors. Then your choices are (with J2EE) ... Weblogic (BEA), Websphere (IBM), or even JBoss (Redhat). The Oracle application server is also getting some buzz lately too.
Based on personal observations, what I see most used by clients are (in order of popularity) Tomcat, Websphere, Weblogic, and JBoss. I have quite a few clients who are using DotNET for client stuff, but I have not seen a server side DotNET implementation yet.
I ask this question many peoples, & they give me answer as bellow
"Making use of technology such as programming language Java, which is simple,distributed,object-oriented, interpreted, secure, robust[/B],portable,multi threaded,high-performance and dynamic, adds better performance and best support for latest wave of open, quick web services. Independent Java applets are utilized for Internet programming in Java."
BTW, who are these "many peoples"? The marketing department at Sun Microsystems?
Why choose a hammer? Why choose a saw? These are all tools that do certain things very well, and other things rather poorly.
A computer language is also a tool. Java does some things very well, and other things poorly. So, as we used to say when I worked in the theatre, "Always choose the right tool for the right job".
Just to add on top of what the authors and bartenders said, i would say a few things.
1. No matter what Java supports WORA [Write Once Run Anywhere] - Platform Neutral facility. Also it has got a very good support on security, garbage collection, distributed computing etc.,
2. There are many options to choose in terms of tools, frameworks, technologies, vendors as most of the things related to Java comes as Open Source except some commercial vendors like WebLogic, WebSphere etc.,
3. The term 'Open Source' is NOT only for the implementation of tools built on top of Java Language, it is also for itself. You can very well get to know most of the Core Java stuff and its libraries.
By default, Java itself (JDK) is shipped with its source code, which i don't see in any of the other competing languages in market.
4. Whatever you need as your day-to-day requirements are considered, almost many of them are in place - implemented by some one either half way or mostly full. What you need to just get those in place and customize the existing to cater to your own needs.
Hope this helps a little. [ December 23, 2007: Message edited by: Raghavan Muthu ]
Thanks all sheriffs,bartenders and authors,lowercase dads,ranch hands,greenhorns to giving answer of my little question. I want to response all who response me. 1.Ulf Dittmer sheriff says
A more interesting question might be why one might choose Java over some other language/technology. Unfortunately, most of the time this question does not result in a fruitful discussion.
I am agree with you. 2. Thanks you Henry Wong for giving some technical info. & i want to say about
many peoples
, they are my instructor & local software engineers. & i think 3.Thanks Fred Rosenberger giving answer in simple way.I think this answer is useful to explain to students. 4.Thank you Raghavan Muthu to giving descriptive answer in very good manners with my point of view. 5.Thanks Both Liang Jin & Liang Jin, but i think in your point of you,discussion diverted in .. BTW I am happy to view all the answers.But discussion not sufficient.
I write "discussion not sufficient." because we didn't discuss about security! I am thinking about it & i got 2 queries, 1.If we create software in java which is client server architecture, very important data move from client to server through our java program. Then any person can hack that data or is fishing possible? I not created any software like this but i got this query in mind! 2.Any programmer create program to sale then he/she didn't give source code to client. At the time of compiling source code JVM create Bytecode which it stores in a .class file. In wikipedia's info about Java_bytecode i got info about bytecode, by this info any intelligent person can make changes in our .class file? Is my way of thinking is right or is i think unnecessary things?
1.If we create software in java which is client server architecture, very important data move from client to server through our java program. Then any person can hack that data or is fishing possible?
This is solved with a combination of encryption (prevent viewing of data), authentication (prevent spoofing of client or server), and design. The last is probably the most important.
2.Any programmer create program to sale then he/she didn't give source code to client. At the time of compiling source code JVM create Bytecode which it stores in a .class file. In wikipedia's info about Java_bytecode i got info about bytecode, by this info any intelligent person can make changes in our .class file?
This issue is not specific to Java. Any program -- whether delivered as java classes or as an executable -- can be decompiled. Again, this is a design issue. The client code should not have any data which can be used if it is decompiled. And the server should be designed to not only authenticate the clients, but also restrict authorization, based on the authentication.