Forms management tip

(portuguese)

From my point of view, one thing that is really missing for Delphi/Lazarus is a better application’s form management. Two problems: an independent public variable is used to control an instance, and the ‘please place everything within the form’ approach. The first one requires the programmer to either create the form at the start of the application and not destroy it anymore, or it requires the programmer to create the forms and keep track of object destruction insuring that no variable points to a destroyed object. The second, among other problems, requires that the first one works perfectly so that the communication between forms can work. Continue reading Forms management tip

Dica para gerenciamento de formulários

(english)

Ao meu ver, uma parte mal elaborada do Delphi/Lazarus é o gerenciamento de formulários da aplicação. Tanto o fato de usar uma variável pública independente para controlar a instância quanto a isca ‘jogue tudo no form’ trazem problemas. A primeira abordagem exige que o programador, ou crie os formulários no início da aplicação e não os destrua mais, ou exige que ele cuide para não deixar a variável apontar para um objeto destruído. A segunda abordagem, entre outros problemas, exige que a primeira funcione perfeitamente para que ocorra comunicação entre formulários. Continue reading Dica para gerenciamento de formulários

do jmp às Interfaces – A história do acoplamento

No princípio era o jmp. E o call. E o ret. E os saltos condicionais. E com isto os heróicos programadores da época conseguiam criar laços e blocos cuja execução dependia de alguma condição ter sido satisfeita. E a máquina começou a pensar. Um label indicava ao assembler aonde determinada rotina estava começando, e o assembler transformava aquele label em um endereço de memória. Entre o label e o ret estava o que conhecemos hoje por procedure. Continue reading do jmp às Interfaces – A história do acoplamento

Como remover vazamentos de memória

Ferramentas como FastMM melhoram o desempenho de aplicações que utilizam muita alocação dinâmica, e de quebra ainda relata se a aplicação está deixando vazamentos de memória.

Agora saber que a aplicação tem vazamento de memória é fácil, no entanto, dependendo do tamanho do projeto, torna-se mais difícil determinar aonde ela foi alocada. Continue reading Como remover vazamentos de memória

Wiki do PressObjects

Há alguns posts atrás prometi colocar alguns artigos sobre PressObjects neste blog. Depois de terminar o rascunho do primeiro artigo, notei que ele tem um foco diferente do que tem sido aplicado aqui, sem falar que o próprio projeto tem muito pouco material. Resolvi escrever tais artigos diretamente para o projeto, e para tanto dei início a um wiki que você pode conferir aqui.

Estes primeiros artigos vão para o wiki num instante, e vou deixar para o blog a missão de mandar algum recado ou publicar material que envolva ponto de vista.