Linguagem de programação
-
Upload
paulo-muniz -
Category
Education
-
view
11 -
download
3
Transcript of Linguagem de programação
Linguagem de Programação
Legibilidade
Esta relacionada na facilidade de leitura dos códigos. Quanto mais fácil for conseguir ler o programa, mais fácil será entender o código e também descobrir erros na programação. Uma LP com baixa legibilidade torna o seu aprendizado mais difícil.
A legibilidade é o que mais influencia a modificação e manutenção de
programas, tendo também um impacto considerável no custo de produção. As
facilidades em escrever programas favorecem tanto na escrita de programas
como também na sua leitura. A simplicidade, abstração de dados e
modularização trazem um estilo claro de escrever programas.
A documentação é importante no aspecto de legibilidade, pois é uma forma de
explicar ao leitor o funcionamento do programa, para que o entendimento e
manutenção do programa sejam feito com sucesso e deve ser feita desde o
início do projeto. Os comentários também são uma maneira de documentação
onde uma explicação é inserida diretamente no código, o que pode ser
interessante, desde que seja tomado o cuidado de não confundir o comentário
com o código em si.
As convenções léxicas tem influência na legibilidade, na medida em que fazem
algumas restrições, como por exemplo limitar o comprimento de identificadores,
obrigando o programador a usar nomes crípticos, ou proibindo o uso de
símbolos como o separador (“_”) ou espaço, o que obriga a juntar-se as várias
palavras de cada nome.
Outro fator influenciador é a sintaxe da linguagem. Delimita explícitos que
indicam o início e fim para cada tipo de bloco (if,for,case) são melhores do que
o begin e end do Pascal, pois indicam claramente o propósito do grupo de
comandos. Em linguagens onde os blocos são especificados por
espaçamentos horizontais, o programa pode facilmente adquirir uma estrutura
descuidada e confusa, sendo seu reespaçamento custa caro e é sujeito a
erros. A semântica pode ajudar na legibilidade impondo restrições, mas tendo
uma generalidade reduzida.
Java
Só admite a orientação a objeto e ainda oferece estímulos para a
construção de código bem documentado
C
Possui características facilmente usadas para criar código ilegível e
difícil de manter
Python Tem sido usada como ferramenta de ensino de programação
(pela sua facilidade de aprendizado e implementação de conceitos de
Ciência da Computação), teste e prototipagem, script, etc.
C++
Quando a POO é estimulada a melhorar esta característica, pois
estimula o encapsulamento e a proteção de dados.
Confiabilidade
A confiabilidade está estritamente ligada com a facilidade de escrita e com a
legibilidade, pois há mais facilidade na correção de um programa. Se a
linguagem faz uma distinção rigorosa entre verificações estáticas e dinâmicas,
os programadores ficam cientes do grau de validação de cada passo do
processamento. Linguagens não deveriam fornecer características que são
impossíveis ou difíceis de verificar devido a falta de confiabilidade intrínseca.
É importante fazer com que os programas sejam os mais verificáveis quanto
possível, pois verificações em tempo de execução pode reduzir a velocidade de
execução e não certificar a correção de programas.
Linguagens que permitem o desenvolvimento de módulos que possam ser
certificados em separado ajudam na confiabilidade. A facilidade de modificar
programas também contribui para a confiabilidade, porque durante a
manutenção devemos ser capazes de modificar o programa mantendo sua
confiabilidade. Ocorre forte relacionamento entre a confiabilidade de programas
e uma definição rigorosa da semântica de linguagens. Um semântica formal é a
base na verificação de programas, o que torna isso um componente importante
na programação. É necessária uma confiabilidade da implementação da
linguagem, e quanto maior a linguagem mais difícil é a produção de
implementações confiáveis.
Java
Atende este requisito de confiabilidade
C, C#
Possuem inúmeras características que estimulam erros de
programação (manipulação direta de endereços de memória por
meio de ponteiros e comando de desvio incondicional irrestrito)
Facilidade de Escrita
As linguagens devem ser de fácil entendimento. Uma Linguagem que oferece
várias formas para se fazer o mesmo procedimento acaba sendo confusa para
o programador que desconhece todos os seus meios e, portanto não entende o
código de outros programadores por não conhecer todos os métodos daquela
determinada linguagem que leva ao mesmo resultado.
Java
Mais fácil que o C++, existem muitos conceitos e muitas maneiras de se
atingir uma determinada funcionalidade, porém não é simples
C
Possui características facilmente usadas para criar código ilegível e
difícil de manter
Python
É uma linguagem muito fácil de se aprender. Sua sintaxe limpa facilita a
escrita e também a manutenção uma vez que é mais fácil de ler.
C++
Une as dificuldades de aprendizado de C e JAVA, além de possuir um
número excessivamente alto de conceitos diferentes.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 maior o grau de dificuldade de aprendizado;
- Programação -> Está ligado aos fatores de simplicidade: quanto menor o numero de componentes básicos, mais fácil a leitura e a programação do código fonte,
Exemplo: Comandos que tem a mesma finalidade:
cont:= cont +1
cont ++
- Compilação -> Existem duas situações de compilação de programas:
1- Programas auto executáveis (EXE, COM, etc)
2- Programas que dependem de um “rum time” para ser executado (FLX-Dataflex);
No primeiro caso a distribuição do aplicativo é mais simples, pois independe que o cliente tenha que adquirir ferramentas de linguagem para a execução, que encarece consideravelmente o custo final do projeto.
- Execução Otimização é a palavra chave. Trata-se de preocupação em desenvolver um código otimizado, com execução mais rápida.
- Teste Testes realizados na linguagem visam confiança. Em sistemas Críticos se houverem falhas, o custo pode tornar-se elevado.
- Manutenção Visa corrigir ou modificar para adicionar/remover recursos. O custo da manutenção mede-se principalmente pelas suas características de legibilidade, quanto mais fácil é escrever o programa, mais fácil torna-se a manutenção. Os fatores mais consideráveis em termos de custos de linguagem são o desenvolvimento do programa, manutenção e confiabilidade, sendo as duas últimas mais onerosas.
- Evolução -> É complicado prever a evolução da linguagem, mesmo da aplicação desenvolvida pela linguagem, quando notamos a grande variedade de dispositivos e tecnologias que surgem frequentemente, as quais podemos implementar em nossas aplicações. Um fator muito importante diz respeito justamente à capacidade de implementações: a portabilidade. Deve ser avaliado o que determina a faixa de utilização da linguagem e encontrar boa definição na documentação sobre a que se propõe a linguagem.