When Java is the Right Choice for Web Applications

I have been doing some research in introducing programming experience and moving to the Java programming market, thanks to a combination of personal interest and local market forces. As you can tell from the name, most of my experience has been in building websites and applications, and I would like to transfer my previous experience as much as possible.

One thing I couldn’t find a specific answer to when should look like a website or a web application developer to solve a Java solution, compared to other options that are currently on the market. What options would Java provide for the designer to choose Java as the primary coding language for creating a project on?

Thank you for any constructive answers that may result from this request.

EDIT: I should have included a caveat if other factors are equal, for example, if the hardware, software, developer skill in java depends on where they should be for such projects, etc.

+7
java web-applications
source share
10 answers

Consider this also: Java tends to run on application servers where there is a constant global program, and separate threads / processes appear to serve separate requests. However, if the main global VM curves are for some reason, your application may go down. Of course, you get application / system level resources that you can initialize and use continuously in all requests.

Other environments, such as PHP, basically tear down and restore the entire environment for each request. You can code persistence of application-level data using a database, but you do not get it for free. On the other hand, if one php process creaks while processing application data, it will not kill the whole system, since the whole environment is simply torn / rebuilt for the next request.

+4
source share

The main factor is what your developers can do. If you have a bunch of Java developers, go with Java.

+13
source share

Consistent with many of the previous posters, but one possible consideration is speed.

If you use a very simple LAMP stack server by running PHP4 or lower, Python or Perl, if you do not install pre-compilation, all of your scripts will have to be recompiled at runtime. This can cause huge stress on the server for high-intensity applications. If you are in a situation where you cannot enable precompilation for LAMP, but you can use Java (most Java servers require this), this should be a concern. The downside is that you have to recompile large chunks of your web application every time you edit it. I understand that now it is becoming less and less, but it needs to be checked.

+3
source share

I believe that the common wisdom on this subject is that Java is better suited for very large systems that need the discipline of static typing. Also, on very busy sites, Java can use less memory and run faster than most interpreters.

(Right out of the box, Java wants a lot of memory, but on a loaded system, Java only has one copy of all the working code.)

There are also some prosaic reasons to stick with Java for certain sites. They may need back office integration or some other large piece of existing code.

+2
source share

Be sure to include the learning curve during development if developers are not familiar with the language chosen.

+2
source share

For the most part, the best technology is the one you are already using.

If you have coders who know java, you have system administrators who can configure java applications and know what to do when the java application stops working, and project managers who know how to plan and plan Java deployment accurately, you you will need a very, very convincing reason to choose something like .NET for a new project, even if .NET is “better” (whatever that means).

There are, of course, exceptions; if you use something outdated and / or will not be supported in the future (for example, classic ASP), or you do not have outdated systems, then it's time to use something new.

+2
source share

I would use Java if there was a library or framework that provided certain functions that no other language (or not) did.

For example, if I had a built-in Java library for working with the Gruntmaster rock crusher, then, naturally, it would be wise to use Java to create an application that would need to be controlled by Gruntmaster.

Some may say that whatever the official language in one language, the language should be used - I do not agree with this rule, since in my experience a good developer can learn any language.

Otherwise, there is no hard and fast rule; Each language has its own strengths and weaknesses. The fact that you are asking this question about Java tells me that you are not so familiar with it.

I suggest you go and build an application or three in Java - then you will find out. :)

+1
source share

There is very little separation of the capabilities of the various technologies available today for web programming.

Java at one time was the default choice because it far exceeded the capabilities of competing technologies, but this is no longer the case.

Microsoft's response quickly matured; the days of classic ASP are much gone with .Net, now providing all the features and ease of programming offered by Java.

New languages, such as PHP and Ruby, are coming or becoming much more popular, as well as valid options based on your programming needs.

Since many others say that it comes down to what language you or your developers are familiar with.

+1
source share

Another aspect to consider is the ability to leverage the vast ecosystem of open source libraries.

Languages ​​such as PHP, Perl or Ruby have such a place in the lib market (almost), the built-in .Net in this sense is quite closed. Java, on the other hand, has a very large, cost-effective library system at the enterprise level, choice of community, and to learn from them.

+1
source share

In fact, I agree with the guys in using the existing human infrastructure.

Technologically, Java is well suited for non-standard web applications - for example, the large use of AJAX (GWT, DWR, Comet spring), Mobile (where you usually need a lot of session data and less front-clay), really simple things that will be downloaded under huge load (this will certainly cause Apache mod_XXX every time, the only thing that is faster in common use is its own code).

+1
source share

All Articles