Как много нужно делать "автоматически"?

Как много нужно делать "автоматически"?
Как много нужно делать "автоматически"? - patwhelen @ Unsplash

Я читаю Code Complete 2, и дошел до главы, где говорится (перефразируя) "избегать программирования через интерфейс". Почему плохо программировать "через" интерфейс?

Более конкретный пример: если у меня есть метод класса, который отправляет смешную картинку, что плохого в том, что он будет регистрировать и меня? Должен ли я просто предоставить больше "вспомогательных" методов, которые делают это автоматически?

Будет ли предпочтительнее разбить это на:

  • set_login(username, password)
  • login()
  • submit_picture(funny_picture)
  • easy_submit(funny_picture) # где он будет регистрироваться (если еще нет) и отправлять заявку

В целом, более короткие методы более читабельны и их легче тестировать с помощью модульных тестов. Даже если вы не планируете повторно использовать метод login и/или submit, разбиение его на части облегчает тестирование и обслуживание.


LetsCodeIt, 29 мая 2023 г., 04:35