Answer the question
In order to leave comments, you need to log in
What are the disadvantages of Java for web development?
From a large number of answers on the site, I realized that Ruby (RoR) and Python (Django) are now actively used for web development.
I would like to know what are the advantages / disadvantages of Java over the same Python and why you should NOT use java for the web.
Answer the question
In order to leave comments, you need to log in
It's fun to read the replies.
When reading Philosophy of Java , the author highly appreciated python. And not easy. Like Java, Python has its advantages.
In terms of performance , both Python and Java are approximately equal. Python has "native" byte-code, so to speak (despite the fact that it has been ported to CIL, JVM, and Python itself). So there is parity here .
Convenience depends on the project and tasks. If the goal is to get it done as quickly as possible , then Python is clearly more convenient. For you can sketch a prototype in the interactive, tweak it a little and voila - the project is "ready". If the goal is reliability - our choice of Java: Static typing and compilability reveals hundreds of errors before the application even starts.
It is worth noting that the web in Java is very well developed. And so much so that it leaked to client web applications (and died 10 years ago), although the backend is still many times stronger. What does it mean? This means that there are many great web-oriented frameworks for Java. The canonical implementation of OOP allows the gang of four patterns to be used out of the box. Interfaces, if you know how to use them, decide. Python, on the other hand, was not created as a web engine, but was created simply as a convenient tool for quick programming of both applied and theoretical problems. Everything helps in this - the sugary syntax, the coolest iterators, the notorious interactive mode, the incredible slices, the good lambdas, and the beautiful code. RoR, if we talk about the language of the framework, is also very similar to Python, but there is much more magic in it. But Python applications are hard to debug. You can keep a bug for a couple of years, which will turn out to be due to the fact that we did not check the possibility of converting an object to a string in the arguments. Dynamic typing, and a very hard one of all, is probably both a gift and a curse.
Actually, if the question is "is it worth studying", then yes, of course it's worth it. Like Java, Python is a multi-paradigm language, and the practices you learn in Python will certainly improve Java code.
I myself am engaged in Java EE development for large enterprise web applications. I can say that there are a lot of requirements for the application itself. its expansion and scaling. Those. for large enterprise applications, this is normal, because they are offered higher reliability requirements. But if you follow the same path for simple sites, then you will significantly increase the turnaround time. This is probably why Java EE makes little sense for simple web development (it is much faster to write on a simpler framework), but for large web applications it is largely more in demand than the Ruby and Python you mentioned.
The popularity of PHP, Ruby and Python for web development at the moment is due to two factors: the popularity of the web as such and the low barrier to entry into programming. None of the above is better or worse for web development than Java or C#. Any task can be solved both there and there with approximately the same level of speed, comfort for the developer and everything else. Sorry for not giving a specific answer to your question. All IMHO.
There are no special criteria. Some sites are also created in C :). There will be no special problems, it all depends on the hands of the programmer.
There are not enough good frameworks for the web, but it’s quite possible to cut on java, I recommend looking at tapestry5.4, I haven’t seen the best web framework for java yet.
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question