Web: When should you consider using Java, not PHP, Python / Django, Ruby / Rails, etc.?

If you are collecting requirements for a medium to large web project, at what point should you consider using Java-back-end, JSP, etc. in a scripting language like PHP, Python or Ruby?

Hearing "use the right tool ..." when Java is the right tool for web projects?

+4
source share
8 answers

What is the “best” language often worsens to emotional discussions, not practical ones. Champions in each language are extremely helpful in defining arguments for why each language is the best. I usually look at a couple of factors:

A) What languages ​​are you and your team comfortable in?

B) Is there an extension or integration of an existing application / system? If so, which languages ​​are most effective for such integration

C) Are there built-in or re-accessible libraries, components, etc. that will allow you to more effectively create results in one language over another.

My decisions almost always come down to which language / platform my team will be most effective at, both for development and maintenance.

+5
source

In my opinion, a language solution cannot be made regardless of a larger development and implementation platform. This is implied by what James Conigliaro wrote , as well as what jonnii wrote , but didn’t invoke it on purpose,

In making this decision, people often use unreasonable relative weights for different evaluation criteria. For example, one of the criteria might be “works on iPhone.” But if you're not really developing an iPhone, you don't care.

"Productivity" is another criterion that can gain unreasonable weight. Today, most Intel-based servers, which cost $ 2,000 without storage, quickly support a fairly large volume of website, regardless of your choice of language. If your load exceeds the one that can be run on the same server (do not assume!), Or if you need to split the server between different workloads, then the primary may become more important. But usually your application load will fit into a field with 1 server.

The development environment, including the IDE, as well as source control, configuration management and bug tracking - I think you can name the material of the application life cycle - is more important, in my opinion, than the language itself.

Another aspect that you might want to consider is to pull the language itself onto the developers for your team. In the early days of Java, you could attract developers by simply saying, "We do this in Java." Now this phenomenon has largely disappeared for Java, but in pockets this may be true for other languages ​​and platforms. This factor may or may not be important to you.

+3
source

Choose the language / platform that is most suitable for your team, one that matches your deployment goal and which you mostly speak.

+1
source

I have over 20 years of programming experience, and I learned one important fact: it doesn’t matter which tool you use if it’s convenient for you to use this tool. For larger teams, all team members should be happy with the choices you made. I always tell people that no matter what tools you used to create the application. All that matters is that it will work as expected.

+1
source

I plan on using Java for a project using the Google App Engine (Java support, of course). This is not the answer [tm], but only my 2 cents :-)

0
source

Who needs libraries: If you want to configure something ready, use PHP. These are usually shopping carts, forums, and CMS.

Java will have more libraries for random things (like fetching RSS feeds)

I do not know about Python / Ruby on Rails;

0
source

The rails are easy to learn, well organized and well documented. It is also flexible and RAD (rapid application development). This is not perfect, but you can try. This is another step in the development of the network. Java web framework is not so easy to understand and start is not so simple IMHO.

If you need to create a large web application, with the help of rails you can separate the monolith application with various applications, and then calmly use ActiveResource.

http://guides.rubyonrails.org

0
source

Almost always: -)

I mean, you can do any web project with the addition of Java / JSP more or less in the mix (Spring, iBatis, etc.)

But, as already mentioned, there are times when you decide to use something else, because, for example, your team has extensive experience with younameit and does not have experience with java or such things.

0
source

Source: https://habr.com/ru/post/906818/


All Articles