A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Curso Sistemas de Informação Disciplina: Arquitetura de Software

Apresentações semelhantes


Apresentação em tema: "Curso Sistemas de Informação Disciplina: Arquitetura de Software"— Transcrição da apresentação:

1 Curso Sistemas de Informação Disciplina: Arquitetura de Software
Critérios para Avaliação de Linguagens de Programação Maior habilidade em resolver problemas: uma maior compreensão de uma LP pode aumentar nossa habilidade em pensar em como atacar os problemas. Tanto melhor se dominarmos os vários modelos de LP Melhor uso de uma LP: compreensão das funções e implementação das estruturas de uma LP nos levam a usar a LP de modo a extrair o máximo de sua funcionalidade e eficiência Melhor escolha de uma LP: adequação ao problema Melhor designer de LPs: linguagens de interfaces de sistemas, extensão de LP via operadores e tipos de dados.

2 O que é a uma Linguagem? Expressão do pensamento, por meio da palavra; Conjunto de sinais, visuais ou fonéticos, através dos quais se estabelece a comunicação; O que é a uma Linguagem de Programação? Sistema de codificação constituído por conjuntos de palavras, cada qual com um só significado, formando séries de instruções destinadas a serem interpretadas e executadas pelo computador.

3 Tipos de Linguagens Linguagens de Baixo Nível Linguagens Procedurais Linguagens Funcionais Linguagens Orientadas a Objeto Linguagens Específicas a Aplicações Linguagens Visuais

4 Critérios para Avaliação
Legibilidade Simplicidade Expressividade Ortogonalidade Confiabilidade Portabilidade

5 Legibilidade Facilidade de ler e escrever programas
Influência no desenvolvimento e depuração de programas, na manutenção de programas e no desempenho de equipes de programação Fatores que melhoram a legibilidade: Abstração de dados Modularização de programas Documentação Convenções léxicas, sintaxe e semântica Exemplo em Java: nomes de classes iniciam por letra maiúscula, nomes de atributos usam letras minúsculas

6 Simplicidade Representação de que cada conceito seja simples de aprender e dominar Simplicidade sintática exige que a representação seja feita de modo preciso, sem ambigüidades Simplicidade semântica exige que a representação possua um significado independente de contexto Simplicidade não significa concisão A linguagem pode ser concisa mas usar muitos símbolos especiais Exemplo: linguagens funcionais

7 Expressividade Representação clara e simples de dados e procedimentos a serem executados pelo programa Exemplo: tipos de dados em Pascal Linguagens mais modernas: Incorporam apenas um conjunto básico de representações de tipos de dados e comandos Aumentam o poder de expressividade com bibliotecas de componentes Exemplos: Pascal, C++ e Java

8 Ortogonalidade Possibilidade de combinar entre si, sem restrições, os componentes básicos da LP Exemplo: permitir combinações de estruturas de dados, como vetores de registros Contra exemplo: não permitir que um vetor seja usado como parâmetro de um procedimento Influenciada pelo paradigma de LP Modelo de objetos Modelo funcional

9 Confiabilidade Tipagem forte: o processador da linguagem deve
- Assegurar que a utilização dos diferentes tipos de dados seja compatível com a sua definição Evitar que operações perigosas, tal como aritmética de ponteiros, seja permitida Sistemas de tratamento de exceções permitem construir programas que Possuam definições de como proceder em caso de comportamento não usual Possibilitem tanto o diagnóstico quanto o tratamento de erros em tempo de execução

10 Portabilidade Multiplataforma: capacidade de um software executar em diferentes plataformas sem a necessidade de maiores adaptações Sem exigências especiais de hardware/software Exemplo: aplicação compatível com sistemas Unix e Windows Longevidade: ciclo de vida útil do software e do hardware não precisam ser síncronos; ou seja, é possível usar o mesmo software após uma mudança de hardware


Carregar ppt "Curso Sistemas de Informação Disciplina: Arquitetura de Software"

Apresentações semelhantes


Anúncios Google