Mam więc usługę internetową, która ma coś w rodzaju miejsca, w getAccount
którym zwróci identyfikator na konto, jeśli go dostanie, w przeciwnym razie zgłasza wyjątek. Klient zawsze będzie chciał założyć konto, jeśli zgłoszony zostanie wyjątek z tymi samymi informacjami, z którymi jest zrobione.
Tworzę wygodną bibliotekę dla klientów, którzy będą obsługiwać wszystkie wywołania usługi internetowej w środku, więc nie będą musieli wiedzieć, jak samodzielnie wykonywać połączenia.
Zastanawiam się w tej bibliotece, gdybym miał utworzyć getAccount(accountName)
konto, które dostanie konto, jeśli istnieje, a jeśli nie utworzy go i nie zwróci informacji, czy to źle? Czy powinienem pozostawić klientowi obsługę wyjątków, czy po prostu nazwać coś takiego jak getOrCreateAccount? Czy to ma znaczenie?
Czy złym zwyczajem jest tworzenie czegoś w operacji get?
acquire
, np acquireAccount
. Nie ma on żadnego znaczenia w żadnym z głównych protokołów, które napotkałem, i ma nadrzędny pierścień, który mu dobrze pasuje. „Rób wszystko, co musisz zrobić, aby zdobyć dla mnie jeden z nich. Poproś o to, zbuduj, udawaj, ukradnij, nie obchodzi mnie to, po prostu weź mnie lub zgiń próbując”.
getSomething()
jest przeznaczony dla osób pobierających i setSomething()
ustawiających. Imo nic, że robi coś bardziej intelektualnego musi być nazywany coś innego, to znaczy fetchSomething
, obtainSomething
, computeSomething
, lub doSomethingElse
itd.
getOrCreateAccount
lub podobnie.