News & Events
[Série] Criando seu app mobile com Delphi, Boss e Horse (1/3)
- 17 de março de 2021
- Posted by: Adriano Santos
- Category: Notícias

Nível
O desenvolvimento de aplicativos envolve diversas etapas, tais como construir o MVP, levantamento de requisitos, elaboração do design, modelagem de banco e prototipação. Mas tem duas importantes etapas na construção do app que não podem ficar pra trás: o servidor de aplicações e a gestão de dependências. Nessa série de três artigos veremos como fazer isso usando Horse e Boss.
Por onde começar?
Como falei, construir um aplicativo mobile vai bem mais além de simplesmente incluir botões, listas, animações e pensar apenas no dispositivo móvel. Para que um app funcione, muitas vezes (praticamente 100% delas) precisamos fazer uso de serviços externos, principalmente de bancos de dados contendo as informações que serão consumidas pelo usuário.
Um app de Força de Vendas por exemplo, precisará de acesso ao banco de produtos, clientes, pedidos, notas, contatos, vendedores, etc. Um app de conta corrente, precisa gerar extrato, transações e muitos outros serviços.
Evidentemente que esses serviços não são processados diretamente no equipamento e se forem, já estamos começando errado, pois precisamos entender que o dispositivo móvel possui pouco processamento, baixa memória RAM e mínimo de espaço em disco.
É verdade que muitos smartphones e tablets possuem mais poder de processamento do que muitos notebooks por ai, entretanto não são recomendados para processamentos longos, tão pouco para armazenar dados sensíveis, como cartões de crédito, senhas ou quaisquer outros dados.
Por isso, sempre que pensamos em mobile, precisamos de um olhar mais clínico. No mínimo estamos falando em dois projetos diferentes: mobile e servidor (ou provedor de serviços, ou API de serviços, etc).
Separando as responsabilidades
Para que possamos extrair o melhor das nossas qualidades de desenvolvedor, vamos usar três ferramentas na construção do nosso exercício. Não vamos criar um aplicativo em especial, o objetivo é entendermos a base para construção.
Vamos usar Delphi, claro. O Boss como nosso gerenciador de dependências e o Horse, o framework para construção do servidor de aplicações.
O Boss será útil para que possamos gerenciar as dependências tanto com app quando do nosso servidor. Ele pode ser usado não só em apps mobile, mas também em outros projetos.
O Horse é o framework que nos possibilitará construir nossa API de serviços.
Vamos lá?
Boss, nosso gerenciador de dependências
Muitas vezes é necessário adicionar e/ou fazer uso de bibliotecas, componentes, classes ou outros recursos de terceiros em nossos sistemas. Isso acontece o tempo todo em praticamente todas as linguagens de programação. E mesmo que estejamos construindo nossos próprios recursos, é importante que possamos gerenciar tais recursos de maneira eficaz.
Pode ser uma biblioteca de componentes ou uma classe facilitadora, não importa. Sempre que fazemos uso de algum recurso externo em nossos sistemas, estamos incluindo dependências no software. E não há problema algum nisso, é bastante comum essa prática.
E se estamos adicionando dependências, precisamos gerencia-las. Gerenciar significa termos o controle dos recursos que serão adicionados ao nosso aplicativo, software, ERP, etc.
Imagine você adiciona uma dependência e essa dependência recebe um update, uma atualização de versão com novas implementações e/ou correções de bugs?
Bingo. É para isso que servem os gerenciadores de dependência. O Boss foi criado com esse intuito e facilita muito nosso trabalho no dia a dia.
Usaremos ele em nossos projetos servidor e mobile. E é super fácil instalar em nosso ambiente. Bora?
Instalando o Boss
O nosso exercício começa com o download e instalação do Boss em nosso equipamento. Ele é gratuito e super simples de ser baixado, instalado e configurado. Então vamos iniciar.
Acesse o GitHub do projeto nesse link. Aqui você encontrará todas as informações necessárias para prosseguir. Movimente a tela para baixo e encontre a documentação. Você irá encontrar o instalador:

Clique no link setup, assim será redirecionado para as versões do Boss. Até o fechamento desse artigo a versão mais atual é v3.0.4. Basta escolher o arquivo para baixar, entre as opções boss.exe, boss32.exe, Source code.zip e Source code.tar.gz.
Vamos usar o Boss.exe. Baixe e execute o arquivo. Caso receba uma mensagem do Windows clique em More Info (Mais informações) e então em Run anyway (Executar assim mesmo).


Um prompt do DOS será executado, o Boss instalado e a janela se fechará. Talvez precise reiniciar o Windows, mas na maioria dos casos esse processo já é suficiente.
Abra uma janela do prompt do DOS (CMD) e execute apenas digita boss e tecle Enter.
1 | boss |

