На этом уроке мы добавим метод для удаления комнат. Исправим логическую ошибку метода Update в классах Room и Client. Подготовим функцию для теста созданного класса. Рекомендую эти тесты создать самостоятельно.
Дата отправки отчёта:
4 января 2016 г.
Задание выполнено: за
20 мин.
Чему научился:
повторил
Что было сложным:
сложно не было
Комментарии:
Ладно, мне это сразу не понравилось, но раз уж на уроке возникла дискуссия, вставлю и свои пять копеек. Учитель слегка неправ, на мой взгляд. Свойства (они же геттеры и сеттеры) для того и существуют, что бы выполнять различные проверки и не давать доступ напрямую. А функции SetRoom, SetFloor, SetBeds, SetStep это никакие не свойства, и уж тем более не поля. Это просто функции. Я бы даже сказал просто ЛИШНИЕ функции. Лишний код. У нас уже есть для этого настоящее СВОЙСТВО выше { get; private set} , в котором мы непонятно зачем сделали private set (в вышеупомянутых функциях мы точно так же напрямую без обработки просто присваиваем значения. Правильней было бы вообще обойтись без SetRoom, SetFloor, SetBeds, SetStep, а свойства set отставить публичным. И никакой принцип инкапсуляции это бы не нарушило, ибо для того и существуют свойства! И тут же бы делали защиту от sql-инъекций. Прям написать вот так { get; set{ room = sql.addslashes(value);} }
Научился: mnogomu, poleznomu. i eto bez shutok. mne ochen nravjatsja ispravlenija po hodu deistvija s obosnovaniem k izmenenijam. Трудности: ja by skazal poka ne preodolimym.
sozdanie nekotoryh testov, tak kak poluchaju resultat v ne zhelaemoi forme (naprimer objekt vmesto konkretnogo zaprosa) vse ok≤
Научился: Научился добавлять описания для каждого метода. Трудности: Находить собственные ошибки. Урок очень понравился, урок поучительный показывает, как можно упростить или изменить программу.