Linguagens de Programação
Linguagens de Programação
Linguagens de Programação
1. Linguagens de programação...........................................................................................2
1.1. Utilidade das Linguagens de Programação.................................................................2
1.2. Características dos modelos de linguagem de programação.......................................2
1.2.1. Paradigma estruturado.............................................................................................2
1.2.1.1. Conceito...............................................................................................................2
1.2.2. Paradigma orientado a objetos.................................................................................3
1.2.2.1. Conceito...............................................................................................................3
1.2.3. Paradigma funcional................................................................................................4
1.2.3.1. Conceito...............................................................................................................4
1.3. Importância das Linguagens de Programação.............................................................5
1.4. Classificação quanto ao nível de abstração.................................................................5
1.5. Classificação de tipos de programação........................................................................6
1.6. Tradução de HIL para ISA..........................................................................................6
Bibliografia.............................................................................................................................7
1
1. Linguagens de programação
Segundo RUBIANO (2022:48) Uma linguagem de programação consiste num conjunto de
regras sintáticas e semânticas usadas para desenvolver um programa de computador. O
conjunto de palavras, composto de acordo com essas regras, constitui o código fonte de um
programa que permite comunicar as instruções para um computador. As instruções
especificam, precisamente, que ações devem ser tomadas em várias circunstâncias, quais os
dados a manipular e como esses dados são armazenados ou transmitidos.
Ainda com mesmo ponto de vista FAROOQ (2014:85) salienta que, as linguagens de
programação são sistemas de comunicação que permitem que os programadores instruam um
computador para executar tarefas específicas. Elas consistem em
conjuntos de regras e sintaxe que traduzem a lógica humana para uma forma que o
computador pode entender e executar.
Existem muitas linguagens de programação, e cada uma possui características distintas. Por
exemplo, Python é conhecida por sua legibilidade e simplicidade, enquanto C++ é usada para
desenvolvimento de sistemas de baixo nível. Cada linguagem tem suas próprias
peculiaridades,
como tipagem (estática ou dinâmica), paradigma de programação (orientado a objetos,
funcional, etc.)
1.1. Utilidade das Linguagens de Programação
Na visão de MAGELA (2006:335) as linguagens de programação servem para
desenvolver software e aplicativos. Elas permitem que os desenvolvedores criem programas
que realizem uma ampla variedade de tarefas, desde simples cálculos até complexas
aplicações de software.
2
desenvolver sub-rotinas e as funções. Esse modelo foi o principal paradigma que auxiliou na
criação de software entre a programação linear e a programação orientada a objetos.
Contudo, a programação estrutura foi sucedida pela de orientação a objetos. Mas, ainda hoje
ela continua sendo utilizada e muito influente, pelo fato de que grande parte das pessoas
ainda aprende programação através desse modelo.
I. Linguagens
As principais linguagens que fazem uso do paradigma estruturam são respetivamente:
C
BASIC
PASCAL
COBOL
II. Vantagens
A programação estruturada concede grande flexibilidade e a possibilidade de
boa legibilidade, é de fácil compreensão, e sua estrutura é bem simples, por esse
III. Desvantagens
Os dados são separados das funções demonstrando certa lentidão. Diversas operações simples
não possíveis, como a implementação da troca de parâmetros, ou seja, mudanças na estrutura
dos dados acarretando na alteração de todas as funções que estão relacionadas. Esse modelo
gera sistemas difíceis de serem mantidos.
1.2.2. Paradigma orientado a objetos
1.2.2.1. Conceito
Segundo ASCENCIO (2007:438) o conceito de programação orientada a objetos é
fundamentando na interação e composição de diversas unidades de um software, os
denominados objetos. As atividades de sistema com base na orientação a objetos se dão
através dos relacionamentos de troca de informações (comunicação) entre os objetos contidos
dentro do sistema. Esses objetos que são denominados classes, o comportamento de cada
classe é definido com base em seus métodos e as características ou estados de uma classe são
respetivamente seus atributos. As definições do relacionamento entre os objetos são definidas
nos métodos e atributos que a classe possui.
I. Linguagens
3
As principais linguagens que fazem uso do paradigma estrutura são respectivamente:
Smalltalk
Python
Ruby
C++
Object Pascal
Java
C#
Oberon
Ada
Eiffel
Simula
NET
II. Vantagens
O paradigma orientado a objetos possui todas as vantagens que o estruturado, flexibilidade,
legibilidade, fácil compreensão, quebrar em subproblemas, entre outras. Uma de suas
caracterizas é que a alteração de um modulo não gera a necessidade da modificação em
outros módulos do sistema, ou seja, quanto mais esse módulo for independe, maior a chance
da reutilização do código em outras partes da aplicação. A sua principal vantagem é a
facilidade da reutilização de códigos, possibilitando trabalhar em um nível superior de
abstração, e a utilização de um único padrão conceitual durante todo o processo de
desenvolvimento do sistema. (TUCKER:2008, p.634).
III. Desvantagens
A programação orientada a objetos exige uma forma de pensamento
complexa, por isso muitos acabam não compreendendo e ela acaba não sendo
usada por grande parte dos programadores. Esse modelo tem um uso elevado da
memória da máquina, é mais difícil de modelar e a dependência de funcionalidades
já implementadas em outras classes.
4
parâmetros ou valores de entrada para outras funções e podem ser os valores de retorno ou
saída de cada função.
I. Linguagens
As principais linguagens que fazem uso do paradigma estrutura são
respectivamente:
Lambada
LISP
Scheme
ML
Miranda
Haskell
II. Vantagens
A alocação automática das células de memória são uma das suas principais vantagens por
causa disso, os efeitos colaterais dos cálculos da função são eliminados. A utilização da
recursividade em programação funcional pode assumir várias formas e é considera uma
técnica mais poderosa do que os laços de repetição. (MENDES:2008, p.642).
Essa linguagem assegura que o resultado será o mesmo para um dado grupo de parâmetros
independente da onde, e quando é avaliado em computação independente para execução
paralela.
III. Desvantagens
A programação funcional há grande possibilidade de criar códigos complexos, além de não
ser um paradigma muito disseminado. Esse modelo não faz a utilização explicita da alocação
de memória e também não há o uso de variáveis, ou seja, falta diversas construções que são
essenciais em linguagens estruturadas (MENDES:2008, p.644).
5
1.4. Classificação quanto ao nível de abstração
Segundo TUCKER (2008:321) as linguagens podem ser classificadas em alto nível e baixo
nível.
1.4.1. Linguagens de alto nível – como Python e Java, são mais próximas da linguagem
humana,
1.4.2. Linguagens de baixo nível – como Assembly, estão mais próximas da linguagem
de máquina.
1.5. Classificação de tipos de programação
Existem diferentes tipos de programação, incluindo:
Programação orientada a objetos: enfoca objetos e classes
Programação funcional: baseia-se em funções e imutabilidade.
Programação procedural: organiza o código em procedimentos e funções.
Programação de scripts: é usada para automação de tarefas.
Programação de sistemas: desenvolve sistemas operacionais e drivers.
Programação web: cria aplicações e sites para a web.
Programação móvel: desenvolve aplicativos para dispositivos móveis.
Compilação: Nesse método, um compilador traduz o código de alto nível para código
de máquina diretamente. O resultado é um arquivo executável.
Interpretação: Aqui, um interpretador lê o código de alto nível linha por linha e o
traduz para código de máquina à medida que o programa é executado.
6
3º - Otimização de Código: Nesta fase, o código intermediário ou até mesmo o código de
máquina é otimizado para melhorar o desempenho e a eficiência. Isso inclui a eliminação de
código morto, a reordenação de instruções e a redução do uso de recursos.
O processo de tradução de HIL para ISA é crucial para que os programas escritos em
linguagens de alto nível possam ser executados em computadores. Cada linguagem de
programação pode ter seu próprio compilador ou interpretador, adaptado para a arquitetura de
hardware alvo. É importante notar que diferentes arquiteturas de processador (como x86,
ARM, MIPS, etc.) possuem conjuntos de instruções diferentes, e a tradução de alto para
baixo nível deve levar em consideração essas diferenças para garantir que o código funcione
corretamente na plataforma desejada (MAGELA:2006, p.435).
7
Bibliografia
FAROOQ, M.: An evaluation framework and comparative analysis of the widely used first
programming languages. 2014.