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