...
- Distanciamento Temporal (DT): Representa a distância de tempo decorrido entre a definição (data de compilação) de duas classes diferentes. É um número inteiro longo que armazena a data e hora da última alteração dos bytecodes (arquivo .class) que deu origem à classe em memória. É calculado no momento do carregamento da classe no sistema de configuração e é utilizado no cálculo dos valores a serem utilizados pelo gerado. Se a classe foi obtida por um stream de rede, então essa data é definida como a data de recebimento da classe no stream de rede, ou então manualmente, através do uso de um interceptador de classloader implementado pelo usuário.
- Distanciamento Espacial Real (DER): Somente existe para duas classes com nome completamente qualificados diferentes. É calculado a partir do nome completo da classe (ou seja, incluindo o pacote que a contém) utilizando para isso métricas de strings sobre os nomes de cada fragmento dos pacotes envolvidos e das próprias classes. Diz-se que somente existe para classes de nome completamente diferentes porque classes que tenham o mesmo nome e que pertençam ao mesmo pacote (mesmo se carregadas por classloaders diferentes, ou se tiverem versões diferentes - ou seja, compiladas em momentos diferentes) vão ter ) terão o mesmo DER sermpre. Varia entre 0 (igual) e (1).
- Distanciamento Espacial Relativo (DEL): Aplicavel somente a classes que possuem exatamente o mesmo nome (incluindo seu pacote) e que estao carregadas em memoria devido a presenca de multiplos classloaders no sistema. Por exemplo, se a classe br.com.treelayer.merlin.beans.User for carregada por dois classloaders diferentes então, o DEL entre elas será dado pela distância de seus classloaders, que é dado pelo módulo do número de nodos existentes entre esses classloaders (no caso de elas estiverem em uma mesma árvore de classloaders) ou INFINITO se os classloaders estiverem desconectados entre si (por exemplo, em JVM diferentes).
- Distanciamento Espacial Total (DET): É calculado pela função DER / DEL e pode variar entre 0 e 1quanto maior for, mais distantes estão as classes.
- Modelo de Domínio : É a classe-base de geração da tela de cadastro.
- Resolver (ou Annotation Resolver): É o objeto responsável por interpretar uma anotação sobre um objeto do Modelo de Domínio. Essa anotação pode ser tanto do Merlin, quanto anotações de outros frameworks (como o Hibernate ou Hibernate Validator) ou anotações criadas pelo próprio usuário. O Merlin provê um conjunto básico de resolvers e pode ser estendido com outros resolvers definidos pelo usuário.