DEV Community

Discussion on: Convince me that types are awesome

Collapse
 
jcsvveiga profile image
João Veiga

Bugs found at initial stages of development are cheaper to handle. Bugs can appear because of misunderstandings of requirements or lack of requirement for parts of the project.

The ways we have of reifying requirements are many but considering code, we have types, tests and documentation.

We also know that types make it unnecessary to write tests for some errors in code. For example, if something is of type String we shouldn't be able to call a method from Integer.

This means we write less tests, we right less code for our domain.

I would say this reduces then the incidental complexity of the project, since we effectively reduce the number of lines of code people have to support and learn when joining the project.