Se a instalação tiver sido executado com sucesso, você deve ver uma janela semelhante a mostrada anteriormente. Pronto, seu Boss está instalado.
O Boss funciona por linha de comando então sempre que precisarmos fazer a gestão de dependências de um projeto, devemos utilizar o CMD.
Vamos fazer um teste simples apenas para entender como funciona.
Abra uma instância do Delphi e crie um projeto novo. Ele pode até ser um projeto VCL (Visual Component Library), mas como estamos falando de mobile…crie um projeto usando File > New > Multi-Device Application Delphi. Salve o projeto em uma pasta de sua preferência. Eu vou salvar em D:\Temp\Projeto Teste.
Agora abra um CMD, PowerShell ou qualquer terminal que costuma usar. Eu particularmente gosto de usar o Fluent Terminal, disponível gratuitamente na Microsoft Store. Navegue até a pasta onde criou o projeto e em seguida digite o comando abaixo e pressione Enter. O Boss pedirá algumas informações, tais como Nome do Pacote (package name), homepage, versão (version), descrição (description) e pasta origem (source folder). Você pode pressionar Enter em todos e ignorar ou se quiser que o Boss instale em modo quiet (silencioso), digite –q ao final da linha.
1 | boss init |
Não se preocupe, na documentação do Boss no GitHub você encontra essas informações e dicas dos comandos.


Nas imagens acima você pode visualizar o resultado final da inicialização do Boss em nosso projeto. Fácil não? Show.
Quero que observe uma coisa em particular agora. Aplique o comando DIR no prompt para mostrar os arquivos da pasta do seu projeto agora ou se preferir abra um Windows Explorer e navegue até a pasta. Notará que alguns arquivos foram instalados (criados). São eles boss.json e boss-lock.json. Esses arquivos contém (conterão) as informações sobre as dependências do seu projeto e serão monitoradas pelo Boss.
Se você abrir o arquivo boss.json verá essa estrutura:
1 2 3 4 5 6 7 8 9 | { "name" : "Projeto Teste" , "description" : "" , "version" : "1.0.0" , "homepage" : "" , "mainsrc" : "./" , "projects" : [], "dependencies" : {} } |
Não necessidade de abrir esse arquivo e fazer alterações, apenas para seu conhecimento é aqui que ele mantém tais informações.
Pra fechar nosso primeiro passo dessa série, vamos aprender a instalar uma dependência no nosso projeto.
Não se preocupe com esse projeto no momento, ele será descartado mais tarde quando criamos um app real.
Ainda no CMD vamos dar um comando para instalar um pacote de classes que uso bastante para conexão com banco de dados. Ele encontra-se em meu GitHub nesse link. Com esse pacote conseguimos criar conexões com um Database em runtime com poucas linhas de código. Passe para a próxima seção e vamos finalizar com a instalação dele.
Instalando uma dependência no nosso projeto
Bem, como falei, uso esse pacote de classes pra facilitar meu trabalho na hora de conectar a um banco de dados. Eu usarei esse pacote mais pra frente. Quero que se concentre agora apenas na instalação dele nesse exemplo teste.
Para instalação de dependências usaremos o comando install do e o pacote que será instalado, nesse caso o caminho completo do pacote no GitHub.
https://github.com/adrianosantostreina/ADRConnection
Em outras palavras nosso comando ficará assim:
1 | boss install https: //github .com /adrianosantostreina/ADRConnection |
Pressione Enter e aguarde. E se tudo correr bem, verá uma janela semelhante a seguinte:

Sucesso. Eu não te contei, mas quando fizemos o boss init no CMD, o projeto Delphi foi alterado, portanto se clicar na janela do Delphi agora, verá uma janela semelhante a:

Isso porque o Boss de fato alterou o projeto e adicionou informações sobre as dependências. Clique em Yes to All e prossiga. Pronto, posso passar a usar minha classe de conexões tranquilamente. Não entraremos nesse quesito agora.
O mesmo procedimento pode ser usado para instalar outras dependências e usaremos isso para criar nosso servidor Horse e instalar recursos nele, os chamados middlewares. Mas isso é assunto para noso próximo artigo.
Conclusão
Como pudemos perceber, o Boss é uma excelente opção para tornarmos nosso software mais organizado e fácil de gerenciar as dependências que incluímos nele. Outros comandos do Boss são importantes e recomendo fortemente que leia as instruções e documentação no GitHub da ferramenta.
Nos próximos artigos vamos iniciar um novo servidor no Horse e ver como podemos criar nossas próximas APIs diretamente nele.
E se você quiser se aprofundar no assunto, com vídeos detalhados e informações mais passo a passo de como fazer na prática, pode adquirir o meu treinamento específico neste link abaixo, com 30% de desconto exclusivo.
Muito obrigado, bons estudos e até a próxima.
Quer aprender a criar aplicativos mobile com Delphi, Boss e Horse?
Somente nesse link você tem 30% de desconto na aquisição do nosso treinamento:
Mobile com BackEnd Horse
de R$ 597,00
por
12x R$ 41,79
ou R$ 417,90 à vista

Author: Adriano Santos
1 comentário
Comments are closed.
[…] inicializar o Boss e em seguida instalar o Horse em nosso projeto. A inicialização é como vimos no artigo anterior, ou seja, usando o comando init do Boss. Portanto, execute o comando […]