ATPS PARADIGMA DE LINGUAGEM DE PROGRAMAÇÃO
Por: AMB2018 • 4/5/2016 • Trabalho acadêmico • 8.080 Palavras (33 Páginas) • 407 Visualizações
1.RELATÓRIO
1.1Critérios de avaliação de linguagens de Programação
Impacto no processo de desenvolvimento de software incluindo manutenção. Controversa: concordância com o valor de certas características das linguagens em relação a outras. Alguns critérios são considerados amplos. Alguma das principais áreas de aplicação de linguagens de programação:
Aplicação Científica:
Operações com números reais. Ex. Fortran.
Aplicação Comercial:
Números decimais, relatórios e Banco de Dados. Ex. COBOL, Clipper, Delphi.
Inteligência Artificial
Simbolismo e conexionismo ao invés de Números. Ex. LISP, Prolog.
Programação de Sistemas.
Software Básico.Ex. C, C++.
Linguagens de Scripting.
Automação do S.O, Software para Web.Ex. PHP, Pearl.
1.2Critérios mais utilizados nas linguagens de programação
Legibilidade: facilidade com a qual os programas podem ser lidos e entendidos.
Facilidade de escrita: facilidade com a qual uma linguagem pode ser usada para criar programas para um dado domínio.
Confiabilidade: conformidade com as especificações.
Custo: o custo total definitivo de uma linguagem.
Outros critérios de avaliação
Portabilidade: A facilidade com a qual os programas podem ser movidos de uma projeto/programa para outro.
Generalidade: A aplicabilidade a uma ampla faixa de aplicações.
Bem definida: Em relação a completude e a precisão do documento oficial que define a linguagem.
1.2.1Legibilidade
Antes de 1970, o desenvolvimento de software era amplamente pensado em termos de escrita de código, ou seja, eficiência e legibilidade de máquina, ponto de vista do computador mais do que usuários.
Conceito de ciclo de vida de software 1970:
Desenvolvimento e depuração de programas;
Importância da manutenção;
Desempenho de equipes de programação;
Características:
Simplicidade Geral;
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üidade. Exemplo: A++; A=A+1; A+=1; ++A.
Simplicidade semântica exige que a representação possua um significado independente de contexto. Ex., private: B b; class B: private A.
Um operador (um símbolo) tem mais de um significado.
Ex. Operador “+” usado para soma de inteiros e para operações com vetores.
Ortogonalidade;
Um conjunto relativamente pequeno de construções primitivas, pode ser combinado a um número relativamente pequeno de formas para construir as estruturas de controle e de dados da linguagem. Cada possível combinação é legal e significativa.
Ex. Considere tipos de dados primitivos (inteiro, ponto flutuante, ponto flutuante de dupla precisão e caractere).
Considere dois operadores de tipo (vetor e ponteiro).
Dados primitivos combinados com operadores, grande número de estrutura de dados.
Falta de ortogonalidade gera as exceções às regras da linguagem:
Ex. linguagem C possui dois tipos de dados estruturados: arrays e registros (struct), sendo que, registros podem ser retornados de funções, arrays não. Um membro de estrutura pode ser qualquer tipo de dado, exceto void ou uma estrutura do mesmo tipo.
Um elemento de array pode ser qualquer tipo de dado, exceto void ou uma função. Parâmetros são passados por valor, a menos que sejam arrays que obrigatoriamente são passados por referência. Ortogonalidade é fortemente relacionada à simplicidade. Quanto mais ortogonal o projeto, menor é o número necessário de exceções às regras.
Acredita-se que, linguagens funcionais são uma boa combinação de simplicidade e ortogonalidade. Ex. LISP basicamente funções com parâmetros.
Tipos de Dados;
Mecanismos adequados para definir tipos e estruturas de dados. Ex. Uso de tipos numéricos para uma flag porque não existe nenhum tipo booleano na linguagem.
timeOut = 1 X timeOut = true.
Projeto de Sintaxe;
Sintaxe define a forma dos elementos de uma linguagem. Projeto de sintaxe tem efeitos significativos na legibilidade:
Formato dos identificadores;
Restringir os identificadores a tamanhos muito curtos piora a legibilidade. Ex. FORTRAN77 no máximo seis caracteres para nomes conotativos de variáveis.
Ex. ANSI BASIC identificador formado por apenas uma letra ou por uma letra seguida de um dígito.
Palavras especiais;
A aparência e sua legibilidade são fortemente influenciadas pela forma das palavras especiais de uma linguagem. Ex. while, class e for.
Métodos de formação de sentenças. Pares casados de palavras especiais, Símbolos: “Chaves” para composição de sentenças. Palavras especiais usadas como nomes de variáveis de programas.Ex. FORTRAN 95 ,Do e End são nomes válidos de variáveis.
Forma e Significado;
Projetar sentenças de maneira que sua aparência ao menos indique parcialmente seu propósito. Problema:
Mesma sentença com significado diferente. Ex. Em C palavra static.
Definição de uma variável dentro e fora de uma função.
Outro problema: Declaração de variáveis.
Por exemplo, no Visual Basic não
...