А вот сейчас согласен на все 100%. Недавно говорил про это.panda5 писал(а):...
Изначально (если верить описанию системы) планировалось, что весь подход к разработке системы будет базироваться на принципах ООП, и внутри действительно есть классы объекты и наследование, но почему то на этом все и закончилось... код системы идеологически не связан с реальным объектным миром. Разработчики за кодом забыли, что лампочка теперь принадлежит интернету вещей и стала объектом умного дома, и все что в этом реальном доме из стройматериалов в объектной системе должно получить характеристики из ООП:
Банальный пример: вы создаёте Новый объект , допустим холодильник, а в системе уже к этому моменту должна быть база знаний вопросов о холодильнике, ответов о холодильнике, и объектных цепочек с холодильником связанных.
Тогда это уже не фантастика, а простая формальная логика: и создавая в системе Новый сенсор температуры система сразу включит в перечне ИЗВЕСТНЫХ тем ответы на все вопросы относительно погоды, средней температуры, минимумов максимумов и т.д.
Такое вот мини блиц тз.
...
К примеру хочу чтобы голосовая команда 'Включи радио' пусть будет романтика. Я должен получить список радиостанций посредству ООП, найти сходства если не нашёл романтики уточнить запрос.
В данном реализации я должен прописать железные ссылки на включение радиостанций. Завтра Элементарно переставлю majordomo и все эти станции поплывут, или послезавтра автор модуля радио возьмёт и поменяет что-то, обновит результате опять у меня может поплыть ссылки. В каком месте здесь ООП.
Аналогичная ситуация модуль продукты. Чтобы добавить в список заканчивающийся я должен на все варианты продуктов прописать отдельные команды если что-то закончиться не из списка. Все тупик. А по Ооп можно было бы унифицировать.
Элементарно даже если пришло из голосовой команды не из списка я не могу прописать алгоритм уточнения схожих продуктов/радио по причине отсутствия уже существующих. И добавить в случае необходимости. Напрямую писать в базу как советовали не по ООП правилам. Опять же даже если напрямую в базу, завтра выйдет новая версия модуля и структура хранения данных может поменяться и мои прямые записи в базу могут сломать систему/модуль.
Отправлено с моего Redmi Note 3 через Tapatalk