Pergunta
Eu sei escrever um pacote em OCL mas qual é exatamente o significado dessa construção? Por que e quando devemos usar pacotes?
Como exemplo de pacote no meu script, eles escrevem
package MeetingExample
context Meeting::isConfirmed : Boolean
init: false
context TeamMember:meeting : Set(Meetings)
init: Set{}
endpackage
Mas qual é a diferença se eu escrever apenas
context Meeting::isConfirmed : Boolean
init: false
context TeamMember:meeting : Set(Meetings)
init: Set{}
Solução
De acordo com tutorial completo:
"Uma declaração de contexto de pacote pode colocar entre colchetes declarações que complementam os elementos do modelo dentro do pacote complementado."
"O contexto do classificador é finalizado por um contexto ou pacote final."
O sentido desses pacotes é o mesmo dos namespaces:
Pois possibilita utilizar algum nome muito útil (índice, nome, pai, filhos,...) diversas vezes no mesmo projeto.Isso pode ser extremamente importante quando você está juntando grandes pedaços de código.
Outro sentido secundário é organizar os elementos em grupos.