Tuesday, 27 March 2012

Interview question (Software)- Advantages of compiled Vs Interpreted languages

As compiled languages tend to result in marginally faster applications, one might think that compiled languages should always be used instead of interpreted languages. However, there are many reasons for using interpreted languages rather than compiled ones. The primary reasons are that,
  1. Faster development.
  2. Easier updating.
  3. Easier debugging with only a marginal increase in processing time.
  4. Portable, able to be run without being modified for different computing environments.  
In contrast, compiled languages take,
  1. More time for development.
  2. More time for update.
  3. More time for debugging.
  4. Generally faster to run.
  5. Difficult to reverse engineer. 
Because interpreted languages require the distribution of source code, proprietary software applications prefer to use compiled languages to prevent competitors (and customers) from seeing how their software was designed and built. By compiling into bytecode, however, otherwise interpreted languages such as Python and, to some extent, Java are effectively able to circumvent this issue while still remaining portable and being only marginally slower than if they were compiled into machine code.

No comments:

Post a Comment