A linguagem C é conhecida por ser uma linguagem que utiliza muito o conceito de ponteiros. De fato é necessário conhecer ponteiros em C para se programar. Mas na linguagem Pascal, um programador pode conviver com a linguagem e nunca utilizar ponteiros. Por esta razão quando um programador Pascal se deparar com um código fonte que utiliza ponteiros ele fica totalmente perdido. Por isso resolvi escrever este mini curso sobre a utilização de ponteiros no Pascal.
Arquivo dos posts com a tag 'Delphi'Page 2 of 2
No post sobre máquina de estado eu falei que iria fazer um exemplo mais completo para melhor entendimento dos conceitos.
Neste post vou abordar em como construir uma função que valide a construção de um endereço de e-mail utilizando o conceito de máquina de estado.
Uma das formas de se validar uma sequência de caracteres é utilizando expressão regular, mas nem todos ambientes temos expressões regulares para validação. Por exemplo temos o Delphi, apesar de ser possível adicionar esta funcionalidade.
Continue lendo ‘Validando endereço de e-mail com máquina de estado’
Hoje baixei e testei o StarUML, é uma ferramenta para modelagem UML com geração de código e engenharia reversa de código para C#, C++ e Java.
Ele é open source e escrito em Delphi. Mas estranhamente não gera códigos Delphi.
Eu particularmente gostei do que encontrei, ele permite a extensão da linguagem (novos diagramas) através de plugins. Gera documentação em Word, Excel, PowerPoint… Permite ainda customizar as documentações geradas.
Além de usá-lo para gerar documentações, pretendo utilizar-lo como objeto de estudo, analisando seu código fonte.
Tem um comando chamado TDUMP que lista todas as funções de uma DLL.
Digite no prompt do DOS
C:\>TDUMP C:\MinhaDLL.DLL
ou faça como neste link:
http://www.delphifaq.com/faq/delphi/windows_file_system/f409.shtml
Dica do Douglas.
Em meu outro blog, a algum tempo coloquei a seguinte notícia:
“nTier Objects é um Framework que permite o desenvolvimento, totalmente orientado a objetos, de aplicações multicamadas.”
Esta é a proposta do nTier Objects, projeto desenvolvido por um amigão meu, Fernando Nomellini, e pelo Danilo Valente. A proposta é muito boa e aborda fortemente um assunto que normalmente tem as regras do O.O. quebradas nos Frameworks atuais, justamente na hora de distribuir a aplicação em várias camadas.
Atualmente o projeto já concluiu o ntoStream, uma classe base que permite a serialização de objetos. (dica do Nomellini)
Faz quase 2 anos que postei esta notícia, mas quase nada mudou de lá pra cá. Mas o ntoStream se mostra muito útil em várias aplicações e pode ser também objeto de estudo. Recomendo uma visita e vamos torcer para o projeto ter continuidade. Com ele é facilmente implementado uma forma de serializar um objeto em XML e também deserializar este devolta a objeto.
No Delphi para Win32 não é possível implementar propriedades de classe como no Delphi para .NET (pelo menos até a versão 2007, quem sabe em alguma futura). Mas existe um jeito de emular a funcionalidade.
Para isso definimos uma variavel global com visibilidade apenas na unit. E implementamos uma propriedade em que seu acesso read/write sejam funções de classe. Nesta funções de classe teremos então o acesso e leitura escrita a variavel global. Complicado? Veja mais detalhes no artigo original.
Dica do Douglas.
Muitos reclamam que não há Generics no Delphi, mas será que é tão necessária assim? Eu mesmo apenas tive necessidade de usar Generics em pouquíssimas situações.
Mesmo não tendo suporte nativo, é possível a implementação de Generics a partir de includes.
Estes dois artigos mostram uma forma interessante de “emular” este recurso no Delphi (Object Pascal). Os 2 em inglês.
- Object Pascal (Delphi) Templates
- Templates in Object Pascal, o anterior foi baseado neste.
dica do Douglas.
Comentários recentes