Linguagens e Ambientes de Programação
Delphi
vs.
Visual Basic
Ricardo Pereira
Nº 17505
Rui Arnaldo Costa Nº 17227
Revisto por António L. Bajuelos, Março 2003
Tópicos







Evolução do Delphi
Evolução do Visual Basic
Delphi 2.0 vs. Visual Basic 4.0
Delphi 3.0 vs. Visual Basic 5.0
Delphi 4.0 vs. Visual Basic 6.0
Novo Delphi 5.0
Novo Visual Basic 7.0
Evolução do Delphi
Modelo de Programação do Delphi
Um modelo é uma colecção de padrões e de regras
que nos permite descrever o comportamento de um
sistema complexo sem requerer conhecimento
completo do sistema.
Um modelo de programação é uma colecção de
regras e directrizes que descrevem as interacções
entre sequência de dados e objectos:
dentro de um programa,
entre o programa e o sistema operacional e,
entre o programa e o usuário final.
Evolução do Delphi
Histórico
No princípio

O primeiro produto comercial da Borland, lançado
em 1983, era o Turbo Pascal 1.0

O Turbo Pascal para o Mac introduziu a noção de
módulos de unidade compilados, que acharam o
seu caminho para o mundo do DOS no Turbo
Pascal 4.0 em 1987.

O Turbo Pascal 5.0 viu o inicio de depuração
integrada de erros.
Evolução do Delphi
Histórico
O ínicio da POO
 Em 1989, o Turbo Pascal 5.5 introduziu a sintaxe e
conceitos da Programação Orientada a Objectos.
 Em 1990, o Turbo Pascal 6.0 continha o Turbo
Vision, uma arquitectura extensa de objectos para
construir aplicações de DOS com interfaces de
usuários com janelas e em modo de texto.
Evolução do Delphi
Histórico
 Em 1991, o Turbo Pascal para Windows (TPW) foi de
encontro ao Windows 3.0 …
 O ano 1992 viu o lançamento do Borland Pascal 7.0,
