Monthly Archive for outubro 2004

Melhore o visual de seus aplicativos

Um novo artigo meu foi publicado no site da ClubeDelphi. É uma dica sobre os componentes que tenho utilizado para aplicar temas em meus aplicativos. Vale a pena testar, o resultado é muito agradável.

Firefox 1.0 PR - mais de 5 milhões de downloads

http://www.spreadfirefox.com/

Computadores em nossos tênis

É isso mesmo. Lembra das roupas do Marty McFly no “De Volta para o Futuro II”?

Delphi Developers Day em Ribeirão Preto

Dia 30 de outubro! Estarei lá com a mesma palestra que apresentei na BorCon 2004, Test-Driven Development com Delphi.

Não perca! Inscrições no site do DUG-BR.

Google Desktop

Versão desktop do Google. Muito legal!!!

UPDATE: Caramba! Agora que percebi que quando entro no www.google.com.br, uma nova opção desktop aparece. Impressionante. Achei que seria necessário clicar no ícone do aplicativo sempre que quisesse pesquisar algo no meu computador.

Delphi 2005 - O Delphi Definitivo?

Agora é oficial, já está no site da Borland Brasil a estranha página do Delphi 2005, incluindo uma matriz de características, FAQ e as datas dos eventos de apresentação em várias cidades brasileiras.

A única pergunta ainda não respondida claramente é: Quando ele estará disponível? Provavelmente no próximo mês, devido as datas dos eventos. Vamos ver.

Update: O site da Borland USA também já mostra o Delphi 2005.

ASP.NET e OO pra valer

Ontem trabalhei o dia todo em meu primeiro projeto real em ASP.NET. Adoraria ter utilizado o Delphi 8 para isso, mas um conhecido bug me impede de utilizá-lo no meu notebook. Minha esperança é que o Diamondback não venha com esse problema.

Bom, mas voltando ao projeto, os requisitos eram simples. Apenas incluir um sistema de notícias dinâmicas em um site já existente, algo bem parecido com um blog. Na página principal do site, o título das últimas notícias seriam listadas. Ao clicar no título, uma página com a notícia completa seria exibida. Além disso, precisaria existir uma área administrativa restrita onde o jornalista pudesse gerenciar as notícias.

Utilizei Visual Studio .NET 2003 e C#. Confesso que foi muito mais simples do que pensei. Achei que teria dificuldades em inserir código ASP.NET em páginas HTML já prontas e formatadas com tables, flash, e todas essas coisas que eu não gosto. Mas para converter uma página HTML em ASPX (extensão das páginas ASP.NET) bastava incluir a página no projeto do VS (Visual Studio) e renomear a extensão. O VS detecta que a página não tem uma classe derivada de WebForm e cria uma automaticamente para você.

Não tinha experiência com Visual Studio e nem C# além dos testes e treinamentos MSDN que realizei. Inicialmente pensei em tirar proveito de tudo que a IDE pudesse gerar automaticamente para mim, pois não podia investir muito tempo nesse projeto. Mas depois, percebi que não era uma boa, pois estava ficando com vários componentes duplicados entre as páginas e não estava gostando disso. Por exemplo, se você adotar o “método fácil”, arrastando para as páginas a tabela do banco de dados que você quer acessar, a IDE cria todos os componentes para acesso: OleDBConnection, etc. Então para cada página você teria todo o conjunto de objetos de conexão repetidos. Isso seria um inferno para manter. Decidi abandonar tudo e usar uma abordagem mais orientada a objetos, que recomendo a todos.

O novo design do aplicativo envolveu praticamente duas classes principais, uma que representa as noticias chamada Noticia e outra que faz a persistência do objeto Noticia no banco de dados Access chamada NoticiaDAO (DAO = Data Access Object).

Uma rápida engenharia reversao do código no Visio me retornou esse modelo das duas classes:

Com essa abordagem ficou tudo muito fácil. Quando quero listar as noticias, simplesmente instancio um objeto DAO e executo o método ListarNoticias, que me retorna um ArrayList (parecido com o TObjectList do Delphi) com objetos Noticia. Quando uma noticia é alterada ou incluída, executo o método SalvarNoticia do DAO e a noticia é salva no banco. O mesmo para exclusão.

Ou seja, toda a lógica e componentes de acesso ao banco de dados ficam internos a classe DAO, e não espalhados pelo aplicativo. Isso facilita a manutenção de forma absurda. Imagine que amanhã quero utilizar Firebird ao invés de Access. Onde preciso mexer? Somente na classe DAO. Ou então quero salvar em XML e não usar mais banco de dados. Onde preciso mexer? Somente na classe DAO. Notou a facilidade? Se eu tivesse usado a primeira abordagem, teria que alterar TODAS as páginas para modificar o meio de persistência.

E em .NET essa abordagem é ainda mais fácil de ser utilizada pois o DataGrid por exemplo, aceita um ArrayList como DataSource e simplesmente lista todos seus objetos na grid, sem nenhuma codificação adicional! É fantástico. O bom é que isso vale para Delphi .NET também!

Claro, esse é um exemplo extremamente simplista, mas não deixa de mostrar como você pode facilitar sua vida e produzir software de melhor qualidade utilizando objetos de negócio.

Clusty: chances contra o Google?

Gostei do Clusty. Tem alguns recursos bem legais. A única coisa que senti falta de cara foi a possibilidade de buscar somente páginas em português ou no Brasil, como o Google tem.

Detalhe: se você usa o Firefox, basta clicar no link “Mozilla Search Plugin” para incluir o Clusty na barra de busca.

Treo 600 chega ao Brasil

Finalmente a PalmOne trouxe o Treo 600 oficialmente para o Brasil. Inicialmente disponibilizado pela Claro com preços variando de R$2499 a R$3449 dependendo do plano.

PalmOne lança T5

A PalmOne anunciou o novo Tungsten T5. A maior novidade é que ele tem no total 256MB de memória, que na realidade são 215MB, sendo 55MB para aplicativos e dados como estamos acostumados e uma nova área de memória flash de 160MB que você poderá usar como um drive USB removível para sua máquina. Ele tem bluetooth mas não tem wi-fi, ponto negativo para a Palm novamente, que continua dormindo no ponto quanto a conectividade, pois existem vários módulos PocketPC com wi-fi e bluetooth no mesmo equipamento.

Na minha opinião é mais um palm sem muita importância. Não traz nada de tão revolucionário assim. A plataforma PalmOS está precisando de algumas inovações que estão demorando demais a chegar. Por exemplo, até hoje não existe nenhum equipamento com o novo PalmOS 6, que já foi lançado há muito tempo, acho que até mais de um ano ou quase isso.

Consultoria em Samba

Não, não estou pensando em desfilar na Sapucaí no Carnaval.. Haha.. :)
Preciso de um profissional expert em Samba no Linux para prestar alguma consultoria remota para nossa empresa. Se você faz esse tipo de serviço ou tem alguém para indicar, entre em contato.