From http://www.smashingmagazine.com/2013/04/18/introduction-to-programming-type-systems/
So, which is better?
| The static programmer says: | The dynamic programmer says: |
|---|---|
| “Static typing catches bugs with the compiler and keeps you out of trouble.” | “Static typing only catches some bugs, and you can’t trust the compiler to do your testing.” |
| “Static languages are easier to read because they’re more explicit about what the code does.” | “Dynamic languages are easier to read because you write less code.” |
| “At least I know that the code compiles.” | “Just because the code compiles doesn’t mean it runs.” |
| “I trust the static typing to make sure my team writes good code.” | “The compiler doesn’t stop you from writing bad code.” |
| “Debugging an unknown object is impossible.” | “Debugging overly complex object hierarchies is unbearable.” |
| “Compiler bugs happen at midmorning in my office; runtime bugs happen at midnight for my customers.” | “There’s no replacement for testing, and unit tests find more issues than the compiler ever could.” |