265179d4_erminology_for_New_Programmers__Description
[Term] DBC [Description] 
Design By Contract – the idea of building a service from a contract first. In Java you write the interface as simply as possible and then secondly worry about the implementation class. Interfaces are easier to refactor around and because you can plug different implementations into the interface you get higher cohesion and lower coupling. Classic Example: JDBC specification since version 1.0. There are tons of implementations for different relational databases including MySQL, Postgres, H2, Derby etc. Every Java programmer knows how to code against JDBC because that they don’t have to fight with an different implementation, which vary, because the DBC implied it will do the right thing most of the time. Also related to standardisation of application programming interfaces.
Peter Pilgrim :: Java Champion :: Enterprise Blog » Agile Software Developer Terminology for New Programmers
Description