Нарушает ли кусок кода принцип Единства ответственности? - C#
Формулировка задачи:
Доброго времени суток!
Подскажите, кто знает... Искал и читал объяснения принципов SOLID, но вот четкого ответа на свой вопрос не нашел пока что. А вопрос такой: Есть кусок кода:
Является ли вызов функции/процедуры внутри другой процедуры принцип Единства ответственности?
Смотрите...
Если изменится логика процедуры "DelPacient", то придется вносить изменения в описанную выше функцию. Тоже самое касается изменения логики процедуры ShowJurnalToday. А вообще описанная процедура необходима для удаления выбранного пациента, которая выполняется внутри процедуры DelPacient в которой описан доступ на уровне БД к записям.
Описанная процедура по коду делает следующее: удаляет запись, информирует пользователя и обновляет экран. Мне кажется, что очень много обязанностей?! Как считаете? Стоит ли мне убрать из описываемой процедуры информирование и обновление экрана?
void УдалитьЗаписьToolStripMenuItemClick(object sender, EventArgs e)
{
//MessageBox.Show(dataGridView1[4, dataGridView1.CurrentRow.Index].Value.ToString());
string PacientFIO=dataGridView1.CurrentCell.Value.ToString();
//string DataPriema=DateTime.Now.ToShortDateString();//+" "+DateTime.Now.ToLongTimeString();
DelPacient(PacientFIO);
MessageBox.Show("Выбранный пациент удален успешно","Журнал приема пациентов",MessageBoxButtons.OK,MessageBoxIcon.Information);
ShowJurnalToday();
}Решение задачи: «Нарушает ли кусок кода принцип Единства ответственности?»
textual
Листинг программы
public DataTable SearchInDBMedKartaOnDate(string MedKartaforSearch, string OnDate)
{
sql_con.Open();
DB = new SQLiteDataAdapter(@"SELECT * FROM PRIEMVIEW1 where Pacient_Medkarta LIKE'"+MedKartaforSearch+"%'",sql_con);
DS.Reset();
DB.Fill(DS);
DT= DS.Tables[0];
sql_con.Close();
DB.Dispose();
DT.Dispose();
DS.Dispose();
sql_con.Dispose();
return DT;
}