Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

7 сем / 4 / пояснения к теор части лабы 2.4

.docx
Скачиваний:
3
Добавлен:
19.04.2025
Размер:
18.34 Кб
Скачать

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

если что это обсуждения другой бригады, но я сделал примерно то же самое, только у меня не ДНФ из булевой логики, а какой-то кал лютый, но он работает вроде как и свагга:

чел А:

привет попытаюсь объяснить 4 работу мисприс по тем записям, что у меня остались я уже сама особо не помню принцип работы, поэтому почитай еще что дубенецкий пишет в файле с примером задания на мудле, мб так станет понятнее и если будут какие-то сомнительные моменты - просто делай на свой вкус +надо к какой-то работе интерфейс у параметра может быть разная длина и для разных вариантов длин у нас разные норм расходов, материалы и тп какие-то значения параметров, которые мы задаем в конфигурации, нельзя использовать в существующих вариантах исполнения суть работы: что мы можем собирать по правилам изделие с конфигурацией допустим у нас есть корпус, у него 2 параметра конфиг: количество проушин и количество распорок распорок может или не быть, или быть 2, или быть 4 (т.е. 3 варианта разрешаем) количество проушин может быть или 1, или 2 (т.е. 2 варианта) параметры как перечисления: перечисление по возможному кол-ву распорок и перечисление по возможному колву проушин в итоге существующих сочетаний параметров 6 штук при этом не все из этих сочетаний могут быть допустимы к исполнению т.е. параметры зависимые - например, нельзя без проушин (0 штук) делать 2 распорки (просто как пример) и вот у нас есть все комбинации и у каждой комбинации мы можем проставить true/false - может ли комбинация существовать или нет нужно сделать функцию: спрашиваем, можем ли мы сделать изделие с какими-то параметрами или нет - функция смотрит, допустимую ли мы выбрали комбинацию (true или false) и отвечает - допустимо или нет что используется в работе: классификатор изделий перечисления изделий по параметрам (как во 2 работе того сема) классификатор параметров ведение материальной спецификации (нормы расходов) - хз зачем ? возможно просто чтобы было, мол для допустимых сочетаний параметров мы можем сделать изделий и вывести норму расходов, а для недопустимых - не можем описание правил управления конфигурациями (будет дальше) 3 работа (изделия с конфиг, без конфиг, вариант исп) возвращаясь к сути работы (мы можем собирать конфиг по правилам) правило разбивается на сущности (хз зачем) и мы его как бы собираем и смотрим допустимо это для нас или нет «элемент конъюнкции» = список предикатов (т е собранное правило) куски правила: пример: какой-то параметр >2 из «значение параметра» берем 2 (существующее значение, как в проушинах 1 или 2) из «параметра конфигурации» берем «количество пророшин» (т.е. название параметра в конфигурации) из «оператора» берем > в «предикате» есть константа, в которой нужное нам значение (это значение мы сравниваем с допустимым) т е это то число, которые мы вводим в конфиг, а сравниваем его с допустимым существущим значением (из параметра конфиг) операторы хранят просто набор существующих операторов (>,< и тд) он в своих примерах использует только =, думаю нужно сделать также, а то с больше и меньше вообще непонятно как делать и как сравнивать с допустимыми сочетаниями параметров из этого всего мы собираем цельную конъюнкцию (правило) и в той табличке, где true и false на допустимые значения смотрим, подобная конъюнкция у нас попадает под true или false перебираем все возможные конъюнкции пока коньюнкция не станет тру - продолжаем перебирать когда тру - заканчиваем и если позиция тру - то я честно не помню что нам это дает, но у него в файле написано что-то вроде В модель включен класс Функция конфигурации и ассоциация с ролью Подключение. При наличии функции у позиции спецификации эта позиция подключается только, если соответствующая функция принимает значение trueдля заданных значений параметров конфигурации. наверное если функция тру то мы можем посчитать норму расходов а если не тру то не можем или если тру, то можем создать такой вариант исполнения, а если не тру- то не можем очень долго мы это затянули и я нихуя не помню

чел Б:

Я добавил 4 таблицы: Предикат (имеет id, id оператора, id значения с которым будет сравнение, id параметра) Функция (имеет id и имя) Спецификация (имеет id функции и id объекта и это обязательно должно быть Типовое изделие с конфигуратором) Тело функции (id функции, id предиката, номер конъюнкции, bool флаг надо ли навесить отрицание предикату) Я не понял как его тело функции устроено, поэтому делаю по своему (ДНФ из булевой логики) Я сделал всякие функции добавления записей в таблицы Я делаю функцию которая будет для Варианта исполнения по его Типовому изделию с конфигуратором проверять параметры согласно спецификациям. Норм? Ещё нужны какие-нибудь функции? ______

Соседние файлы в папке 4