A questão -chave: alterar a alteração do agendamento de threads, a latência da rede ou um tempo limite alternadamente? Então você tem conarcado de tempo.
Conascência de valor
A conoscance de valor ocorre quando vários valores devem ser coordenados adequadamente entre os módulos. Por exemplo, imagine que você tem um teste de unidade que se parece com o seguinte:
(Test)
procedure TestCheckoutValue {
PriceScanner = new TPriceScanner();
PriceScanner.Scan('Frosted Sugar Bombs');
Assert.Equals(50, PriceScanner.CurrentBalance);
}
Então, escrevemos o teste. Agora, no espírito de desenvolvimento orientado a testes, farei o teste passar o mais fácil e simplesmente possível.
void PriceScanner.Scan(aItem: string) {
CurrentBalance = 50;
}
Agora temos um acoplamento apertado entre TPriceScanner e nosso teste. Obviamente, temos conarcado do nome, porque ambas as classes dependem do nome CurrentBalance. Mas isso é uma conáscência de nível relativamente baixa e perfeitamente aceitável. Temos conáscência do tipo, porque ambos devem concordar com o tipo TPriceScannermas, novamente, isso é benigno. E temos conarcado de significado, porque ambas as rotinas têm uma dependência codificada do número 50. Isso deve ser refaturado.
