ATPS PARADIGMA DE LINGUAGEM DE PROGRAMAÇÃO
Por: Juliana2017 • 30/1/2018 • 8.085 Palavras (33 Páginas) • 443 Visualizações
...
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 é possível declarar várias variáveis de mesmo tipo
especificando o tipo somente uma vez.
• Ex.: Dim i, j , soma as integer
Somente soma é inteira i e j são variante.
1.2.2Facilidade de Escrita
É a medida do quão facilmente uma linguagem pode ser usada para criar programas para um domínio de um problema escolhido. Também estudado como redigibilidade. A maioria das características de linguagem que afetam a legibilidade também afetam a facilidade de escrita. Isso é derivado do fato de que o processo de escrita de um programa requer que o programador releia sua parte já escrita.
Deve ser considerada no contexto do domínio do problema alvo de uma linguagem. Não é razoável comparar a facilidade de escrita de duas linguagens no contexto de uma aplicação quando uma foi projetada para tal aplicação e a outra não.
• Ex. Visual Basic (VB) e C
Visual Basic, interface gráfica. ’C’, Sistemas operacionais.
Características:
Simplicidade e Ortogonalidade
Muitas construções básicas tornam a linguagem mais difícil de aprender e escrever. Programadores acabam aprendendo apenas um pequeno conjunto de recursos dessa linguagem e ignoram outros. Problema de legibilidade,o autor aprende apenas um conjunto de recursos diferente daquele com o qual o leitor está familiarizado.
Muita ortogonalidade pode prejudicar a facilidade de escrita. Erros em programas podem ser despercebidos quando praticamente quaisquer combinações de primitivas são legais. Isso pode levar a certos absurdos no código que não podem ser descobertos pelo compilador .
Suporte à abstração
Abstração significa definir e usar estruturas ou operações complexas, ignorando os detalhes de construção. O grau de abstração permitido e a naturalidade da sua expressão são importantes para a facilidade.
Expressividade
Um conjunto de formas relativamente convenientes de especificar as operações. Em C:cont++ é mais conveniente e breve que ’cont = cont + 1’
• Em Pascal e C: for é mais conveniente para laços de contagem que while.
1.2.3Confiabilidade
Considera-se um programa confiável quando executa o que foi atribuído de modo esperado, sobre quaisquer condições.
Características:
Verificação de tipos
Testar se existem erros de tipo em um programa em tempo de compilação ou de execução. Quanto mais cedo encontrar o erro, mais barato (construção,performance e manutenção). C original, não era fortemente tipado, pois permitem funções cujos parâmetros não são verificados quanto ao tipo. Uma chamada a uma função que exige um tipo float de entrada poderia aceitar um tipo int.
Ex.
int in(float num){
return num++;
}
int main (){
int number=100;
printf("%d", in(number));}
Tratamento de exceções
Capacidade de interceptar erros em tempo de execução, por em prática medidas corretivas e prosseguir. Object Pascal, Ada, C++, Java e C# incluem capacidade de manipular exceções.
Utilização de apelidos
Define nomes distintos para referenciar a uma mesma área de memória.
Recurso perigoso,Veja:
dois ponteiros para o mesmo endereço de memória.
trocar o valor apontado por um ponteiro afeta o outro.
algumas linguagens restringem este uso para aumentar a confiabilidade.
Legibilidade e facilidade de escrita
Programas difíceis de ler, são mais complexos de escrever ou modificar. Afetam a confiabilidade.
Custo
Para determinar o custo final de uma linguagem de programação, devemos levar em consideração alguns fatores:
Treinamento
Quanto maior a complexidade e quanto mais recursos contém a linguagem,
...