Posts com Tags C

GTK, Qt, Python, C, sopa de letrinhas?

Quem frequenta o Maemo.org, ou simplesmente passeia pelos repositórios de desenvolvimento/teste já deve ter percebido que existem duas grandes “correntes”: GTK e Qt.

Mas o que elas são? O GTK (GIMP Toolkit) é uma biblioteca gráfica, utilizada para gerar coisas básicas na tela, como caixas de texto, botões, janelas e afins. Ela foi inicialmente criada para ser utilizada no GIMP (um programa, gratuito, de edição de imagens muito popular no GNU/Linux). Mas depois percebeu-se que ele seria útil para criar uma uniformidade entre todos os programas de um sistema operacional (é….no início da era gráfica do GNU/Linux cada programa era o responsável por fazer as suas janelas, os seus menus, os seus botões, o que fazia com que cada programa fosse diferente do outro, não havia um padrão).

E foi à partir daí que todos os programas que rodassem sob o Gnome utilizariam o GTK como base gráfica.

Porém, ao mesmo tempo surgia uma outra biblioteca, para a mesma coisa: a Qt. Inicialmente era uma biblioteca comercial, fechada. Porém, o pessoal do projeto KDE a escolheu, e forçou a empresa a deixá-la livre para usos livres (quem quisesse utilizá-la comercialmente deveria pagar pela licença).

E foi assim durante muito tempo….se um programa era desenvolvido tendo em vista o Gnome, usava o GTK, se tivesse como alvo o KDE, era a Qt. Isso não quer dizer que um programa em Qt não rode no Gnome, ou que um em GTK não rode no KDE! Rodam!! Mas não são perfeitamente integrados ao ambiente.

E o que isso tudo tem a ver com o N900?? Simples: o N900 roda uma versão personalizada de GNU/Linux, e portanto precisa de uma biblioteca gráfica. Por enquanto, no coração do N900 está o GTK. Mas como a Nokia comprou a Trolltech, que é a empresa responsável pelo Qt, ela, Nokia, está num processo de qt-ização de todos os seus aparelhos! Tanto que os aparelhos S60 são capazes, em tese, de rodar aplicativos desenvolvidos em cima do Qt.

Em tese porque na prática o mesmo programa não vai rodar num N97 e num N900 sem que ele seja recompilado….mas pelo menos o código-fonte poderia ser o mesmo.

Isso tudo para explicar porque alguns programas nos repositórios estão em GTK e outros em Qt. A próxima versão do firmware do N900 muito provavelmente já traga o Qt integrado ao sistema, e em sua nova versão.

Tags: , , ,

Em quais linguagens programar?

Eu ainda não encontrei informações concretas sobre quais linguagens estão efetivamente disponíveis para programar no N900. Uma delas, com certeza, é o C/C++.

Outra linguagem que é possível utilizar é o Python. E creio que também esteja disponível o Perl.

Nativamente, o aparelho não possui suporte a Java. E ainda não há nenhuma informação confiável se é possível instalar a JRE. O problema que eu vejo não é exatamente rodar programas em Java num terminal, mas sim acessar funções específicas do aparelho (contatos, acessar a internet, etc.) ou mostrar telas (no caso de jogos, por exemplo).

A Sun oferece versões embedded da JRE. E também existe o Jalimo. Mas para ter certeza mesmo, só tendo um aparelho em mãos e fazendo testes.

Outra opção também é o Flash.

Mas eu particularmente acredito muito na força do C/C++ e do Python, em conjunto ao Qt. Talvez o principal seja o Python, visto que com ele é possível fazer programas para diversos aparelhos sem necessidade alteração do código, como os aparelhos com Maemo e com Symbian.

Tags: , , , ,