um produto enorme que incluía ferramentas para
produzir aplicações de DOS, aplicações de Windows,
e aplicações de modo-protegido de DOS.
Evolução do Delphi
Versões
•
•
•
•
•
Delphi 1.0
Delphi 2.0
Delphi 3.0
Delphi 4.0
Delphi 5.0
Para consulta das versões mais recentes visite o site:
http://www.borland.com/delphi/
Evolução do Delphi
ScreenShot
Evolução do Delphi
Fragmento de Programa
procedure ContextMenuForFile(Folder: IShellFolder;
Pidl: pItemIDList);
var aContextMenu: IContextMenu;
aPrgOut: Pointer;
aPopup: hMenu;
aCmd: Integer;
t, ItemCount: integer;
buf: array[0..80] of Char;
begin
GetCursorPos(Where);
aPopup := CreatePopUpMenu;
if aPopup = 0 then exit;
………………………...
Evolução do Visual Basic
Histórico
O BASIC foi o primeiro produto a ser comercializado
pela Microsoft (MS BASIC)
Escrito originalmente em 1987 e unido ao Quick
BASIC deu origem ao Visual BASIC (VB).
A primeira versão do VB foi lançada em 1991 com a
versão 1.0. Em Outubro de 1992 veio a versão 2.0.
Está actualmente na versão .NET (~ versão 7.0.)
Delphi 2.0
vs.
Visual Basic 4.0
Delphi 2.0
Pontos
Fortes
• Compilador rápido
• Biblioteca de classes
elegante e produtiva
• Ferramentas visuais
• Documentação escassa
• Não permite criação
Pontos ActiveX
Fracos • Elevado tempo de
execução em bases de
dados
É a melhor combinação de
Conclusão potência com facilidade de
utilização
Visual Basic 4.0
• Aprendizagem fácil, difícil de
bloquear o sistema
• Potentes funções de base de
dados, inúmeros extras
disponíveis
• Ficheiros runtime de grandes
dimensões: potência limitada
• Desempenho fraco nas
aplicações mais complexas
Óptima ferramenta de utilização
geral, mas usualmente não é a
melhor
Delphi 3.0
vs.
Visual Basic 5.0
Delphi 3.0
Pontos
Fortes
Pontos
Fracos
Visual Basic 5.0
• Desenvolvimento rápido
• Orientado a objectos
• Rapidez na compilação
• Executáveis em código nativo
• Fácil para principiantes
• Suporte MDB nativo para
Access
• Flexível e poderoso
• Deficiências relativamente
aos dados em formato Access:
ajuda on-line medíocre
• Não tem browser de classes
• Ficheiros runtime grandes
• Problemas de versão e
disponibilização da aplicação
final
• Fraco tratamento de erros
O melhor produto nesta
Conclusão categoria
Poderoso e sofisticado, mas
falta-lhe a simplicidade e a
fiabilidade do Visual Basic 3.0
Delphi 4.0 vs. Visual Basic 6.0
Descrição de componentes
Visual
Basic 6.0
Delphi
4.0
Lista de botões rádio
Não
Sim
Lista de acções comuns
Não
Sim
Divisor de espaços redimensionáveis (Splitter)
Não
Sim
Barra submenu de controles (PageScroller)
Não
Sim
Quadros de diálogo comum
Sim (6)
Sim (10)
Internet
Sim (2)
Sim (26)
Acesso a dados
Sim (8)
Sim (25)
Não
Sim
Sim (6)
Sim (23)
MAPI
Sim
Não
Série de comunicações
Sim
Não
Informação do sistema
Sim
Não
Aplicações multicamada DCOM/CORBA
Não
Sim
Tomada de decisões
Projecção de decisões
Delphi 4.0 vs. Visual Basic 6.0
Descrição do tipo de projecto
Visual
Basic 6.0
Delphi
4.0
Livraria de conexão dinâmica
Não
Sim
Controle VCL (Visual Component Library)
Não
Sim
Aplicação DHTML
Sim
Não
Serviço NT
Não
Sim
Livraria ActiveX
Não
Sim
Componente COM
Não
Sim
Componente CORBA
Não
Sim
http://www.microsoft.com/com/tech/com.asp
Delphi 4.0 vs. Visual Basic 6.0
Interface do Ambiente
Tanto o Visual Basic 6 como o Borland Delphi 4 têm ambientes de
desenvolvimento baseados numa interface de última geração
O Delphi tem quatro paletas de botões predefinidas, tal como o Visual Basic,
mas enquanto o primeiro só tem a paleta de utilizador o segundo permite-nos
criar tantas paletas novas quanto precisarmos.
Visual Basic, não obstante, tem uma característica inexistente em Delphi: é
possível também personalizar os menus de opções, mudar a disposição deles,
adicionar e eliminar opções.
Outra opção de Visual Basic com que o Delphi não conta, consiste em
seleccionar o tamanho dos ícones usados nas barras de botões e outros
elementos do ambiente.
Delphi 4.0 vs. Visual Basic 6.0
Interface do Ambiente
No caso de Delphi existe a chamada Paleta de componentes –
multipágina de janela no qual se encontram mais de 170
componentes
O VB tem a sua Caixa de ferramentas –
é uma janela na qual só se acha os controles mais habituais,
sendo necessário aceder a uma janela auxiliar toda vez que se
quer um controle novo ou grupo de controles.
Em Visual Basic o formulário aparece dentro de uma janela
O Delphi mostra a formulário como uma janela completamente
independente cujo tamanho e posição em execução será o
mesmo que pode ver-se em desenho.
Delphi 4.0 vs. Visual Basic 6.0
Componentes
Por ser um produto de Microsoft, o Visual Basic como é lógico usa
controles ActiveX, o padrão oficial da plataforma Windows.
ActiveX = é o nome que a Microsoft deu a um set de "estratégicos" object-oriented
programming tecnológicos e ferramentas. A tecnologia principal é o Component
Object Model (COM).
Por outro lado, Delphi tem uma própria chamada modelo VCL mas, em
algumas ocasiões, também contempla o uso de controles ActiveX.
As possibilidades de Delphi de criar servidores ou clientes de serviços na
Internet ou projectar relatórios conectados a dados é muito superior às do
Visual Basic.
Alguns componentes de Visual Basic estão só disponíveis no módulo que
está aberto. Os componentes do Delphi podem ser usados em qualquer
formulário, porque estão activos.
Delphi 4.0 vs. Visual Basic 6.0
Edição de código
 O editor de Visual Basic só pode trabalhar com
um arquivo ao mesmo tempo, o que significa que
teremos tantas janelas abertas quantos módulos.
 O editor de Delphi, pelo contrário, abre uma
