Por fim, é necessário que você escolha uma arquitetura para sua solução caso seja baseada em
software. Para essa finalidade recomendo que você utilize o Model View Controller (MVC), por motivos
de facilidade de entendimento e de facilidade na construção. O MVC é um padrão de design de
software previsível, que pode ser usado em muitas estruturas com muitas linguagens de
programação, e isso inclui todas as que usei algumas linhas acima para que você pudesse ter
ferramentas para executar testes.
O padrão de design MVC serve para separar a camada de apresentação da lógica de negócios. É tudo
muito elegante e de entendimento rápido, já que há apenas três elementos principais a se levar em
consideração:
Model (ou modelo): que serve para armazenar e gerenciar dados, ou seja,
um banco de dados;
View (ou visualização): trata-se da interface gráfica do usuário ou GUI.
Aqui trata-se de uma representação visual dos dados: gráfico, diagrama,
tabela, formulário etc. A visualização contém todas as funcionalidades
que interagem diretamente com o usuário e isso pode incluir o clicar em
um botão ou em um evento de entrada de dados ou funcionalidade;
Control (ou controlador): é onde fica o “cérebro” do aplicativo. O
controlador conecta o modelo e a visualização. Serve para converter as
entradas da visualização em demandas para recuperar ou atualizar dados
no modelo. O controlador recebe a entrada da visualização, usa a lógica
para traduzir a entrada em uma demanda para o modelo (regras de
sistemas, regras de negócios etc.), o modelo pega os dados e o
controlador passa os dados do modelo de volta para a visualização para o
usuário ver. Isso permite que não haja exposição de dados do banco além
do que foi pedido e impede que haja acessos não autorizados, quando
bem construído.