Sopa de Letrinhas

August 28, 2009

Um dos maiores problemas enfrentados no desenvolvimento é de como usar a ajuda. Normalmente, existe um guia de referência de todas as funções, mas ele não é claro o suficiente pra quem chega “agora”.

Particularmente, eu recomendo ao pegar uma plataforma/linguagem nova traçar um objetivo simples (quando estava no colégio técnico, meu objetivo era sempre fazer um programinha que calculava a fórmula de Baskara). Comece do começo, escreva um Hello World, se acostume com a ferramenta, coloque breakpoints. Tente antes de sair perguntando, para que quando você fizer a pergunta, ela já será não tão obvia e ao mesmo tempo você entenderá melhor a resposta pra ela. E leia pelo menos os tutoriais iniciais. Saiba do que a ajuda fala quando está lidando com termos que você nunca viu antes, principalmente acrônimos. E são deles que gostaria de falar aqui:

  • SDK: Software Development Kit; O SDK contém as bibliotecas (*.h, *.lib) para o desenvolvimento específico para aquele hardware que você deseja trabalhar com. No caso do Visual Studio 2005, ele já vem com o SDK para o desenvolvimento em Pocket PC. O SDK pode ou não incluir um emulador (como é o caso do Pocket PC 2003, que vem com um emulador para vários tipos de tela e teclado diferente). Além disso, ao instalar um SDK e escolhe-lo ao iniciar um projeto, ele já acerta o caminho para as headers e libraries, além de várias outras configurações do compilador, tais como, por exemplo, a arquitetura alvo para qual se deseja desenvolver.

Normalmente, é possível utilizar qualquer SDK que tenha a mesma arquitetura de processador para um hardware qualquer.  Por isso que em meu projeto TFTPCE do codeplex eu uso o Windows CE Standard SDK, que me dá a possibilidade de compilar pra qualquer arquitetura. (http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=fa1a3d66-3f61-4ddc-9510-ae450e2318c3)

É vantagem usar um SDK específico quando o fabricante do hardware fornece um, pois além das APIs padrão da Microsoft ele pode colocar mais algumas referências a funções especiais do hardware dele. (Por exemplo, um hardware que tenha uma garra pode ter uma API que controla essa garra)

  • DTK: Developer Tool Kit: O DTK não é comumente usado, esse é o primeiro que eu vejo. Ele constitui de algumas ferramentas extras que dependem do SDK para funcionar. O Link pro DTK do Windows Móbile 6.5 é esse:

http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=20686a1d-97a8-4f80-bc6a-ae010e085a6e

Além desses dois acrônimos, há também os que são mais comuns de ser ouvido quando se trabalha um nível mais baixo, com o Platform Builder, isto é, adaptando o Sistema Operacional para um hardware específico.

  • BSP, OEM e OAL: O BSP vem de Board Support Packager constitue em um conjunto de drivers e configurações que o fabricante de hardware, o OEM (Original Equipment Manufacturer). Além dos drivers, o BSP deve ter uma camada que conecta o processador com o Kernel do CE (pré-compilado). Essa camada é a OAL (OEM Adaptation Layer)

*A imagem ilustrativa foi retirada do flicker de Lucia Freitas, e está sobre a creative commons : http://www.flickr.com/photos/lufreitas/474912291/

Leave a Reply