Post: [Delphi com Linux] Construindo uma nova aplicação Delphi para o Linux

Alessandro Medeiros

Fala ai Radizeiro e Radizeria, tudo bem com você?

Com essa compatibilidade do Delphi para a plataforma Linux desperta grandes inovações.

O Delphi hoje está compilando para Windows, Android, IOS, Mac e Linux.

Aumentando a portabilidade dos nosso códigos, e não precisando ir para outras linguagens para ter maior portabilidade dos nosso software.

E nesse post iremos desenvolver um exemplo de CRUD bem simples rodando diretamente no Linux.

Hoje você que possui um ERP que está rodando 100% no Windows, com pequenos ajustes terá a possibilidade de fazer com que ele possa rodar no Linux, caso sua aplicação tenha sido desenvolvida com o FMX.

E para isso você consegue trabalhar utilizando as diretivas de compilação, irei deixar um link abaixo da própria documentação da Embarcadero para lhe auxiliar.

http://docwiki.embarcadero.com/RADStudio/Rio/en/Conditional_compilation_(Delphi)

Agora com o nosso projetinho que criamos no post anterior, e rodando no Linux.

E nesse primeiro momento estaremos utilizando o banco de dados SQLite.

Você pode utilizar qualquer banco de dados que tenha suporte no Linux e claro, que o Firedac tenha suporte.

Vou deixar logo abaixo o link do SQLite para o Firedac e Linux.

http://docwiki.embarcadero.com/RADStudio/Rio/en/Connect_to_SQLite_database_(FireDAC)

Nesse nosso docwiki, onde você encontra toda a explicação necessária para dar compatibilidade com o Firedac e Linux.

Dentro dessa documentação na cessão de Cliente Linux você encontra alguns comandos que devem ser executados para instalar essa compatibilidade.

Nessa documentação você encontra o exemplo para os sistemas operacionais derivados do Debian, como por exemplo o Ubuntu.

Mais especificamente é mostrado a instalação para o Linux Ubuntu Server 16.04 LTS, mas pode ser feito em versões superiores também.

sudo apt-get install sqlite
sudo ln -s /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 /usr/lib/x86_64-linux-gnu/libsqlite3.so

No comando acima você pode observar que é realizada a instalação e a criação de um link simbólico para a biblioteca do SQLIte.

Com esses comandos já vai funcionar a compatibilidade com o banco de dados do SQLite.

Agora com o SQLite funcionando, simplesmente iremos adicionar um FDConnection e o driver do SQLite nesse nosso exemplo, e realizar a conexão com o banco de dados.

É bem simples, sendo que a única diferença é que você irá alterar o caminho do banco de dados.

Uma dica, é primeiro realizar todas as configurações utilizando sua máquina Windows, para que consiga realizar todos os teste, e depois fazer a configuração e Deploy para uma máquina Linux.

Vamos adicionar um outro componente para que possamos trabalhar os dados do nosso SGDB, que será o FDTable.

Dentro do evento OnCreate do formulário, iremos incluir um código para criação da tabela desse nosso banco de dados.

procedure TForm1.FomrCreate(Sender: TObject);
begin
FDConnection1.ExecSQL(
'CREATE TABLE IF NOT EXISTS CONTACTS ('+
'CONTACT_ID INTEGER PRIMARY KEY,'+
'LAST_NAME TEXT NOT NULL,'+
'EMAIL TEXT NOT NULL UNIQUE,'+
'PHONE TEXT NOT NULL UNIQUE '+
'); ');
end;

No comando acima podemos observar que na criação da tabela está sendo verificado se existe a tabela contacts, lembrando que isso é uma particularidade do próprio SQLite, que existe em alguns SGDB.

E vamos abrir um gerenciador de banco de dados, para que possamos realizar procedimentos de administração desse nosso banco de dados.

Observe que nossa tabela está criada.

O legal do SQLite é isso, você não precisa ficar mandando o banco de dados, dependendo do projeto.

Mas caso você queira mandar um banco de dados pronto.

Para que você possa enviar o banco de dados para uma máquina Linux você irá precisar de um gerenciador de pastas remoto muito utilizado em máquina windows para acessar o Linux.

O aplicativo utilizado é o SCP, que é um gerenciador gráfico de SSH, bibliotecas de acesso remoto do Linux.

Dentro do nosso FDTable iremos configurá-lo para acessar a tabela contacts, que criamos automaticamente ao iniciar o aplicativo.

Não existe nada tão simples de ser criar um CRUD utilizando o LiveBinds do Delphi.

E é isso que iremos fazer nesse nosso projeto totalmente RAD para o Linux.

Para isso basta clicar com o botão direito do mouse sobre o projeto, e selecionar a opção Bind Visualy.

Irá abrir essa tela.

E vamos relacionar o nosso FDtable com o StringGrid.

Depois disso clicamos com o botão direito do mouse no BindSource e adicionamos um navigate.

E agora dentro do create do nosso formulário, e logo após a criação da tabela do banco de dados iremos abrir o nosso FDTable.

procedure TForm1.FomrCreate(Sender: TObject);
begin
FDConnection1.ExecSQL(
'CREATE TABLE IF NOT EXISTS CONTACTS ('+
'CONTACT_ID INTEGER PRIMARY KEY,'+
'FIRST_NAME TEXT NOT NULL,'+
'LAST_NAME TEXT NOT NULL,'+
'EMAIL TEXT NOT NULL UNIQUE,'+
'PHONE TEXT NOT NULL UNIQUE '+
'); ');
end;
FDTable1.Open;

Fazemos isso só para abrir a tabela.

Agora dentro desse nosso projeto iremos adicionar uns edits para que possamos realizar os cadastros.

E esses edits iremos vincular a cada campo da tabela usando o LiveBinds do Delphi.

Vamos executar e testar nossa aplicação executando diretamente no Linux.

E caso você tenha interesse de conhecer mais sobre Delphi com Linux acessa o nosso portal do CLUBE DE PROGRAMADORES EM DELPHI, onde você não só terá conteúdos relacionados ao Firedac, mas uma quantidade enorme de conteúdos que poderá lhe ajudar muito no seu dia a dia, é uma verdadeira NETFLIX para os programadores Delphi.

CLIQUE AQUI E SAIBA MAIS SOBRE O CLUBE DOS PROGRAMADORES DELPHI


Faça sua busca

CATEGORIAS

POSTS RECENTES

E caso você tem interesse de conhecer mais sobre [Delphi com Linux] Construindo uma nova aplicação Delphi para o Linux, acesse o nosso portal do CLUBE DE PROGRAMADORES EM DELPHI
Você não terá só conteúdos relacionados ao [Delphi com Linux] Construindo uma nova aplicação Delphi para o Linux, mas uma quantidade enorme de conteúdos que poderá lhe ajudar muito no seu dia a dia, é uma verdadeira NETFLIX para os programadores Delphi.
Gostou?
Compartilhe:

Embarque no foguete com milhares de devs para aprender desenvolvimento, evoluir de forma contínua e se manter relevante no mercado.

Sobre
Dúvidas
Cadastre-se em nossa lista

Para ter acesso em primeira mão, a tudo que acontece na Academia do Código, basta se cadastrar em nossa lista

Grupo Thulio Bittencourt | Academia do Código

#FaçaPartedaHistória

Copyright © 2022 – Todos os direitos reservados