Я бы сказал, да.
Если у вас есть функциональность, которую можно разбить на 2 логические части, возможно, многократного использования, сделайте это.
Все большие API-интерфейсы используют внутренние компоненты, и часто даже общедоступные функции используют другие общедоступные функции.
Например:
ShowPage(url) {
request = new Request(url)
response = request.Send()
page = response.GetHTML()
browser.Load(page)
}
может стать:
RetrievePage(url) {
request = new Request(url)
response = request.Send()
return response.GetHTML()
}
ShowPage(url) {
page = Retrieve(url)
browser.Load(page)
}
Теперь RetrieveUrl
можно использовать повторно, например, функцией поиска по веб-сайту какого-либо контента.