2009-10-15 6 views
6

Этим я натолкнулся на этот термин много «сквозных требований/проблем» в мире программирования.Что означает перекрестные требования/проблемы в программировании?

Хотя я думаю, что у меня есть идея, что это значит, но у меня нет четкой идеи. Я много слышал об этом в веб-сервисе и SOA в целом.

Можно ли это объяснить, используя привет мир пример?

ответ

8

Он имеет тенденцию означать «вещи, которые вы хотите делать во многих местах, которые не имеют большого количества дел, связанных с настоящим мясом этой части кода».

Типичными примерами являются:

  • обработки
  • Безопасность транзакций
  • Logging
  • обработки

Я считаю, это обычно упоминается в отношении Aspect-Oriented Programming (АОП) ошибок, которые обычно попытки обрабатывать такие вещи декларативно, например с атрибутами/аннотациями. В качестве грубого упрощения, это случай применения кода котельной плиты (например, для проверки подлинности/полномочий пользователя в текущем контексте или регистрации входа/выхода метода) автоматически, не делая сам код грязным.

2

Я рекомендую вам посмотреть на фреймворк, как и попробовать this пример с сайта postsharp. Если вы знаете, что java-лок в AspectJ стоит посмотреть. Но сначала вы можете прочитать ссылку, размещенную Jon Skeet :)

3

Стандартный пример «hello world» для сквозной записи: вы имеете ошибку в своей производственной системе, и вы не знаете, что происходит. Чтобы решить эту проблему, вам действительно нужно увидеть, какие функции в вашем коде вызываются и какие параметры они получают и что они возвращают.

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

Смежные вопросы