Классический ответ на это должен использовать класс для инкапсуляции некоторых или всех, параметров. В теории, которая звучит великолепно, но я - вид парня, который создает классы для понятий, которые имеют значение в домене, таким образом, не всегда легко применить этот совет.
, Например, вместо:
driver.connect(host, user, pass)
Вы могли использовать
config = new Configuration()
config.setHost(host)
config.setUser(user)
config.setPass(pass)
driver.connect(config)
YMMV
[переписано в ответ на комментарий к исходному сообщению]
Это не так сложно написать, примеры можно найти на вашем родном языке по всему Интернету (для начала). Просто убедитесь, что вы говорите ясно и просто.
Следует помнить две вещи:
Не шаблон, а несколько дополнительных советов, которые могут в этом помочь - от Майка Кона:
http://www.mountaingoatsoftware.com/articles/5-writing-contracts-for -agile-development
Джефф Сазерленд ( http://en.wikipedia.org/wiki/Jeff_Sutherland ) говорил на Agile 2008 по этой теме: http: / /jeffsutherland.com/scrum/2008/08/agile-2008-money-for-nothing.html (слайды: http://jeffsutherland.com/scrum/Agile2008MoneyforNothing.pdf )
Это породило обсуждение «Agile Contracts» здесь: http://www.coactivate.org/projects/agile-contracts/summary , и это обсуждение включает в себя вики-страницу, которая является началом шаблона контракта. : http://www.coactivate.org/projects/agile-contracts/money-for-nothing-change-for-free