página nova por cada módulo que está a editar.
Delphi 4.0 vs. Visual Basic 6.0
Edição de código
O editor de Visual Basic tem dois menus na parte superior,
um no qual é possível seleccionar um objecto, como um
formulário ou um controle, e outro que é usado para
seleccionar o evento.
O Delphi tem uma janela, inicialmente embutida no editor de
código, chamada de explorador de código.
Esta janela mostra uma lista hierárquica de todos os
elementos existentes no módulo actual, de classes, métodos e
propriedades e até variáveis e constantes.
Delphi 4.0 vs. Visual Basic 6.0
Linguagem
Se há um ponto que claramente diferencia o
Visual Basic do Delphi é, sem dúvida alguma, a
linguagem que usam.
A Linguagem usada pelo VB é BASIC (Beginner’s Allpurpose Symbolic Instruction Code), uma linguagem
desenvolvida na década de sessenta por dois professores
americanos, Kemeny e Kurtz, como uma versão
simplificada de FORTRAN (FORmula TRANslator), que
fosse mais acessível para os estudantes principiantes em
computação.
Delphi 4.0 vs. Visual Basic 6.0
Linguagem
O Delphi usa a linguagem Pascal, desenvolvida depois do
BASIC, no começo dos setenta, pelo professor Niklaus
Wirth em Zurique tomando como base as linguagens
ALGOL (ALGOrithms Languaje) e PL/I.
O Pascal chama-se assim em memória de Blaise Pascal,
considerado o inventor da primeira máquina de cálculo.
Delphi 4.0 vs. Visual Basic 6.0
Linguagem
O Visual Basic é uma linguagem de simples aprendizagem e,
em geral, bem estruturada.
A integração do Visual Basic com a tecnologia ActiveX é
excelente.
Para usar objectos COM simples é necessário ter as livrarias de
tipos correspondentes, não existindo modo algum de criá-las
desde o próprio ambiente de Visual Basic.
Em Delphi há a possibilidade de definir interfaces COM
directamente em Object Pascal, sem necessidade de qualquer
elemento externo.
Delphi 4.0 vs. Visual Basic 6.0
Depuração
Em Delphi existe a possibilidade de criar pontos de paragem
que agem quando se está a carregar um certo módulo ou
alterar um certo facto.
A modificação de valores durante a execução é possível em
Delphi graças às opções Evaluate/Modify e Inspect.
Em Visual Basic esta mesma tarefa realiza-se de forma
simples na janela de execução. Esta janela permite executar
qualquer outro código que nos interesse com algumas
limitações lógicas, uma possibilidade inexistente em Delphi.
Delphi 4.0 vs. Visual Basic 6.0
Depuração
Outra característica exclusiva do Visual Basic, muito
útil nalgumas ocasiões, é:
A possibilidade de modificar o código que será
executado e continuar, sem necessidade de reiniciar.
Em Delphi pode modificar o código durante a
depuração, mas as mudanças não têm efeito até
compilar novamente e executar.
Delphi 4.0 vs. Visual Basic 6.0
Acesso a dados
Embora o Visual Basic ofereça diversas técnicas herdadas de
versões prévias, a tecnologia preferível é a ADO (ActiveX
Data Objects) e os correspondentes provedores OLE DB.
O Delphi tem uma tecnologia de acesso a dados existente
desde a primeira versão e que, também, é a usada por
ferramentas tão famosas como o dBase ou o Paradox. Esta
tecnologia, chama-se BDE (Borland Database Engine)
Com o Delphi as possibilidades de conexão, acesso a tabelas,
definição de consultas e edição não é menos potente que com
o Visual Basic, mas é seguramente menos confortável.
Delphi 4.0 vs. Visual Basic 6.0
Criação de relatórios
Uma das novidades do Visual Basic é, de facto, a
possibilidade de desenhar relatórios no próprio ambiente de
desenvolvimento.
Em Delphi os relatórios são desenhados usando os
componentes Quick Reports.
O Delphi conta com um número de componentes superior
ao Visual Basic quando se criam relatórios.
A maior especialização dos componentes de Delphi oferece
uma flexibilidade maior quando se criam relatórios.
Delphi 4.0 vs. Visual Basic 6.0
Aplicações Internet
O Visual Basic (até a versão 6) é um ambiente realmente
pobre no que concerne a possibilidades relacionadas com
Internet.
O Delphi está exactamente no extremo oposto ao VB
Os componentes que incorporam o Delphi 4 para temas
relacionados com Internet são do tipo VCL, não ActiveX, o
que é uma vantagem pois é possível incorporar todos os
recursos no mesmo executável ou num pacote, em vez de ter
que distribuir e registar de um modo individual cada um dos
componentes.
Delphi 4.0 vs. Visual Basic 6.0
Integração com o sistema
O Delphi tem módulos múltiplos, equivalente aos arquivos de
C/C++ nos quais se encontram definidos os protótipos de
praticamente toda a API do Windows.
O Visual Basic não tem um mecanismo equivalente, o que
significa que antes de usar uma função é necessário o
Windows facilitar de antemão o protótipo que lhe
corresponde.
A partir do Delphi é possível usar qualquer objecto ActiveX,
independentemente de ser ou não automatizável.
Delphi 4.0 vs. Visual Basic 6.0
Criação e distribuição de aplicações
No caso do Delphi podemos indicar se queremos que os
arquivos intermédios de compilação sejam em formato DCU,
habitual em Delphi, ou pelo contrário queremos arquivos
OBJ com formato C/C++.
No caso de Visual Basic podemos escolher entre gerar
código nativo, directamente executável, ou p-code que é
necessário interpretar mais tarde.
Delphi 4.0 vs. Visual Basic 6.0
Criação e distribuição de aplicações
A aplicação gerada por Visual Basic, com extensão EXE,
poderá alojar-se em qualquer pasta do sistema do
cliente.
Neste caso será necessário :
I.
II.
copiar a livraria de execução do Visual Basic para essa
mesma pasta ou para a pasta de sistema do Windows.
instalar e registar todos os controles ActiveX que foram
usados.
No caso do Delphi é bastante mais simples:
I.
basta gerar o arquivo EXE, que já contém tudo o necessário.
O Delphi gera habitualmente um pacote de distribuição
mais pequeno.
Delphi 4.0 vs. Visual Basic 6.0
Características exclusivas
Uma característica exclusiva de Visual
possibilidade para criar aplicações DHTML
Basic
é
a
DHTML (ou Dinamic HTML) é um conjunto de tecnologias que juntas criam
o dinamismo das páginas Web. Essas tecnologias são: HTML, folhas de estilo
(CSS), linguagens de script (JavaScript e VBScript), layers (ou camadas) e o
DOM (Document Object Model).
O Visual Basic tem controles que facilitam tarefas como a
obtenção de dados sobre o sistema, não existente em Delphi.
Em oposição em Delphi é possível usar qualquer um dos
controles de Visual Basic, basta adicioná-los à paleta de
componentes
O Visual Basic não pode usar os componentes de Delphi.
Delphi 4.0 vs. Visual Basic 6.0
Questão de velocidade
Duas ferramentas bastante diferentes na sua concepção.
O Delphi usa um compilador puro com múltiplas
optimizações e capaz de gerar praticamente qualquer tipo de
projecto, desde um executável a uma livraria de conexão
dinâmica até servidores ActiveX.
O Visual Basic é uma ferramenta que usa e em grande
medida depende de ActiveX.
O Delphi, em geral, é várias ordens de magnitude mais
rápido que Visual Basic.
Delphi 4.0 vs. Visual Basic 6.0
Resumindo
Visual Basic 6.0
• Linguagem mais simples que
o Object Pascal;
• Documentação, ajuda e
ambiente mais acessíveis;
• Processo de aprendizagem
mais rápido;
• A criação de servidores
ActiveX, tanto controles
como objectos
automatizáveis é muito
simples.
Delphi 4.0
• Mais tipos de projectos;
• Um número maior de
tecnologias (ActiveX, VCL,
objectos CORBA e
aplicações Web não
limitadas ao servidor IIS);
• Linguagem mais estruturada
e flexível;
• Integração total de
aplicações com o sistema.
Novo Delphi 5.0
Inovações
•
ADO - acesso a bases de dados sem usar o BDE
- muito fácil aceder a fontes de dados da Microsoft;
•
Novo componente visual – “moldura” (frame);
•
Cria aplicações em CGI, ISAPI ou NSAPI e entrega HTML
dinamicamente;
•
Internet-Express – entrega dados a um motor de pesquisa da Internet
como um pacote XML;
•
“attach to process” – deixa depurar um processo que já se encontra a
correr;
•
Teamsource – controla o fluxo de trabalho e ajuda a administrar o
desenvolvimento de código em paralelo;
Novo Delphi 5.0

Pontos a favor: - Suporta as normas XML e HTML 4.0.
- Acesso a bases de dados com
tecnologia ADO
- Desenvolvimento em grupo com o
Teamsource.

Pontos contra: - Poucas opções novas disponíveis
para uma nova versão
Novo Visual Basic 7.0
 Alterações sintácticas
- Conversão de: Variant para Object, Integer para Short,
Long para Integer;
- Arrays com extremos diferentes de zero;
- Não são definidas propriedades por defeito.
 Linha de execução livre;
 Controle de erro estruturado;
 Tipo Segurança;
 Membros compartilhados;
 Inicializadores.
Visual Basic vs. Delphi
Fim
da
Apresentação
Download

Delphi vs. Visual Basic