Jump to content

Recommended Posts

Posted

Пишу программу на С++, надо сделать подсистему управления доступом к модулям самой программы (4 типа доступа: просмотр, редактирование, удаление, создание данних), ломаю голову как правильно решить задачку с точки зрения ООП и масштабируемости. Прошу совета. :)

Posted

Ну во первых где то надобно это хранить, соответственно должен быть класс доступа,

имхо я бы сделал так

хранил бы наименование плагина (модуля как хотите так и назовите) и связанную таблу доступов на каждого пользователя ну или как там у вас, при чём добавил бы шаблоны согласно которым уже будут предустановленные права, тем самым вы сможете рулить предустановлеными + если нужно настраивать в отдельности тобешь если есть базза данных то связать таблы

юзер -> плагин -> права

соответственно выгребать данные при доступе к конкретной функции

 

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

 

Ну как то так :)

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...