Ролевое программирование как форма компьютерного программирования направлено на выражение вещей в терминах , аналогичных человеческому концептуальному пониманию мира . Это должно облегчить понимание и поддержку программ. [ нужна цитата ]
Основная идея ролевого программирования заключается в том, что люди мыслят ролями . Это утверждение часто подкрепляется примерами социальных отношений . Например, ученик, посещающий занятия, и тот же ученик на вечеринке — это один и тот же человек, однако этот человек играет две разные роли. В частности, от его текущей роли зависят взаимодействия этого человека с внешним миром. Роли обычно имеют общие черты, например, внутренние свойства личности. Такое совместное использование свойств часто обрабатывается механизмом делегирования .
В старой литературе и в области баз данных , кажется, [ оригинальные исследования? ] что мало уделялось внимания контексту, в котором роли взаимодействуют друг с другом. Такой контекст создается в новых ролевых и аспектно-ориентированных языках программирования, таких как Object Teams. Сравните использование слова «роль» как «набора программ (служб), которые позволяют серверу выполнять определенные функции для пользователей или компьютеров в сети» на жаргоне Windows Server . [1]
Многие [ количественные ] исследователи утверждают о преимуществах ролей в моделировании и реализации. Роли позволяют объектам развиваться с течением времени, они обеспечивают независимые и одновременно существующие представления (интерфейсы) объекта, объясняя различные контексты объекта и разделяя задачи . В целом роли являются естественным элементом формирования повседневных концепций человека. Роли в языках программирования позволяют объектам иметь меняющиеся интерфейсы, как мы видим в реальной жизни — вещи меняются со временем, используются по-разному в разных контекстах и т. д.
[...] роль сервера – это набор программ (сервисов), которые позволяют серверу выполнять определенные функции для пользователей или компьютеров в сети.