Você está na página 1de 3

1.

Introdução

Com base nas ideias apresentadas por Robert Sebesta em seu livro "Conceitos de
Linguagem de Programação", este resumo tem como objetivo sintetizar o conteúdo
do capítulo 1.3, onde foram explorados os paradigmas de programação. Os
paradigmas são fundamentais para a base das linguagens de programação e seus
critérios de avaliação são essenciais para destacarmos onde é melhor encaixada
cada linguagem . Os quatro pilares dos critérios de avaliação são: Legibilidade,
Confiabilidade, Facilidade de Escrita e Custo, apesar de dentro desses pilares
estarem contidos outros tópicos um pouco menos abrangentes.

2. Legibilidade
A legibilidade é um conceito fundamental na avaliação de uma linguagem, pois
refere-se à capacidade de um programa ser compreendido e interpretado,
influenciando diretamente a compreensão, manutenção e evolução do código-fonte.
Na década de 70, com o desenvolvimento do conceito de ciclo de vida de software,
houve um deslocamento de foco para a manutenção e evolução do software,
destacando a importância de projetar linguagens que fossem naturalmente
compreensíveis e expressivas para os programadores. Portanto, a legibilidade das
linguagens de programação se tornou um aspecto crucial na avaliação de sua
usabilidade e eficácia na criação de software de qualidade. Portanto,a legibilidade
como critério de avaliação é crucial na determinação da qualidade dos programas e
das linguagens de programação onde se nota que códigos mais legíveis facilitam a
identificação de problemas, correções de bugs e atualizações, tornando o processo
de desenvolvimento mais eficiente.

A simplicidade geral de uma linguagem de programação faz parte da legibilidade,


sendo um de seus critérios. Quando uma linguagem possui uma ampla gama de
construções básicas, isso tende a torná-la mais difícil de aprender e utilizar. Os
programadores acabam focando em utilizar apenas um subconjunto da linguagem,
o que pode resultar em dificuldades de legibilidade quando outros desenvolvedores
precisam entender ou modificar o código. Além disso, a existência de múltiplas
formas de realizar uma mesma operação pode complicar ainda mais a
compreensão do código, especialmente para aqueles menos familiarizados com as
diferentes abordagens. Além disso outro problema que se encontra é a sobrecarga
de operadores, que acontece quando um operador como + ,- ,! ou outros exercem
mais de uma função (sendo elas diferentes) no código, atrapalhando assim a
legibilidade. E por último, dentro da simplicidade geral podem se encontrar casos
chamados de simplicidade extrema, que acontece em algumas linguagens quando
elas chegam a ser tão simples que podem limitar a expressividade do código,
tornando mais difícil expressar soluções mais complexas ou abstratas de maneira
clara e concisa.
A ortogonalidade é um princípio essencial na concepção de linguagens de
programação, garantindo que os recursos da linguagem possam ser combinados de
forma consistente e previsível. Em uma linguagem ortogonal, os operadores e
estruturas de controle, podem ser usados de maneira transparente e independente,
promovendo a expressividade, modularidade e legibilidade do código. Porém, muita
ortogonalidade em linguagens de programação pode resultar em complexidade
excessiva, dificultando a compreensão e o uso da linguagem.

Os tipos de dados também são importantes. Deve-se reparar que é necessário que
as declarações sejam concisas,ou seja, usar definições inapropriadas como
exemplo: usar um int ou char para substituir um bool está atribuindo a variável de
forma inapropriada e confusa, deixando incerto o verdadeiro uso dela. Outro
exemplo a se reparar é usar todos os dados sendo strings, onde não se percebe qual
o verdadeiro significado daquele tipo de dado. Portanto, é importante escolher os
tipos de dados apropriados que representem com precisão os dados que estão
sendo manipulados no código.

E o último ponto da legibilidade do código é o projeto da sintaxe, dividido em 2


tópicos que são:

Formato dos identificadores, quando a linguagem limita a quantidade de caracteres


das variáveis, tornando difícil ou quase impossível de se identificar corretamente a
variável.

Palavras especiais, a escolha das palavras especiais e sua sintaxe impactam


diretamente na legibilidade do código. Enquanto algumas linguagens como C usam
pares de chaves para delimitar grupos de sentenças, dificultando assim diferenciar
qual operação foi fechada, outras linguagens como Ada utilizam uma sintaxe mais
explícita, como "end if" e "end loop", facilitando a compreensão.

3. Custo
O custo total de uma linguagem de programação é influenciado por uma
variedade de fatores, cada um contribuindo para a complexidade e viabilidade
econômica do seu uso. Um dos principais fatores é o custo de treinamento
de programadores. Isso depende da simplicidade da linguagem, sua
ortogonalidade e a experiência prévia dos programadores. Geralmente,
linguagens mais poderosas tendem a ter uma curva de aprendizado mais
íngreme, tornando o treinamento mais oneroso.
Adicionalmente, o custo de escrever programas na linguagem é um aspecto
importante. Isso está ligado à facilidade de escrita da linguagem e quão bem
ela se alinha com o propósito específico da aplicação. Linguagens que
facilitam a expressão de ideias e conceitos relevantes para o domínio em
questão tendem a reduzir esse custo.
Outro aspecto a considerar é o custo de compilar programas na linguagem.
Isso pode ser um desafio inicialmente, especialmente se os compiladores
iniciais forem caros ou não otimizados. No entanto, esse custo tende a
diminuir à medida que melhores ferramentas de compilação se tornam
disponíveis.
O custo de executar programas escritos na linguagem também é relevante.
Isso é influenciado pelo design da linguagem, especialmente pela quantidade
de verificações de tipos em tempo de execução necessárias. Linguagens que
exigem muitas verificações podem resultar em uma execução mais lenta,
independentemente da qualidade do compilador.
Além desses fatores, o custo do sistema de implementação da linguagem
também desempenha um papel crucial. Linguagens com sistemas de
implementação caros ou restritos a plataformas específicas podem enfrentar
desafios em termos de adoção e uso generalizado.
Deve se notar que, em sistemas de software de grande escala com ciclos de
vida prolongados, os custos de manutenção muitas vezes superam
consideravelmente os investimentos iniciais em desenvolvimento.
Por fim, o custo de baixa confiabilidade também precisa ser considerado.
Falhas em sistemas críticos podem ter consequências significativas,
aumentando o custo total de propriedade da linguagem.
Em resumo, ao avaliar todos esses fatores, é possível identificar que os
principais custos associados a uma linguagem de programação são:
desenvolvimento de programas, manutenção e confiabilidade.

Você também pode gostar