ADVPL programando com MVC

Aprenda de uma vez por todas como programar em ADVPL utilizando a arquitetura MVC.

Olá, estamos de volta com mais uma postagem, desta vez falaremos sobre a arquitetura MVC na linguagem de programação ADVPL.
Primeiramente, MVC significa Model, View e Controller. É uma padrão de desenvolvimento de software criado para separar a lógica de negocio da lógica de apresentação, ou seja, seu código será escrito de forma totalmente separada, cada camada funcionando independente.
Os programadores que já desenvolvem em ADVPL de forma tradicional, podem encontrar um pouco de dificuldade em se acostumar com esta ideia, mas no final das contas, veremos que é um conceito muito importante para a evolução da linguagem e para a evolução profissional do programador.

Muito bem, sabemos então, MVC é um padrão que divide nosso código fonte em camadas, estas camadas são: Model ou Modelo de dados, View ou Interface, Controller ou Controlador. Neste post vamos falar um pouquinho sobre cada uma delas.

Model: Model é onde contem todas as funcionalidades da aplicação é nele que definimos as regras de negócio, exemplo: Campos, tabelas, estruturas e etc…
View: Podemos dizer que a View é responsável por “compilar” o modelo de dados. Ela é que transfere a interface da sua aplicação para o usuário.
Controller: Controla e responde as ações do usuário. O controller pode alterar estados do Model e selecionar Views correspondentes. Na linguagem ADVPL, para agilizar ainda mais a programação com MVC, a camada Controller já vem “integrada“, ou seja, o programador não precisa se preocupar com o Controller. Quando você iniciar seus estudos em ADVPL, verá que precisaremos nos preocupar apenas com o Model e com a View, o controller já estará “embutido” no pacote 😉


Para programarmos em ADVPL utilizando MVC, teremos que utilizar três funções obrigatórias para o correto funcionamento do nosso programa. Estas três funções são: MenuDef, ModelDef e ViewDef.
O MenuDef contém a definição das operações presentes no modelo, como o próprio nome já diz, nada mais é que o menu de nossa aplicação. O ModelDef Contém toda a construção e definição da nossa aplicação, lembrando que ele é o nosso modelo de dados. A ViewDef é a função responsável por construir a interface da nossa aplicação.
Não significa que seu programa deverá ter apenas estas três funções, ele precisa sim carregar uma User Function principal! Antes que eu me esqueça, é legal lembrar que todas estas três funções são Static Functions. Se você já fez o curso de ADVPL – Aprenda do ZERO você já deve saber do que estou falando 😉

A estrutura básica de um programa desenvolvido utilizando a arquitetura MVC é esta:
#include "Protheus.ch"
#include "FwMvcDef.ch"

User Function MVC001()
Return
Static Function MenuDef()
Return
Static Function ModelDef()
Return
Static Function ViewDef()
Return


Note que criamos uma User Function principal e em seguida temos as Statics que completam o nosso código.

Ainda tem um monte de coisa bacana para aprendermos sobre ADVPL utilizando o MVC, se você quer entender de uma vez por todas como programar em ADVPL com MVC e avançar ainda mais os seus conhecimentos na linguagem, não deixe de conferir o nosso novo curso de ADVPL com MVC! Neste curso vamos aprofundar na programação ADVPL e mostrar para todos os programadores que ainda tem “receio” de começar a desenvolver customizações em ADVL com MVC, que este conceito veio para ficar e se você não dominar isto, com certeza em sua carreira você vai se arrepender em algum momento.

Sobre o curso – ADVPL Avançando com MVC

Este é um curso exclusivo de ADVPL, que parte da ideia de que o aluno não saiba NADA sobre o desenvolvimento de ADVPL utilizando MVC. Neste curso o aluno aprenderá não só a programar utilizando este conceito, mas também a analisar outros códigos que tenham sido desenvolvidos em MVC. Um curso que foi desenvolvido tanto para alunos que nunca programaram em ADVPL usando o MVC, quanto para aqueles que ja sabem e queiram aprender um pouco mais, ou apenas rever alguns conceitos.

Então, se você se interessou no assunto e pretende aprofundar mais no desenvolvimento ADVPL, recomendo fortemente que você matricule-se ainda hoje neste curso. Fique tranquilo, pois o acesso ao curso é vitalício, não tem limite de tempo para assistir as aulas e o melhor ainda é que, como todos os outros cursos da RCTI, este curso não tem uma aula final, ou seja, mesmo depois das mais de 30 aulas sobre programação e mais de três horas e meia de vídeo aulas, o curso continua em aberto, assim novas aulas poderão ser adicionadas a qualquer momento!
Esta é a melhor forma de você aprender de uma vez por todas sobre MVC em ADVPL.



Deixe uma resposta