DEV Community

Discussion on: Pitch me on Java

Collapse
 
ant_kuranov profile image
Anton Kuranov

Pros

  • Type-safe: design and modelling, compile-time errors, IDE support, etc
  • Huge ecosystem: frameworks, tools, libraries, documentation, support, etc...
  • Reliable: developed and supported by industry-leading companies
  • Fast and stable on different workloads
  • Still in top of jobs vacancies
  • Medium entrance level => (mostly) experienced engeneers in your team

Cons

  • Oriented mostly to backend development, almost is not presented on frontends
  • Not so modern and contains a lot of legacy stuff, however the language is still now in active development of new features
  • Verbose: standard design patterns require a lot of boilerplate code
  • Memory consumption (there comes some optimizations like project valhalla)
  • Slow startup and "heating" time (may be critical). May be solved withcompilation to native code.