Para explicar la respuesta por Kaleb, primer contrato es donde crea el WSDL, y luego puede crear la implementación a partir de esto, y dado que el WSDL es su contrato, esto sería por contrato primero.
Contract-last es donde el WSDL se crea a partir del código fuente o implementación, por lo que lo más probable es que sea generado por una herramienta en lugar de creado por el desarrollador.
Actualización:
Para una buena explicación de código, en Java, se puede ver en esta explicación de la primavera de la documentación 1.5.
http://static.springsource.org/spring-ws/sites/1.5/reference/html/why-contract-first.html
se va a discutir los pros y los contras, pero se hará con preferencia hacia su enfoque, pero, creo que es una buena explicación.