Difference between revisions of "Lazarus For Delphi Users/pt"

From Free Pascal wiki
Jump to navigationJump to search
Line 64: Line 64:
  
 
Há muitas opções para as características do código.
 
Há muitas opções para as características do código.
 +
 +
 +
=== Designer ===
 +
- Guidelines
 +
==== Inspetor de Objeto(Object Inspector) ====
 +
Nos ambientes de desenvolvimento do Delphi e do Lazarus  temos o Inspetor de Objeto(Object Inspector) que  é utilizado para editar e atribuir as propriedades, eventos, etc... do componente. Temos a seguir pequenas diferenças reparadas no uso:
 +
# Começando no Delphi 5 há uma árvore de objeto(Object TreeView) que pode ser usada para navegar e selecionar objetos de acordo com a hierarquia adicionando ao tradicional arrastar e soltar no Inspetor de Objeto. No Lazarus é parte do Inspetor de Objeto e é usada no lugar do padrão arrastar e soltar, você pode selecionar para usar ou não istro através do clique do botão direito do mouse no menu "Show Component Tree"
 +
# No Delphi duplo clique em um evento em branco irá auto criar um e abrir o Editor de Código(Source Editor) na posição, no Lazarus há um botão à direita do listar(...) selecionado que executa esta ação preferivelmente
 +
# No Delphi você deve manualmente apagar o nome de um evento no editor para remover a ligação, no Lazarus você pode listar os eventos(...) e selecionar "(None)".
 +
# Igualmente a Eventos, duplo clique em propriedades como booleana não irá mudar o valor, você deve selecionar o valor da lista. E para abrir aqueles com um editor de formulário associado, você deve clicar o botão '...' à direita do editor/lista
 +
 +
==== Pacotes(Packages) ====
 +
Pode o Lazarus instalar e usar Pacotes do Delphi ?
 +
 +
Não, porque eles requerem a magia do compilador Delphi.
 +
 +
Nós necessitamos feitos especialmente para lazarus?
 +
 +
Sim.
 +
