Arquitetura do Framework Symbian
Dados do artigo
Este artigo dá uma visão geral da arquitetura do framework de interface gráfica do Symbian.
O Framework da interface do usuário fornecido pelo Symbian OS e pela plataforma S60 contêm um conjunto de bibliotecas e componentes com diversas funcionalidades utilizadas por aplicações gráficas, como:
- Inicialização da aplicação;
- Gerência de eventos;
- Internacionalização e localização;
- Suporte a teclado;
- Entre outros...
Todas as aplicações gráficas para S60 utilizam este framework, por esta razão independente de seu tamanho essas aplicações possuem no mínimo 4 classes em seu projeto, são elas: Application, Document, AppUi e AppView. Essas classes são necessárias pois permitem ao framework por exemplo, identificar e inicializar a aplicação, repassar eventos à ela entre outras funções.
Sequência de inicialização
O processo de inicialização de uma aplicação gráfica para S60 se dá na seguinte ordem:
- O ponto de entrada da aplicação E32Main() é chamado, isto instancia Application (objeto da classe derivada de CAknApplication) e retorna seu ponteiro para o framework;
- Com o ponteiro de CAknApplication o framework faz uma chamada ao método CreateDocumentL() que cria uma instância de Document (classe derivada de CAknDocument) e retorna seu ponteiro ao framework;
- Com o ponteiro de CAknDocument é feita uma chamada ao método CreateAppUiL(). Este método irá instanciar a interface do usuário da aplicação - AppUi -(classe derivada de CAknAppUi ou CAknAppViewUI) retornando seu ponteiro para o framework;
- Por fim, o framework fará uma chada ao método ConstructL() do ponteiro de CAknAppUi ou CAknAppViewUI que criará o view da aplicação - AppView.
Classes necessárias
O diagrama de classes abaixo demonstra o relacionamento entre as classes mencionadas acima:
Conjuntos de classes de uma aplicação
A figura abaixo exemplifica a relação de herança entre as classes de uma aplicação e as classes do framework:


(no comments yet)