After my last post on the differences between Java and PHP development practices, I saw some strange notions surface in PHP developers regarding Java. This post is an attempt to dispel some myths about Java by PHP (and other non-Java) developers. Feel free to chime in.

Myth 1: Strong Multi-threading support makes Java complicated and lack of it (actually very primitive support using ticks) makes PHP simpler.

In Java nobody forces you to use multi-threading. In JSP, which is a true cousin of PHP, much of the code is written without multi-threading.

Multi-threading is a tool, which used judiciously, can make some tasks simpler (in development) and more efficient. It also makes any UI seems more responsive to user.

With ThreadLocal multi-threading has become much simpler even for novices.

Myth 2: All Java projects follows Big-Upfront-Design
Extreme Programming is a development paradigm which professes simple design and iterative rapid development cycles (1-3 weeks). It professes against big upfront design. Interestingly XP is widely practiced by Java developers, more so then any other languages by a large margin. Many projects do follow BDUF and it is the same for any other production languages. Lack of architecture or design in anyway doesn't confer greater strength to PHP or any other languages.
XP succeeds because of large volumes of unit and acceptance(read regression) tests to back up the rapid changes to codebase. Without such tests to back you up, anyone who thinks unplanned massive changes to codebase (read hacking) is a recipe for success is courting disaster.

Pages: 1 2