Archive

Posts Tagged ‘Delphi’

Delphi no MacOS: Será que precisamos disso?

January 4th, 2010 Erick Sasse 16 comments

Todo mundo que acompanha as notícias sobre Delphi já deve estar sabendo que a próxima versão trará um compilador nativo para MacOS. Não é usando Mono e Delphi Prism, como já é possível hoje, é um novo compilador. A IDE vai continuar no Windows, mas poderá compilar para MacOS.

Que a plataforma Mac está crescendo um pouco, ninguém tem dúvida, provavelmente em grande parte devido ao iPhone, que é um aparelho fantástico, eu mesmo tenho um. Mas quantos de vocês já tiveram uma demanda realmente importante para portar seus sistemas para MacOS? Sim eu já tive alguns clientes querendo rodar meus produtos no Mac, mas posso contar nos dedos. Certamente nada que justifique uma versão para essa plataforma.

Estamos falando de sistemas empresariais, que deve ser o que a maioria aqui no Brasil desenvolve usando Delphi. Para nós, se precisarmos suportar qualquer plataforma além do Windows, vejo muito mais sentido usar web, e já estaremos suportando não só Mac, mas também Linux, Chrome OS, telefones, PS3, etc.

Além disso, quem não é desenvolvedor Delphi certamente não vai usar o Delphi para fazer algo no Mac. Eles tem a IDE Xcode da Apple, que é muito poderosa, gratuita e mais “nativa” da plataforma. Então os clientes potenciais que restam realmente são apenas os clientes que já usam Delphi no Windows. Portanto dificilmente isso trará uma quantidade significante de novos usuários para o Delphi.

Lógico que é um recurso legal de ter, só não podemos esquecer que custa dinheiro para desenvolver e manter isso, dinheiro esse que poderia estar sendo melhor utilizado no Delphi Win32, que usamos diariamente e que infelizmente ainda tem muitos bugs a serem corrigidos.

A Embarcadero faz pesquisas anuais para saber o que os usuários querem no Delphi, então estou curioso para saber o que vocês acham disso. Vocês acham que esse recurso vai ser útil? Alguém aqui pretende usar? Meus usuários são diferentes e eu não estou percebendo a necessidade? Talvez consigam me fazer mudar de idéia, ou confirmar meu receio de que quase ninguém vai usar isso pelo menos por aqui.

Categories: Delphi Tags: ,

Pesquisa Delphi 2010

October 27th, 2009 Erick Sasse No comments

Todo ano a Embarcadero vem fazendo uma pesquisa entre os desenvolvedores para definir o futuro do Delphi. Ela é longa, mas muito importante, e todos usuários Delphi deveriam dedicar um tempo para responde-la com calma.

Eu já respondi. Se você é desenvolvedor Delphi, não deixe de fazer, pois o futuro do produto está muitas vezes diretamente ligado ao seu futuro e/ou de sua empresa.

Link para a pesquisa:
http://www.surveymonkey.com/s.aspx?sm=XrKr27_2bmLfybzGzZi_2brsBQ_3d_3d

Categories: Delphi Tags: ,

Utilizando XML Data Binding do Delphi

August 20th, 2009 Erick Sasse 6 comments

O recurso XML Data Binding do Delphi permite gerar classes tipadas a partir de arquivos XML, facilitando em muito quando se precisa ler e escrever arquivos XML.

Se não me engano, anteriormente esse recurso não estava disponível na versão Professional do Delphi, mas agora está, pelo menos no Delphi 2009.

Eu usei recentemente e tinha colocado na minha lista de assuntos para blogar, mas o Diego Garcia acabou de publicar um video detalhado de como utilizar esse recurso.

Vale a pena conhecer, pois mais cedo ou mais tarde todo mundo acaba precisando manipular XML.

Categories: Delphi Tags: ,

Uma semana de Windows 7 RTM

August 17th, 2009 Erick Sasse 8 comments

3660039011_073d6a4fb7_oEstou rodando Windows 7 RTM (versão final) na minha máquina principal há pouco mais de uma semana. Ela foi liberada no dia 06/08 para assinantes da TechNet e foi dessa forma que baixei.

Da primeira vez que testei o Windows 7, foi a versão 64-bits, mas desta vez optei pela versão 32, pois a 64 ainda tem algumas poucas incompatibilidades e nenhum benefício aparente até o momento.

A ótima notícia é que pelo menos na versão 32, o Delphi 2009 funciona perfeitamente, não existindo o problema do debugger que eu já tinha reportado aqui. Agora só falta pesquisar como tirar proveito dos novos recursos do Windows 7 nos nossos aplicativos. A “jump list” da nova barra de tarefas é a primeira candidata.

O Google Chrome também está perfeito e rodando sem nenhum problema.

Esses foram os únicos aplicativos que me deram problema da primeira vez e agora estão 100% na versão RTM 32-bits.

Devo dizer que a instalação do Windows foi perfeita e a performance é realmente superior ao Vista e XP, incrível o que eles conseguiram fazer.

Para não dizer que tudo são flores, o único problema que tive até agora com o Windows 7 é que não consigo mais ligar meu notebook a minha TV LCD. Ainda não consegui resolver, e toda vez que conecto a TV diz que a imagem esta em modo incompatível. É uma TV Samsung Full HD 40 polegadas. Se alguém tiver qualquer dica, é bem vinda. Minha placa de video é uma ATI Mobility Radeon X1600.

Apesar disso o Windows 7 é um upgrade totalmente recomendado, inclusive para os fanáticos pelo XP. Podem ir sem medo. Deixem o XP para trás, por favor! :)

Categories: Delphi, Microsoft Tags: , ,

Video em Português com as Novidades do Delphi 2010

August 8th, 2009 Erick Sasse 10 comments

Mais um video produzido pela Embarcadero com as novidades do Delphi 2010, mas desta vez em português.

Categories: Delphi Tags: ,

Novidades do Delphi 2010

August 4th, 2009 Erick Sasse 26 comments

A Embarcadero publicou um primeiro video com algumas das novidades que o RAD Studio 2010 vai trazer.

Finalmente teremos um formatador de código, e o atalho para disparar ações na IDE (IDE Insight) também é muito legal. Os data visualizers é outra novidade bem vinda para facilitar o debug. Espero nunca mais ver datas como números durante o debug.

Um ponto negativo do video é que usaram um miserável Windows XP para o demo, credo. Perderam uma boa oportunidade de mostrar a IDE rodando no Windows 7.

Alguém precisa dar uma camiseta nova para o David I. :)

Categories: Delphi Tags: ,

Updates 3 e 4 para Delphi 2009

May 28th, 2009 Erick Sasse 9 comments

É isso ai, de uma só vez a CodeGear disponibilizou dois updates para o Delphi 2009. Se você também usa o C++ Builder, serão 3 updates.

  • Post do Nick Hodges aqui.
  • Release notes aqui.
  • Lista do que foi corrigido no Update 3 aqui.
  • Lista do que foi corrigido no Update 4 (database pack) aqui.

Para instalar eu simplesmente lancei o “Check for Updates” do meu Delphi e pronto, mas você também pode baixar os updates da área de download para usuários registrados. Que foi o que eu fiz para instalar no restante das máquinas aqui.

A instalação foi tranquila, porém no about no meu Delphi, na caixa “Installed Updates” não aparece o Update 3, apenas o 4. Isso aconteceu para mais alguém aí? Vou testar em outras máquinas aqui para ver o que acontece.

Não achei nada sobre Windows 7 na lista de correções, então acredito que o problema do debugger continue.

Categories: Delphi Tags:

Varrendo DataSet com Métodos Anônimos

January 25th, 2009 Erick Sasse 19 comments

Métodos anônimos é um dos novos recursos trazidos pelo Delphi 2009. De início ele parece meio estranho e podemos levar um tempo para nos acostumar com a sintaxe, mas podem ser bem úteis em alguns casos como o que eu vou mostrar agora.

Quantas vezes você já não precisou escrever código para varrer um dataset do início ao fim?

DataSet.First;
while not DataSet.Eof do
begin
  //
  // Faz alguma coisa com o registro atual
  //
  DataSet.Next;
end;

Isso pode ficar ainda maior se você precisar usar DisableControls ou ainda restaurar o ponteiro do registro do DataSet após a varredura:

var
  Bookmark: TBookmark;
begin
  DataSet.DisableControls;
  try
    Bookmark := DataSet.Bookmark;
    DataSet.First;
    while not DataSet.Eof do
    begin
      //
      // Faz alguma coisa com o registro atual
      //
      DataSet.Next;
    end;
    DataSet.Bookmark := Bookmark;
  finally
    DataSet.EnableControls;
  end;
end;

Esse código todo é praticamente repetido em todas as varreduras que precisamos fazer em um DataSet. Então seria muito útil se pudéssemos extrair esse código e trocar apenas a parte que “faz alguma coisa com o registro atual”.

É aqui que os métodos anônimos nos ajudam muito.

Na unit SysUtils do Delphi, existe um tipo TProc declarado desta forma:

type
  TProc = reference to procedure;

E vamos usá-lo para criar uma procedure que recebe um dataset e um método anônimo como parâmetros:

procedure ForEach(DataSet: TDataSet; Proc: TProc);
var
  Bookmark: TBookmark;
begin
  DataSet.DisableControls;
  try
    Bookmark := DataSet.Bookmark;
    DataSet.First;
    while not DataSet.Eof do
    begin
      Proc;
      DataSet.Next;
    end;
    DataSet.Bookmark := Bookmark;
  finally
    DataSet.EnableControls;
  end;
end;

E com isso podemos chamar a procedure dessa forma:

ForEach(Table1,
  procedure
  begin
    ShowMessage(Table1NAME.Value)
  end);

Como eu disse, a sintaxe inicialmente é meio estranha, mas com o tempo você acostuma. No exemplo acima eu codifiquei uma procedure sem nome e sem parâmetros e passei para ser executado em cada registro. Eu tinha um dataset chamado Table1 no form. ShowMessage será chamado para cada registro. Além disso, ele desativa os controles conectados ao dataset e restaura o ponteiro no final.

Perceberam como isso facilita nossa vida? Então pronto, pode ir remover o monte de código duplicado que você tem em seus aplicativos. :)

Existe ainda uma idéia mais legal que é transformar esse recurso em um helper para a classe TDataSet, mas isso eu vou deixar para vocês como lição de casa ou para um próximo post aqui no blog.

Update: Eu já estava prevendo que alguém comentasse isso. Sim, eu sei que já era possível antes com ponteiros de funções, mas com métodos anônimos é muito mais legal e é uma forma de tirar proveito dessa novidade do Delphi 2009. Para quem ainda não tem o Delphi 2009, vale a dica do amigo Marcos Douglas, postada nos comentários.

Categories: Delphi Tags:

Problemas com Delphi no Windows 7

January 9th, 2009 Erick Sasse 13 comments

Depois de realizar mais testes, cheguei a conclusão que infelizmente o Windows 7 ainda não é uma boa opção para quem trabalha com Delphi.

Rodando o Delphi 2009 encontrei problemas na hora de usar o debugger em aplicativos com mais de uma thread. Quando uma exception é levantada, não é possível dar um break e resetar o aplicativo (Ctrl+F2) e você precisa reiniciar a IDE.

Já notifiquei o pessoal da CodeGear, mas como essa é uma versão beta e não suportada do Windows, não posso querer que eles resolvam.

Fica aí o alerta para os desenvolvedores Delphi.

Categories: Delphi, Microsoft Tags: ,

Primeiras impressões do Windows 7 com Delphi, Firebird e mais

January 8th, 2009 Erick Sasse 13 comments

Windows 7 Beta e Delphi 2009Instalei o Windows 7 Beta build 7000 em uma máquina de testes e já deu tempo de brincar um pouco. A instalação foi totalmente tranquila, reconheceu todo o hardware assim como o Vista já fazia. Optei pela versão 64 bits, que já venho usando no Vista há algum tempo.

A nova task bar realmente é bem melhor e é a primeira diferença que se nota logo que o sistema inicializa.

Depois disso comecei a instalar alguns dos aplicativos que mais uso no dia-a-dia.

Instalados e rodando sem nenhum problema até agora:

  • Delphi 2009
  • Firebird 2.1
  • IBExpert
  • TortoiseSVN
  • Mozilla Firefox

Não funcionaram Funcionando após algum ajuste:

Conclusão, estou considerando sériamente em arriscar e instalar ele na minha máquina principal.

Para quem está interessado em testar e não tem assinatura MSDN nem TechNet, acho que ele vai estar disponível publicamente para download amanhã.

Delphi 2009: Finalmente uma IDE que não quebra o dia todo?

December 1st, 2008 Erick Sasse 20 comments

Apenas uma nota rápida sobre Delphi 2009 após alguns dias usando em tempo integral.

Finalmente depois do Delphi 7, esta parece ser uma versão que não quebra o dia todo. Apesar de muita gente dizer que o Delphi 2007 era estável, eu pelo menos não tinha estabilidade com ele. Quebrava pelo menos duas ou três vezes por dia.

Isso não acontece com o 2009, que está bem mais estável. E não venha me dizer que isso tem algo a ver com a versão ser impar, porque o 2007 também era. :)

Categories: Delphi Tags:

RemObjects Oxygene é o novo Delphi Prism

October 8th, 2008 Erick Sasse 11 comments

Apesar de até este momento não terem divulgado oficialmente, está na cara que o novo Delphi Prism é o Oxygene (antigo Chrome) da RemObjects.

Vejam o post que o Marc Hoffman da RemObjects fez em seu Twitter cerca de duas horas atrás. Traduzindo seria algo como: “Novo build beta do Prism saindo da linha de produção agora”.

O Delphi Prism foi anunciado pseudo-oficialmente na SDN Conference na Holanda. O Marco Cantu publicou alguns detalhes do anuncio em seu blog.

E se você quer participar do beta do Prism, pode se inscrever aqui.

Não teremos BorCon esse ano

September 3rd, 2008 Erick Sasse 3 comments

O nome BorCon já não fazia muito sentido e já tinha sido abandonado pela CodeGear nos EUA. Por aqui ele resistiu um pouco mais.

Hoje alguém da Borland (sim, ela se identificou dessa forma) me ligou oferecendo o Delphi 2009. Eu disse que tinha interesse, porém iria esperar o BorCon para comprar com desconto, como faço todo ano. Então ela me disse que não teríamos BorCon esse ano.

Será que teremos que comprar o Delphi com preço full? Ou teremos alguma promoção estilo BorCon? Só isso me preocupa. A pessoa ficou de me enviar a proposta de upgrade para o Delphi 2009. Isso foi hoje de manhã e nada até agora.

De qualquer forma, em outubro tem o TechEd da Microsoft e estarei por lá novamente, principalmente para ver o keynote do Steve Ballmer.

Categories: Delphi, Microsoft Tags: ,

RemObjects SDK com suporte a Delphi 2009 e Lazarus

September 1st, 2008 Erick Sasse 5 comments

A nova versão (5.0.33) do RemObjects SDK, lançada no último dia 29, traz suporte ao Delphi 2009, além de suporte a IDE gratuita Lazarus, do Free Pascal.

No caso do Delphi 2009, o instalador não traz as versões compiladas dos pacotes e units pois a versão final do Delphi 2009 ainda não foi liberada. Mas ele traz todo o código fonte compatível para que seja utilizado quando a nova versão estiver disponível.

SmartInspect 3.0 lançado

August 28th, 2008 Erick Sasse No comments

Uma das ferramentas que eu mais uso no dia a dia é o SmartInspect. Ele te ajuda a entender muito melhor como seu aplicativo se comporta internamente. Quando você começa a incluir log nas operações internas do seu aplicativo, você descobre que ele se comporta de forma muito diferente do que você imaginava. :)

A nova versão foi anunciada e lançada com muitas novidades.

Categories: .NET, Delphi, Java Tags: ,

Anunciado o Delphi 2009

August 26th, 2008 Erick Sasse 10 comments

Ontem foi anunciado oficialmente o Delphi 2009, que também vinha sendo conhecido como Tiburon.  Ele já está disponível para pré-venda nos EUA, mas ainda não no Brasil, pelo menos não na loja virtual da Borland/CodeGear/Embarcadero.

Para nós usuários do Delphi uma nova versão é sempre uma esperança renovada de que a ferramenta esteja melhor e nos dando mais produtividade. Entre as novidades dessa versão, estão melhorias importantes na linguagem como Generics, que para mim é a principal novidade e o que tenho esperado no Delphi há muito tempo.

Ele tras também novos controles da VCL, como o Ribbon, que serve para criar barras de tarefas estilo Office 2007. Pra quem já utiliza os componentes da DevExpress, pouco importam essas novidades. Inclusive nós já temos o Ribbon lá há muito tempo.

Existem melhorias no DataSnap, que são muito interessantes, principalmente para quem usa o DataSnap atual puro do Delphi, que depende de COM e sempre só ouvi reclamações. Digo DataSnap atual puro, pois eu utilizo o DataSnap com RemObjects para camada de comunicação, então nunca dependi do COM e nunca passei as dificuldades que isso trás.

E claro, Unicode, que praticamente nenhum desenvolvedor brasilieiro precisa, mas que é importante para que a ferramenta atender o maior mercado possível suportando qualquer conjunto de caracteres.

Junto as novidades, sempre vem um pouco de melhoria na estabilidade e performance da IDE. Isso eu diria que pra mim é um dos itens mais importantes. O meu Delphi 2007 por exemplo, ele dá pau pelo menos entre duas a três vezes por dia. São aqueles erros inexplicáveis que te obrigam a fechar a IDE e recomeçar o trabalho.

Vale a pena atualizar seus Delphi para o 2009? Na minha opinião vale. Eu com certeza atualizarei o quanto antes. Meus principais motivos são:

  • Generics vai permitir que eu elimine muito código.
  • IDE mais rápida e estável, reflete em maior produtividade do desenvolvedor.
  • Suporte ao produto. Não podemos negar que a CodeGear está se esforçando de verdade para melhorar o produto e parece que está cada vez mais na direção certa. Pare e pense qual seria o tamanho do prejuízo se você tivesse que migrar seus projetos para uma outra plataforma no caso do Delphi ser abandonado. Pensou? Pois é, você vai ver que o custo do Delphi é insignificante perto desse custo. Então temos que suportar o produto, comprando as licenças.

Mais informações sobre o anúncio:

Categories: Delphi Tags:

Delphi 2009 apenas Win32 e futuro Delphi .NET

August 17th, 2008 Erick Sasse 30 comments

Nick Hodges, gerente de produto do Delphi, explicou em seu blog que o Delphi 2009 (Tiburon) será um produto apenas para desenvolvimento nativo, ou seja, Win32.

Acho uma ótima notícia. O Delphi Win32 ainda tem tanto potencial que merece com certeza toda a atenção possível.

Porém, o que mais me chamou a atenção foi que o .NET não foi abandonado, e um novo roadmap será divulgado em breve, além de um produto suportando as últimas tecnologias e frameworks .NET. Humm. Será que vão realmente investir pesado em uma IDE paralela ao Visual Studio ou vão finalmente desenvolver um plugin para ele?

E ao contrário dos que pensam que teriam que comprar o Visual Studio separadamente para rodar o Delphi plugin, isso não é necessário não. O Oxygene (ex Chrome) da RemObjects já vem com a IDE, ou seja, se você não tem o Visual Studio, quando instala o Oxygene, é instalado um Visual Studio apenas com a linguagem Oxygene.

A CodeGear poderia tranquilamente fazer a mesma coisa. São apenas especulações da minha parte. Mas faria muito sentido.

Quer mais um pouco de especulação? Quando a RemObjects mudou o nome do Chrome para Oxygene, disse que simplesmente não podia explicar o motivo. Disse apenas que era um bom motivo e que só faria o bem ao produto. Hum.. teria essa mudança algo a ver com as mudanças de planos da CodeGear para a plataforma .NET? Quem sabe? :)

Novo DataSnap x RemObjects SDK

August 4th, 2008 Erick Sasse 2 comments

O Tiburon (ou Delphi 2009) trará boas novidades em DataSnap. Isso me deixou contente, visto que uso DataSnap em todos os meus aplicativos.

Fui questionado como essas novidades se comparam ao RemObjects SDK mas ainda é um pouco cedo para comparar os dois, visto que o que vimos do novo DataSnap até agora é muito pouco. O que me parece é que o DataSnap ainda será mais simples do que o RemObjects SDK, o que não poderia ser muito diference, visto que o RO já tem muito mais tempo e maturidade.

Steve Shaughnessy deu um preview das melhorias do DataSnap em seu blog e as discussões nos comentários ficarem bem interessantes também.

De início o que ficou meio confuso para mim e para outros é que aparentemente os métodos remotos precisam ser chamados sempre como stored procedures. Os parâmetros dos métodos (tanto de entrada como saída) seriam parâmetros das “stored procedures”.

Além disso, por padrão, não existe nenhuma checagem de tipo pelo compilador, apesar que nos últimos comentários o Steve já disse que isso pode estar disponível até o lançamento do produto.

Vamos aguardar mais novidades para poder comentar melhor.

Cesar Romero blogando

May 20th, 2008 Erick Sasse No comments

O Cesar Romero voltou a blogar com muita vontade. Vale a pena acompanhar. Bastante conteúdo útil para desenvolvedores Delphi e Firebird.

Categories: Delphi Tags:

Minha Primeira Compra no Lulu.com

January 4th, 2008 Erick Sasse 4 comments

O site Lulu.com é uma livraria “on-demand”, ou seja, autores colocam seus livros a disposição e a cada compra, uma cópia do livro é impressa exclusivamente para o comprador e então despachada. Na minha opinião é uma idéia extremamente interessante.

Minha primeira, e por enquanto única, experiência com o Lulu.com aconteceu com a compra do Delphi 2007 Handbook do Marco Cantu.

Comprei o livro no dia 12/11. Paguei com cartão internacional, US$36,50 pelo livro, mais US$4,41 de frete padrão (standard), totalizando US$40,91. Um preço bem acessível.

No dia 15/11 recebi a notificação de que o livro tinha sido impresso e enviado. Como não tinha pressa e optei pelo frete standard, já sabia que iria demorar um pouco. O livro foi despachado dos EUA.

Recebi o pacote no dia 05/12, muito bem embalado. O livro se parece como um livro normal de editora, a impressão é de boa qualidade, preto e branco, aparentemente laser. Veja aqui e aqui.

Ainda não li o livro, então não tenho uma opinião sobre o conteúdo, mas pretendo postar aqui assim que o ler.

Em resumo, a experiência com o Lulu.com foi ótima, sem nenhum tipo de problema, a “qualidade visual” do produto atendeu as expectativas e recomendo.

Delphi 2007 Handbook

Categories: Delphi, Geral, Reviews Tags: , ,