В информатике , беспокойство является конкретным набором информации , которая оказывает влияние на коде компьютерной программы . Проблема может быть столь же общей, как детали взаимодействия с базой данных, или такой конкретной, как выполнение простых вычислений, в зависимости от уровня разговора между разработчиками и обсуждаемой программой. IBM использует термин « пространство интересов» для описания разделения концептуальной информации. [1]
Обзор [ править ]
Обычно код можно разделить на логические разделы, каждая из которых решает отдельные проблемы, и поэтому он скрывает необходимость того, чтобы данный раздел знал конкретную информацию, адресованную другим разделом. Это приводит к модульной программе. Эдсгер В. Дейкстра ввел термин « разделение проблем » [2], чтобы описать менталитет, стоящий за этой модуляризацией, которая позволяет программисту снизить сложность проектируемой системы . Две разные проблемы, которые смешиваются в одном разделе кода, называются « сильно связанными ». Иногда выбранные модульные подразделения не позволяют полностью отделить одну проблему от другой, что приводит к сквозным проблемам.. [3] Различные парадигмы программирования в разной степени решают проблему сквозных проблем . Регистрация данных - это общая сквозная проблема, которая используется во многих других частях программы, кроме отдельных модулей, которые фактически регистрируют данные. Поскольку изменения в коде регистрации могут повлиять на другие разделы, [ как? ] это могло внести ошибки в работу программы.
Парадигмы, специально посвященные проблеме разделения интересов:
- Объектно-ориентированное программирование , описание проблем как объектов
- Функциональное программирование , описание проблем как функций
- Аспектно-ориентированная разработка программного обеспечения , рассматривающая проблемы и их взаимодействие как конструкцию собственной репутации
См. Также [ править ]
- Межсекторальная озабоченность
- Разделение проблем
- Проблема (компьютеры) , единица работы по улучшению системы данных.
Ссылки [ править ]
- ^ Концерн Spaces в IBM
- ^ Дейкстра, Эдсгер В. (1982), «О роли научной мысли» , в Дейкстра, Эдсгер В. (ред.), Избранные труды по вычислениям: личная перспектива , Нью-Йорк, Нью-Йорк, США: Springer-Verlag New York, Inc., стр. 60–66 , ISBN 0-387-90652-5
- ^ Mendhekar, Анураг, Грегор Кикзалес, и Джон Lamping. "RG: Пример для аспектно-ориентированного программирования". Архивировано 8 сентября 2007 г. висследовательском центре Wayback Machine Xerox в Пало-Альто. Февраль 1997 г.