Namespaces vs. Tags (Facets)
От: 0x7be СССР  
Дата: 12.03.11 20:25
Оценка: 19 (3) +3
Сейчас для логической организации во "мэйнстримовых" языках применяется иерархическая организация — пространства имен, пакеты и т.п. Однако жизнь штука сложная и не всегда хорошо вписывается в иерархическую схему. У меня часто возникали ситуации, когда более естественным способом организовать типы и функции в программе была бы фасеточная классификация, где гранями являются функциональные аспекты системы. Но фасеточная классификация неоднозначно отображается в иерархическую, что порождает некоторые проблемы, особенно если над проектом работает несколько людей.

Собственно, вопрос: как Вы думаете, имеет ли право на полную и насыщенную пользой жизнь идея организации программ через систему граней/тэгов?
В принципе, это возможно и при поддержке со стороны языка, так и чисто инструментальными средствами. Например, плагин в IDE, который "заряжается" тэгами и строит на основании их иерархию определенным образом, заодно следя, что бы программист ручками не нарушил правильного порядка. Например, это было бы вполне естественной епархией решарпера.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.