Crie um novo pacote, salve-o no diretório fonte do pacote(normalmente o mesmo
 +
diretório do .dpk(arquivo), adicion a LCL como pacote necessário e finalmente
 +
adicione os arquivos .pas .
 +
Você pode instalá-lo, ou usá-lo nos seus projetos agora.
 +
Há algumas diferenças entre pacotes do Lazarus e do Delphi, então por favor leia
 +
 +
 +
- veja docs/Packages.txt nos fontes do lazarus.

Revision as of 13:19, 18 January 2007

Deutsch (de) English (en) español (es) français (fr) 日本語 (ja) 한국어 (ko) português (pt) русский (ru) slovenčina (sk)

Delphi -> Lazarus

Lazarus é uma ferramena de desevolvimento rápido de aplicações (RAD) como o Delphi. O que significa que ela contém uma biblioteca de componentes visuais e uma IDE. A biblioteca de componentes do lazarus (LCL) é muito parecida com a do Delphi que é a VCL. Muitas unidades, classes e propriedades tem o mesmo nome e funcionalidade. Com isto converter entre eles é fácil. Mas Lazarus "não" é um 'clone do Delphi de código aberto'. Não espere 100% compatibilidade.

As grandes diferenças

Lazarus é completamente de código aberto, é escrito indepente de plataforma e utiliza o compilador Free Pascal(FPC). FPC funciona em mais de 15 plataformas. Mas nem todos os pacotes e bibliotecas estão portados, então Lazarus atualmente funciona em Linux, FreeBSD, MacOSX e Win32.

' Lazarus não está completo, como está este texto. Nós sempre procuramos novos desenvolvedores, geradores de pacotes, portadores e escritores de documentação, ... .

Delphi IDE -> Lazarus IDE

Projetos

O arquivo principal de uma aplicação Delphi é o .dpr . Enquanto que para o Lazarus é o .lpi (Lazarus Project Information - informação do projeto do lazarus). Mas, um .dpr no Delphi contém o código fonte do programa principal, informações das unidades utilizadas e diretivas de compilação, enquanto que o arquivo .lpr no Lazarus contém o código fonte do programa principal e o restante fica na .lpi .

Por exemplo:

Delphi armazena os caminhos das unidades no arquivo .dpr . Pela instância: unit1 in 'path/Unit1.pas'. Este 'in' especifica os caminhos das unidades para o Delphi e não está pronto para ser usado na Lazarus IDE. Não o use. Use preferivelmente os trajetos(caminhos) da unidade nas opções do compilador.

Uma importante regra: Há sempre um projeto. Somente feche um projeto para sair do lazarus ou abrir outro projeto. É porque um projeto lazarus também é uma "sessão". Isto significa, o corrente editor indica também para armazenar no arquivo .lpi e são restaudos quando você reabre o projeto. Por exemplo: Você está debugando um projeto, indica vários pontos de parada e marcadores. Você pode salvar o projeto a qualquer momento, feche o lazarus ou abra outro projeto. Quando você reabrir o projeto, mesmo em outro computador, todos os seus pontos de parada, marcadores, arquivos abertos, posições do cursor, histórico de pulos, ... são restaurados.

Editor de Código

Aproximadamente todas as teclas e atalhos podem ser definidos em environment->editor options->key mappings

A IDE(ambiente de desenvolvimento) do Lazarus tem várias ferramentas para fontes. Muitas delas são parecidas e trabalham de forma similar ao Delphi. Mas há uma importante diferença: Lazarus não usa o compilador para pegar informação do código. Ele interpreta os fontes diretamente. Isto tem uma grande quantidade de vantagens:

O editor de fonte trabalha com "comentários" Para Delphi os comentários no fonte são somente espaçoes entre o código. Nenhum comentário do código trabalha aqui e quando o código novo é automaticamente introduzido, seus comentários se perderão. Embora isto não seja completamente garantido, trabalha frequentemente. E quando o código novo é introduzido, o IDE usa algumas heuristicas para manter o comentário e codificá-lo junto. Por exemplo: Isto não irá dividir a linha "c:char; // comentário".

Delphi tem "Completar Código"(Ctrl+Space) é chamado "Identificar Completar" sobre o Lazarus. O Lararus termo "Completar Código" tem uma característica, combinando "Completar Automaticamente Classe"(mesmo sobre Delphi), "Completar Variável Local" e "Completar Associação de Evento". Todos deles são invocados por Ctrl+Shift+C e a IDE determina pela posição do cursor, o que significa.

Exemplo para Completar Variável Local

Assuma que você tenha criado um novo método e escrito o seguinte "i:=3;"

procedure
TForm1.DoSomething;
begin
i:=
3
;
end
;

Posicionando o cursor sobre o identificador "i" e precionando Ctrl+Shift+C pegará:

procedure
TForm1.DoSomething;
var
i: Integer;
begin
i:=
3
;
end
;

Exemplo para Completar Associação de Evento

Um ótimo recurso do object inspector é automaticamente criar métodos. O mesmo você pode pegar no editor de fonte.
Por Exemplo:

Button1.OnClick:=

Posicione o cursor atrás do operador de atribuição ":=" e precione Ctrl+Shift+C.

"Completar Palavras" Ctrl+W

Este trabalha igualmente ao "Identificar Completar", mas não trabalha em identificadores do Pascal, mas em todas as palavras. Deixa-o escolher de todas as palavras em todos os arquivos abertos que começam com as mesmas letras.

Suporte a Inclusão de Arquivos

Delphi não suporta isto, e você provavelmente não criara muitos arquivos incluídos ainda. Mas arquivos incluídos tem uma grande vantagem: Eles fazem possível escrever código (in)dependente de plataforma sem confundir com IFDEFs.

Por exemplo: método pulando, Completar Classe, encontrar declaração, ... todos trabalham com arquivos incluídos.

Há muitas opções para as características do código.


Designer

- Guidelines

Inspetor de Objeto(Object Inspector)

Nos ambientes de desenvolvimento do Delphi e do Lazarus temos o Inspetor de Objeto(Object Inspector) que é utilizado para editar e atribuir as propriedades, eventos, etc... do componente. Temos a seguir pequenas diferenças reparadas no uso:

  1. Começando no Delphi 5 há uma árvore de objeto(Object TreeView) que pode ser usada para navegar e selecionar objetos de acordo com a hierarquia adicionando ao tradicional arrastar e soltar no Inspetor de Objeto. No Lazarus é parte do Inspetor de Objeto e é usada no lugar do padrão arrastar e soltar, você pode selecionar para usar ou não istro através do clique do botão direito do mouse no menu "Show Component Tree"
  2. No Delphi duplo clique em um evento em branco irá auto criar um e abrir o Editor de Código(Source Editor) na posição, no Lazarus há um botão à direita do listar(...) selecionado que executa esta ação preferivelmente
  3. No Delphi você deve manualmente apagar o nome de um evento no editor para remover a ligação, no Lazarus você pode listar os eventos(...) e selecionar "(None)".
  4. Igualmente a Eventos, duplo clique em propriedades como booleana não irá mudar o valor, você deve selecionar o valor da lista. E para abrir aqueles com um editor de formulário associado, você deve clicar o botão '...' à direita do editor/lista

Pacotes(Packages)

Pode o Lazarus instalar e usar Pacotes do Delphi ?

Não, porque eles requerem a magia do compilador Delphi.

Nós necessitamos feitos especialmente para lazarus?

Sim. Crie um novo pacote, salve-o no diretório fonte do pacote(normalmente o mesmo diretório do .dpk(arquivo), adicion a LCL como pacote necessário e finalmente adicione os arquivos .pas . Você pode instalá-lo, ou usá-lo nos seus projetos agora. Há algumas diferenças entre pacotes do Lazarus e do Delphi, então por favor leia


- veja docs/Packages.txt nos fontes do lazarus.