Modelos de design de software em projetos de desenvolvimento móvel

Modelos de design de software otimizar o desenvolvimento de aplicações móveis Ao eliminar a implementação de componentes repetitivos, é possível criar um modelo de design que também simplifica as revisões e atualizações, uma vez que uma alteração no modelo pode ser aplicada a todo o projeto.

O MobileTogether oferece modelos de design de software para elementos de interface de utilizador em aplicações móveis multiplataforma, facilitando a reutilização de designs e tornando mais fácil a criação de opções eficientes e flexíveis para diversas necessidades de aplicações.

Numa aplicação MobileTogether, um modelo de controlo é um componente de design que permite aos programadores definir e agrupar elementos de interface de utilizador de forma a que estes possam ser facilmente reutilizados. Os modelos de controlo suportam parâmetros, e cada modelo pode ser personalizado com base nos valores dos parâmetros em tempo de execução.

Vamos analisar um exemplo.

O programa MobileTogether Designer inclui vários projetos de exemplo que demonstram os modelos de controlo. Descreveremos a aplicação Cities4-DynamicSelection. A captura de ecrã abaixo mostra uma visão parcial da aplicação a funcionar num telemóvel Android:

Esta aplicação demonstra um desafio comum ao apresentar dados hierárquicos. Em última análise, o objetivo da aplicação é que o utilizador selecione uma cidade. Para ser mais eficiente, a lista completa de cidades está organizada por continentes, apresentada numa caixa de seleção (combo box), depois filtrada por países no continente selecionado, mostrados num conjunto de botões de opção (radio buttons), e, finalmente, as cidades dentro do país são apresentadas num segundo conjunto de botões de opção.

Em orientação horizontal, os botões de rádio são apresentados numa lista horizontal (como mostrado acima), e em orientação vertical, são apresentados verticalmente

Seria uma aplicação complexa de criar se fosse necessário construir manualmente os botões de opção para cada combinação de seleções do utilizador. Além disso, os nomes dos países e cidades estão contidos num ficheiro XML, e queremos poder atualizar a aplicação simplesmente editando este ficheiro.

Ao abrir a aplicação no ambiente de desenvolvimento MobileTogether, podemos visualizar a estrutura da página na janela de design principal.

No topo da página, encontra-se o primeiro controlo: a caixa de seleção de continente. Em seguida, encontram-se duas tabelas que contêm controlos de espaço reservado (placeholders). Em tempo de execução, a primeira tabela e o espaço reservado gerarão a lista de países, enquanto a segunda tabela gerará a lista de cidades.

O designer MobileTogether inclui uma janela de ajuda que mostra uma estrutura hierárquica de todas as páginas, subpáginas e modelos de controlo em qualquer aplicação. Neste exemplo, cada modelo aceita dois parâmetros que serão passados pelo espaço reservado durante a execução.

Selecionar um dos modelos de controlo exibe os seus componentes no painel de design principal.

Para a versão vertical, o modelo utiliza uma tabela com linhas dinâmicas, e para a versão horizontal, utiliza uma tabela com colunas dinâmicas. Em ambos os casos, a tabela gerada pelo modelo será inserida dentro de uma única célula da tabela principal definida na página inicial. Isto centraliza verticalmente a caixa de seleção de ordenação em qualquer coluna de botões de opção, independentemente do número de linhas.

Um espaço reservado define a posição de um modelo de controlo numa página. A janela de assistência "Estilos e Propriedades" para o espaço reservado identifica qual o modelo de controlo a utilizar e fornece os valores dos parâmetros. O espaço reservado para a lista de países define ambas as propriedades como expressões XQuery:

Mesmo numa visualização parcial da expressão, podemos verificar que o modelo de controlo específico a ser aplicado na página será determinado pela orientação do dispositivo em tempo de execução.

Podemos usar o simulador MobileTogether para analisar os modelos de design de software durante a execução e observar os elementos de preenchimento e os modelos de controlo em ação. Nas seguintes capturas de ecrã, estamos a usar um iPhone em orientação horizontal como dispositivo de visualização. Como esta aplicação não possui funcionalidades específicas de um determinado dispositivo ou sistema operativo, o dispositivo de visualização exato é irrelevante.

As opções de continente, país e cidade são definidas pelo utilizador, sem valores predefinidos na aplicação. Assim, no início da execução, apenas vemos o cabeçalho da página e uma caixa de seleção vazia para escolher o continente:

A janela "Mensagens" lista as ações processadas à medida que selecionamos um continente, sendo estas ações destacadas em verde abaixo

A janela de simulação agora mostra a lista de países adequada para a Europa, mas não apresenta nomes de cidades

Neste momento, a aplicação está à espera de que o utilizador selecione um país. Em vez de prosseguir, podemos abrir o Editor XQuery dentro do Simulador e avaliar os parâmetros passados pelo primeiro espaço reservado para o Modelo de Controlo. Basta copiar a expressão dos Parâmetros do Modelo a partir da janela "Estilos e Propriedades" e colá-la na janela do XQuery. A expressão resulta num array que contém a lista de países da Europa e o estado de ordenação:

Mas por que é que a aplicação não mostra nenhuma lista de cidades na página simulada? Podemos analisar a expressão de parâmetros que é enviada pelo segundo espaço reservado para as cidades:

A expressão recebeu uma lista vazia de nomes de cidades. Como os botões de rádio referentes às cidades estão contidos numa tabela com colunas dinâmicas, nenhuma coluna foi exibida!

O controlo de caixa de seleção para escolher a ordenação não está numa coluna dinâmica, mas também não é exibido. A propriedade de visibilidade da caixa de seleção é definida como "$PERSISTENT/Root/@Country != ''", o que significa que a caixa de seleção e o texto associado não serão visíveis até que o utilizador selecione uma cidade.

Em resumo, o exemplo Cities4-DynamicSelection demonstra como vários componentes podem ser combinados em modelos de design de software personalizados e integrados numa aplicação móvel, para criar uma solução elegante que apresenta o resultado correto com base nas escolhas do utilizador em tempo real ou em outras condições externas. A aplicação de demonstração e o ficheiro de dados de origem estão incluídos no MobileTogether Designer, para que possa seguir os passos descritos acima ou até mesmo explorar por si próprio.

O MobileTogether Designer é uma ferramenta gratuita que permite.. Crie rapidamente aplicações móveis compatíveis com diferentes plataformas a partir de um único design. Observar demonstrações em vídeo para ver os tipos de aplicações que os utilizadores do MobileTogether criam todos os dias e.. descarregue o instalador Para começar a usar modelos de design de software para si!