Single Респонсибилити Принсипле

Согласно SOLID, Сингле Респонсибилити Principle говорит, Он имеет единственную ответственность и говорит, что каждый класс должен заниматься единственным делом и это применяется для Ваших методов. У меня есть метод Сохранять, который обновляет реестр и также сохраняет реестр, у него есть два типа ответственности.

if (HelpAccesoDatos.Existe)) {
   try {
      ClienteRepository.Actualizar(cliente);
      MensajeLogica = "REGISTRO ACTUALIZADO!!!";
   } catch (Exception) {
      MensajeError = "No se puedo actualizar el registro";
   }
} else {
   try {
      ClienteRepository.Guardar(cliente);
      MensajeLogica = "REGISTRO GUARDADO!!!";
   } catch (Exception) {
      MensajeError = "No se pudo guardar el registro";
   }
}

Он был бы должен отделять этот метод в двух?: это плохая практика программирования?, моей точки зрения я чувствую себя удобным с этим методом так для содержания кода и осуществления. Я им благодарен заранее за Ваши рекомендации.

3
задан 14.04.2016, 23:54
1 ответ

>> ВїDeberГ, - Чтобы отделять этот mГ©todo в двух?

не надо отделять функциональность в этом случае, так как, хотя ты определяешь логику для двух возможных дорожек эти ссылаются на единственный тип операции, ту сохранения данные.

Эта практика SOLID относится к случаям, где организация кроме того, что сохраняет организацию, например посылает mail, или, может быть, кроме того, что сохраняется присоединяется в Веб услугу, чтобы реализовывать другую операцию, там, если бы ты нарушал ясно начало SOLID, о котором ты упоминаешь.

Или также, если в функциональности класса ты определяешь настойчивость для многих типов различных организаций.

В твоем случае ты самое большее санкционируешь, чтобы реализовывать INSERT или UPDATE, но говорится о той же организации и о простой операции настойчивости.

SRP – Начало простой ответственности

S.O.L.I.D Начало Простой Ответственности

4
ответ дан 24.11.2019, 14:35
  • 1
    Леандро, спасибо за explicaci и # 243; n. – Pedro Ávila 15.04.2016, 00:02
  • 2
    Леандро используя эту тему и м и # 233; совсем выставленный в этом трэде, который может делаться, чтобы предотвращать меньше хождения и возвращений в администратора базы данных, из-за которой, если я буду обновлять, и, что существует реестр уже для того, чтобы спрашивать, если он существует, и если я буду сохранять уже, который не существует. – Pedro Ávila 15.04.2016, 00:58
  • 3
    ты мог бы не идти против db, если он состоит в том, что в организации у тебя есть один, будьте распределены в организацию, или же если у организации есть один, пойдите равно в нуль тогда ты вводишь, но если это различный один ты обновляешь, таким образом, ты не нуждаешься в том, чтобы санкционировать, если он существует, но конечно, если ты обновляешь, и id не существует ты будешь должен контролировать неудачу – Leandro Tuttini 15.04.2016, 05:47