Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    primarykey
    data
    text
    <p><strong>PHP</strong></p> <p>You save a file. PHP is started with the file as a source, it interprets the contents, build op codes, executes, you get results. PHP stops.</p> <p><strong>Java EE</strong></p> <p>You save a file. You compile the project (a change in one file might change other class files). You also start an Application Server (expensive) or do a context reload (less expensive). It is like doing a Apache restart after every PHP file change. You leave the Application Server running, so subsequent requests will be fast.</p> <p>But why all this trouble? Java requires an application reload because it doesn't interpret every class file on every request (like PHP does) so when changes happen a reload is required to the whole application. Another reason is that the JVM is a highly optimised beast and to have excellent performance you cannot have quick turnaround (the optimisations take time by nature). Think of running PHP with OP cache enabled and warmed up for each PHP file change.</p> <p>For small applications the reload in Java EE is quite inexpensive but it gets worse once the application grows. Once you are using couple of frameworks then on application context reload will also trigger the initialisation of these frameworks.</p> <p>If you want PHP like development experience then there is a commercial tool, <a href="http://jrebel.com" rel="nofollow">JRebel</a> available. This tool will reload the new bytecode from the changed class files instead of doing a context reload.</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. VO
      singulars
      1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload