Coluna do Augusto COLUNA Com que toolkit eu vou? O desenvolvimento de aplicativos multiplataforma é cada vez mais comum, e algumas decisões ganham grande importância. A decisão sobre qual framework ou conjunto de bibliotecas básicas de suporte um novo projeto de software adotará muitas vezes é tomada de forma quase impensada, escolhendo aquela que os desenvolvedores melhor dominam, aquela que usamos desde sempre, ou mesmo aquela que é recomendada ou adotada por padrão pelos fornecedores de alguma outra ferramenta de desenvolvimento já adotada. E na realidade quase monoplataforma que o desenvolvimento de software comum encarava até pouco tempo atrás, a abordagem acima muitas vezes era mais do que suficiente. Sabia-se que os clientes demandariam o software apenas em uma arquitetura e em um sistema operacional, que os relacionamentos com outros softwares seriam tratados de maneira bem superficial, e todo mundo ficaria satisfeito. O essencial é que eles tomaram a decisão de ser multiplataforma antes mesmo de começar. Porém, de uns anos para cá, a realidade mudou radicalmente. Agora é possível que seus usuários continuem satisfeitos com os sistemas monoplataforma, mas certamente os seus concorrentes já estão se preparando para crescer em direções novas, suportando ativamente (e não apenas portando para) dispositivos móveis, smartphones de grife, MIDs, netbooks, interfaces web, múltiplos sistemas operacionais, virtualização e tantas outras plataformas e tecnologias que estão redefinindo o ambiente de TI – assim, a escolha do framework passa a integrar o rol das decisões estratégicas do gestor de TI. 16 E mesmo conhecendo esta situação, ainda não há caminhos definidos e unificados traçados. Alternativas comuns têm estado associadas à adoção de fundamentos multiplataforma por natureza, como o framework Qt, da Nokia, que suporta Linux/X11, Mac, Windows, Java, Windows CE e diversas outras plataformas embarcadas, para sistemas em uma variedade de linguagens (alguns exemplos: C++, C#, Java, Pascal, PHP, Perl, Ruby e Python): alguns softwares desenvolvidos usando a Qt são o ambiente KDE, o navegador Opera, Google Earth, Skype e Adobe Photoshop Album. Mesmo assim, há quem prefira – após detida análise – adotar ferramentas de suporte diferenciadas em cada plataforma que suportará. Dá mais trabalho e custa mais, sem dúvida, mas eventualmente – argumentam os proponentes desta alternativa – serão oferecidos ao usuário final uma interface e um conjunto de recursos que aproveitam melhor as características da sua própria plataforma, sem se limitar a um mínimo múltiplo comum, como é o que se acredita – ao adotar esta linha de raciocínio – que os toolkits multiplataforma oferecem. Um exemplo recente desta segunda linha de raciocínio é o Google Chrome, cuja interface gráfica seus desenvolvedores optaram por desenvolver separadamente nas versões Linux, Mac OS X e Windows. Certos ou errados? Não conhecemos seus objetivos estratégicos, portanto não podemos afirmar. Mas o essencial é que eles tomaram a decisão de ser multiplataforma antes mesmo de começar, e isso os diferencia de todo desenvolvedor que deixa para considerar a multiplicidade de ambientes só depois que todos os fundamentos do seu sistema já estão codificados e solidamente amarrados a uma única possibilidade. n Augusto César Campos é administrador de TI e desde 1996 mantém o site BR-linux.org, que cobre a cena do Software Livre no Brasil e no mundo. http://www.linuxmagazine.com.br Matéria | SEÇÃO SEÇÃO Loja Edição do mês Livros Seções Notícias Ao se inscrever no portal, você se cadastra automaticamente em nossa newsletter e recebe toda semana notícias e promoções exclusivas. Newsletter Linux Magazine #XX | Mês de 200X 17