Independência e reutilização
O conceito de independência é recorrente na metodologia de implementação
de interfaces. Um objectivo importante a alcançar é a utilização
das mesmas ferramentas de desenvolvimento em muitas aplicações
diferentes, a fim de que as ferramentas possam promover a independência
de cada aplicação. O exemplo mais divulgado deste conceito está
subjacente à ferramenta de programação de alto nível,
como por exemplo, o Director da Macromedia, utilizado em múltiplas aplicações.
Um segundo objectivo a alcançar pelo engenheiro de software é
a capacidade de ligar vários dispositivos de input output à mesma
aplicação, sem que tal facto a modifique, a fim de se promover
a independência dos dispositivos.
O terceiro objectivo consiste em reunir diferentes tipos de utilizadores face
à mesma aplicação, usando interfaces diálogo tipificadas,
mas sem que para cada grupo seja necessário implementar um desenho de
interface especial para cada um, sejam caloiros ou veteranos, a fim de se promover
a independência dos utilizadores.
Estas três formas de independência ajudam à reutilização
das ferramentas de engenharia de software que se podem voltar a usar uma e muitas
vezes, minorando assim custos económicos.
Independência da aplicação
O conceito de independência da aplicação deve ser cuidadosamente
analisado pelo engenheiro de software. Como regra primeira o conceito estabelece
que deve haver uma total separação entre o objecto interface e
o objecto "motor de programação". A programação
do objecto interface comunica com o motor da aplicação através
de um conjunto de funções de chamada que inclui parâmetros
de chamada, bases de dados partilhadas, ou rotinas de IPC (interprocess communication).
O sistema de comunicação entre o controlo de informação
e a base de dados é criado através de um conjunto de rotinas de
comandos de linguagem.
Sempre que existe uma real independência entre a aplicação
e a interface, qualquer uma delas poderá ser modificada sem que essa
modificação acarrete interferências indesejadas na outra.
Todos os que programam com recurso a ferramentas de alto nível não
se apercebem de que o motor da ferramenta realiza de forma automática
este conceito de independência. É porém importante ter uma
noção do que acontece nas áreas menos visíveis de
funcionamento do sistema.