Pergunta

Eu preciso escrever um aplicativo WinForms muito simples, mas muitas vezes eu ficar preso em mais de modo analítico com estes. Eu ficar preso em loops de Sim, Não, repetir, e com muito pouco pensamento para fazer sobre as ações do aplicativo, eu começar a pensar sobre o 'fluxo de trabalho' da aplicação. Devo apenas ter um método para cada tarefa, e chamar cada um consecutivamente, após verificar que o anterior não levantou uma bandeira 'aborto'?

Eu deveria implementar uma interface ITask simples, e uma classe para cada tarefa, em seguida, percorrer uma coleção ordenada de tarefas? Devo usar isso como uma simples introdução ao Windows Workflow? O escopo deste aplicativo e seu conjunto de tarefas é garantido para crescer, por isso a minha primeira opção de codificar as tarefas é o mais desagradável, mas dado o tamanho do aplicativo, a manutenção pode ser facilmente feito apenas mudando o código; o executável é sempre implantado com os materiais de atualização, e não permanentemente implantado.

Foi útil?

Solução

No Workflow Foundation, gostaria de mantê-lo para cenários avançados / projectos, onde você vai usar um monte de que, como fluxo de trabalho altamente personalizável que deseja variar por usuário / empresa, fluxos de trabalho complexos necessidades, pausar / continuar.

Gostaria de ir a rota ITask por sua flexibilidade (métodos vs. simples), enquanto ainda simples ao mesmo tempo. Eu sinto que também irá ajudá-lo com os testes de unidade / integração. Dito isto, eu recomendo para manter um olho sobre a reutilização de tarefas, como diria uma tarefa movimento de arquivos, como você não quer acabar com toneladas de tarefas que fazem o mesmo. Basta fazê-lo sobre os passos refatoração, para que você deixe a ditar necessidades / uso real que você precisa (em testes - TDD:)).

Outras dicas

Faça a coisa mais simples. Você sempre pode refatorar mais tarde.

Eu estou indo para adicionar à sugestão de Pedro, dizendo: "Faça a coisa mais simples poderia funcionar , que também é um bom design ".

Há momentos em que a coisa "mais simples" é também a coisa mais estúpida, do ponto de vista de design, e vai causar dor no caminho, que é o oposto do que o mantra de programação extremem é depois.

A segunda opção soa bem para mim. É simples de implementar, um bom design e irá facilitar a manutenção mais tarde.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top