Projeto de exemplo usando SAP Cloud Application Programming Model.

Projeto de exemplo usando SAP Cloud Application Programming Model.

Pessoal, no fim de 2018 a SAP lançou um modelo de boas práticas e ferramentas para desenvolvimento de aplicações em cloud chamada de Cloud Application Programming Model. Este modelo guia o desenvolvimento de aplicações de negócio para o ambiente em Cloud permitindo, segundo a SAP, focar mais nas regras do seu negócio do que ficar se preocupando muito com detalhes e atividades de configuração que tomam muito tempo.

Resultado de imagem para sap cloud application programming model

Para isto toda a parte de regras de negócio, modelos de dados, criação de serviços OData são abstraídos utilizando a linguagem cds. Desta forma podemos através de alguns arquivos cds criar toda a lógica de banco de dados da aplicação, suas entidades e relacionamentos, e também e expor estas entidades em formas de serviços OData.

Neste modelo podemos criar projetos basicamente em duas tecnologias/linguagens Java ou Node.js. Embora o modelo informe suportar outras linguagens, oficialmente a SAP possui plugins, módulos e dependências customizados nestas linguagens.

Para o desenvolvimento, podemos utilizar a WebIDE do SAP Cloud Platform e banco SAP Hana ou desenvolver os projetos localmente utilizando o Visual Studio Code e banco sqlite. Podendo posteriormente implantar a aplicação tanto no SAP Cloud Platform ou até mesmo em uma instância local do SAP HANA caso opte por usar um ambiente on-premise.

Para auxiliar em meus estudos estou criando um projeto no Git Hub o qual pode ser utilizado de exemplo. Tal projeto vem sendo atualizado frequentemente a medida que vou evoluindo nos requisitos. Acompanhe pelo github para verificar as evoluções e orientações sobre como utiliza-lo.

Este projeto consiste basicamente de um modelo de escola, onde temos os estudantes, cursos, as turmas e as matrículas. A regra é que um aluno pode se matricular em diversos cursos, os quais são ofertados regularmente através de turmas com períodos de duração pré definidos.

Com ele podemos ver alguns princípios como a criação das entidades e seus relacionamentos. A utilização de relacionamentos n:n, n:1 e 1:n. A criação de serviços OData de acordo com perfis de acesso. (Estudante e Adm). A criação de consultas customizadas e views usando CQL (CDS Query Language). A customização e aplicação de lógicas de negócio aos serviços OData. Como por exemplo verificar se o aluno já está matriculado a um curso no momento da matrícula e verificar se ainda há vagas na turma.

Para este exemplo optei por utilizar o Node.js e Javascript como tecnologias. Posteriormente criarei toda a parte de frontend utilizando SAPUI5. Fiquem ligados e me acompanhem no github para a evolução.

Para conhecer um pouco mais sobre SAP Cloud Platform veja este post que falo um pouco mais sobre esta plataforma. https://saphanadev.com.br/2019/05/03/conhecendo-a-sap-cloud-platform-a-plataforma-de-cloud-da-sap/

Nos siga nas redes sociais:

Balbino Soares

Com mais de 15 anos de experiência como consultor SAP, tive a oportunidade de participar de diversos projetos, desde projetos de inovação envolvendo novas tecnologias como mobilidade, cloud, Iot, quanto projetos de upgrade e atualização. Minha principal área de atuação é como desenvolvedor, atualmente sou líder de equipe de desenvolvimento e arquiteto de soluções com foco em inovação. Sou um grande entusiasta de novas tecnologias, sempre buscando repassar meus conhecimentos adiante, pois acredito na premissa de que quanto mais se ensina, mais aprendemos.

Deixe um comentário

Fechar Menu
RSS
Follow by Email
YouTube
YouTube
LinkedIn
LinkedIn
Share
Instagram