Conheça o Lazarus

Lazarus é um ambiente de desenvolvimento integrado desenvolvido para o compilador Free Pascal. O software objetiva ser compatível com o Delphi e, ao mesmo tempo, suportar diversas arquiteturas e sistemas operacionais.

Free Pascal é um compilador de Object Pascal que roda em Linux, Windows, OS/2, Mac OS tradicional, Mac OS X, ARM, BSD, BeOS, DOS e mais. Ele foi desenhado para compilar código com a sintaxe do Delphi ou dos dialetos Pascal do Macintosh e gerar executáveis para diferentes plataformas a partir de um mesmo código-fonte.

Lazarus para windows: tela PDV com componetes ACBr para emissão SAT CFe (cupom fiscal eletrônico)
Aplicativo em execução emitindo cupom fiscal eletrônico SAT em ambiente de testes com emulador da SEFAZ
Tela de codificação
Lazarus para Linux, layout de tela integrada a IDE como nas novas versões do Delphi
Lazarus para Linux, layout de tela classica da IDE como no Delphi 7

Processo de Desenvolvimento

O projeto Lazarus possui uma boa comunidade e um processo eficiente de desenvolvimento, com muitos contribuidores e testadores. A comunidade resolve os problemas através de discussões, e programadores submetem patches para corrigir os problemas. A cada noite, pacotes pré-compilados são gerados com o último código para os testadores, o que torna o processo de desenvolvimento do Lazarus altamente dinâmico.

Bancos de Dados

O Lazarus possui suporte para vários bancos de dados. Os pacotes adequados, porém, não vêm pré-instalados. Se todos os pacotes viessem instalados, o programador precisaria ter disponíveis as bibliotecas para acessar todos os bancos de dados. Para ativar o suporte para um deles, basta instalar o pacote adequado. Os pacotes vêm junto com a instalação do Lazarus.

O acesso aos bancos de dados pode ser feito por meio de código, ou colocando componentes num formulário ou janela. Os componentes sensíveis a dados (ou data-aware) representam os campos de uma tabela representada por um TDataSource. A conexão entre ambos é feita através de propriedades. A tabela por sua vez está associada a um banco de dados por meio de componentes específicos, como TPSQLDatabase, TSQLiteDataset ou outros.

Os seguintes bancos de dados são suportados:

    PostgreSQL: requer o pacote PSQL
DBase e FoxPro podem ser acessados sem a necessidade de um servidor ou uma biblioteca externos através do componente TDbf
MySql é suportado
SQLite precisa apenas de uma única biblioteca externa e do componente TSqliteDataset
MSSQL funciona com o Zeoslib
Interbase / Firebird também funcionam com o último Zeoslib

Cross desenvolvimento

O Free Pascal suporta cross-compilação, e aplicativos do Lazarus podem ser cross-compilados de Windows para Linux e FreeBSD e vice versa. Compilar do Mac OS X para Windows, Linux e FreeBSD é possível. Cross-compilar para OS X pode ser feito, mas ainda é difícil.

Cross-compilação também é utilizado corriqueiramente durante o desenvolvimento de aplicados para PDAs com o Lazaraus. como aplicativos para Windows CE.

Licença

Apesar do Lazarus ser licenciado em GPL, software desenvolvido com ele pode ser distribuído sob qualquer licença. A biblioteca de componentes do Lazarus (LCL, do termo inglês Lazarus Component Library), é ligada estaticamente ao executável sob uma licença LGPL modificada, que permite a vinculação dela a programas proprietários.

Note que instalar pacotes equivale a ligar o programa à IDE. Então distribuir o Lazarus com pacotes pré-instalados feitos sob licenças não compatíveis com a GPL é uma violação da licença. Apesar disso é possível desenvolver pacotes do Lazarus proprietários, desde que não se distribua a IDE com eles pré-instalados.

7 comentários

  1. Estou fazendo um projeto, emitindo Sat, pretendo fazer nfe, mas estou sem certificado… Qdo tiver um em mãos vou postar

  2. Boa Noite, gostei muito de usar o lazarus, mas não sou programador profissional, gostaria de construir um projeto baseado em contas por exemplo, para fazer um livro caixa com lançamentos de créditos e débitos, tem algum exemplo de video.
    Obrigado

  3. Carlos de Jesus Junior disse:

    Quero aprender a desenvolver nesta plataforma

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *