Artigo Clube Delphi Edição 18 - O PORQUÊ DE CONCILIAR ERROS AMIGAVELMENTE

Artigo da Revista Clube Delphi Edição 18.

Esse artigo faz parte da revista Clube Delphi edição 18. Clique aqui para ler todos os artigos desta edição

 

Atenção: por essa edição ser muito antiga não há arquivo PDF para download. Os artigos dessa edição estão disponíveis somente através do formato HTML. 

 

O PORQUÊ DE CONCILIAR ERROS AMIGAVELMENTE

 

A grande maioria dos e-mails que tenho recebido tratam de um assunto bastante complexo: quais são, dentro de uma série de situações, os métodos mais aconselháveis para tratar condições de erro no momento da gravação dos dados.

Claro que podemos – e devemos – olhar com cuidado e zelo para estas características de desenvolvimento, e é ótimo saber que tenhamos muitos desenvolvedores com esse nível de preocupação e cuidado, mas temos de ver a situação com outros olhos. Quando tentamos “manter o controle” sobre as condições em que os dados estão sendo atualizados, corremos o risco de estarmos indo além de nossas atribuições como desenvolvedores.

Normalmente, aconselho a qualquer pessoa que avalie a situação antes de “cometer” algumas perguntas, pois, em determinadas situações, conhecer mais profundamente alguns recursos nos ajuda a sermos mais criteriosos e objetivos em nossas decisões e atitudes.

A pergunta-chave que me foi enviada pede um porquê para que eu não tenha apresentado um método de conciliação onde simplesmente grava-se os dados na base, registrando-se isso em um arquivo de log e ponto final. Pois bem, a preocupação de registrar o ocorrido em um log já é alguma coisa, mas o fato de puxar para o aplicativo a responsabilidade por gravar (ou não) determinada informação dessa ou daquela forma extrapola o nível de decisão do desenvolvedor e deixa de ser uma reconciliação, passando a ser uma imposição.

O que queremos é justamente não assumir uma responsabilidade que não nos cabe. Não devemos fazer com que o software tome decisões, não é esse seu papel dentro do contexto de sua utilização, e isso deve sempre ficar a cargo do usuário. Justamente por esse motivo, não implementei uma solução tão radical.

Desta forma, os mecanismos apresentados tratam a situação de formas consideradas mais “amigáveis” para o usuário; usando raMerge, os dados são relidos da base, porém as alterações feitas pelo usuário são preservadas, e neste momento o papel do software é informar que alguma coisa está ocorrendo: mostrar as diferenças das informações e então deixar para que o usuário decida se deve ou não continuar com o processo de gravação." [...] continue lendo...

Artigos relacionados