Vídeo: DrupalCon Latin America 2015: Designing Drupal 8 2024
Construir componentes reutilizáveis orientados para o serviço na computação em nuvem pode ser muito desafiador. Você precisa identificar quais componentes são os mais adequados para reutilização. Para atingir esse objetivo, você precisa manter a lógica comercial separada do encanamento - infra-estrutura técnica.
Para construir um aplicativo de software, você deve informar ao computador como fazer o que deseja em dois níveis:
-
Em termos humanos: a lógica de negócios
-
Em termos de computador: o encanamento
Aplicações comerciais compreendem linhas de código de programa que informam aos computadores quais ações devem ser tomadas. Algumas dessas instruções são escritas como lógica comercial: "Adicionar uma linha de item à ordem", por exemplo. Alguns são simplesmente encanamento no nível da infra-estrutura - diretivas do nível do computador, como "Verifique se a impressora está disponível. "Ambos são necessários.
Se você não descreve a atividade do aplicativo em lógica de negócios simples (pedidos, produtos, clientes, contas, etc.), você rapidamente perde de vista o que você está tentando alcançar. Se você não descrever em termos de computador exatamente como o computador deve realizar sua tarefa, o software simplesmente não funcionará.
A lógica de negócios precisa ser tão livre quanto possível das dependências de encanamento se você pretende seguir uma abordagem orientada para serviços. Você precisa mantê-los separados para que você mantenha a flexibilidade quando as coisas mudam.
Por exemplo, se você quiser alterar a ordem em que as funções comerciais específicas acontecem e você manteve sua lógica comercial separada do seu encanamento, fazer essas mudanças não é grande coisa. Mas se sua lógica de negócios e seu encanamento são uma aplicação gigante, as mudanças são caras e complicadas, levam tempo, exigem testes extensivos e são muito importantes.
A figura a seguir apresenta a idéia de uma camada de serviço de negócios e uma camada de encanamento, além de apresentar a idéia de serviços específicos. A combinação de camadas comerciais e técnicas funciona assim:
Uma visão orientada a serviços.-
A camada Business Service consiste em componentes de software que fornecem e executam funções empresariais específicas. Neste exemplo, os serviços empresariais que serão entregues aos usuários são processamento de pedidos e verificação de crédito .
-
A camada de encanamento é constituída por componentes que suportam os serviços comerciais acima mencionados, gerando e gerenciando recursos reais de computadores. Neste exemplo, os componentes necessários para lidar com o encanamento são o servidor web e o servidor de banco de dados.
O diagrama anterior ilustra o conceito de dividir aplicativos de software em componentes que realizam funções de negócios - serviços empresariais - e componentes que suportam o uso e gerenciamento de recursos de computador - encanamento. Com esta quebra, você está em melhor posição para reutilizar os serviços empresariais estreitamente definidos de várias maneiras.