"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Linguagens de programação explicadas

Linguagens de programação explicadas

Publicado em 2024-11-06
Navegar:368

Programming Languages Explained

? Nota: a miniatura foi gerada usando
Modelo Flux Schnell com ajuda do ComfyUI;
Este artigo foi escrito com a ajuda de NI - Inteligência Natural
? Não tem tempo para ler? - Assista ao vídeo que criamos:
Programming Languages Explained

Conjunto ?

Inicialmente todos os programas foram escritos em um binário - o chamado assembly
linguagem de programação. Onde você literalmente instrui a CPU o que fazer dentro
ALU. Embora o assembly, por ser uma linguagem de programação de baixo nível, forneça
um controle muito preciso sobre a ALU, exige que os programadores realmente conheçam a CPU
arquitetura e lógica binária - é muito difícil e caro.
Assembly fornece otimizações de baixo nível que beneficiam o desempenho de execução.
Exemplos de tais programas que estão sendo desenvolvidos e mantidos ativamente
são algoritmos de classificação, funções hash, loops etc.
Então, para reduzir a complexidade e melhorar a eficiência, pessoas inteligentes inventaram
linguagens de programação de alto nível.

? Exemplo de montagem hello world app para Linux X86:

section .data
    hello db 'Hello World!', 0x0A     ; The string to print, with a newline

section .text
    global _start                     ; Entry point for the program

_start:
    ; Write the string to stdout
    mov eax, 4                        ; syscall number for sys_write
    mov ebx, 1                        ; file descriptor 1 is stdout
    mov ecx, hello                    ; pointer to the string
    mov edx, 13                       ; length of the string
    int 0x80                          ; call kernel

    ; Exit the program
    mov eax, 1                        ; syscall number for sys_exit
    xor ebx, ebx                      ; exit code 0
    int 0x80                          ; call kernel

Linguagens de programação de alto nível?

O objetivo da linguagem de programação de alto nível é simplificar o procedimento de
escrever lógica de negócios usando texto legível por humanos. Programação de alto nível
linguagens são classificadas como compiladas e interpretadas.

Linguagem de programação compilada ?️

A linguagem de programação compilada traduz código legível por humanos de alto nível em
código da máquina durante o procedimento de compilação.
Um programa que faz compilação real é chamado de compilador.
Vale ressaltar que cada programa precisa ser compilado
para arquitetura de computador específica.
Programas compilados para X86 não funcionarão em processadores ARM e vice-versa.
Portanto, é necessária compilação para arquitetura específica.
A compilação é um processo irreversível.
Você não pode converter de forma confiável o código assembly em código-fonte de alto nível.

Em termos de desempenho na maioria dos casos, os programas compilados são executados
mais rápido ? do que programas interpretados.

A maioria das linguagens compiladas são digitadas estaticamente.
A explicação segue nos próximos parágrafos.

As linguagens compiladas mais populares são C, C, Rust, Objective C, C#.

? Olá, mundo escrito em linguagem de programação C:

#include 
int main() {
   printf("Hello World!");
   return 0;
}

Bibliotecas vinculadas estática e dinamicamente ?️

Os aplicativos podem realizar certas ações típicas, como exibir imagens,
descompactar arquivos e muitos outros. Embora seja possível escrever tudo isso
funciona do zero, é impraticável fazê-lo.
Para isso são utilizadas bibliotecas.
As bibliotecas ajudam a reduzir a complexidade do processo de desenvolvimento dividindo
aplicações em módulos. Novos recursos e correções de bugs podem ser realizados em
o escopo do módulo e não de todo o aplicativo.
O processo de integração de bibliotecas à aplicação principal é denominado
Vinculando. A vinculação pode ser feita dinamicamente - o que significa que todas as bibliotecas são
compilado separadamente e conectado ao aplicativo principal durante
o tempo de execução do aplicativo ou estaticamente - o que significa que todo o código de máquina
das bibliotecas está integrada ao binário do aplicativo principal.
Bibliotecas dinâmicas geralmente possuem extensão .dll para Windows e .so para Unix.

Linguagem de programação interpretada?

Linguagem de programação interpretada traduz código legível por humanos de alto nível
em código de máquina durante a execução do programa. O programa que faz isso
é chamado de intérprete. Como um intérprete também é um programa que
já está compilado para arquitetura específica da CPU que pode traduzir
código de alto nível para linguagem de máquina em tempo real.

Em termos de desempenho, na maioria dos casos, os programas interpretados são mais lentos?
do que compilado.

As linguagens interpretadas mais populares são Python, JavaScript, PHP, Ruby.

? Olá, mundo escrito na linguagem de programação Python:

print("Hello World!")

Tipificação nas linguagens de programação ?

As linguagens de programação podem ser classificadas como digitadas estaticamente ou dinamicamente.

Na linguagem de programação estaticamente digitada, todas as variáveis ​​e estruturas de dados
são pré-definidos antes da compilação ou execução do programa.
Por exemplo, isso significa que se o desenvolvedor definir a variável A como string
ele não pode alterar seu valor de string para um número posteriormente no código.
Isso pode ser verificado durante a compilação e impressão do Ahead Of Time (AOT)
erro lógico. Esta técnica simples ajuda a reduzir o número de erros
durante a execução, o que leva a programas mais estáveis.

Na linguagem de programação digitada dinamicamente, variáveis ​​podem ser reatribuídas
de um tipo para outro. Por exemplo, uma variável A pode primeiro conter um número
e posteriores podem conter uma string. Esse método simplifica o processo de desenvolvimento.

Estruturas de dados

Variáveis?

Variáveis ​​podem ser números inteiros, números de ponto flutuante, strings.
Eles são considerados a estrutura de dados mais simples possível.
Para aprofundar, as variáveis ​​​​são armazenadas usando endereços especificados na RAM.
O endereço é um número binário (111111111111110101111110111111111100001101100)
da célula de memória na RAM geralmente representada como número hexadecimal
(0x7fff5fbff86c) para facilitar a leitura.

Constantes são as variáveis ​​especiais cujo valor, após a atribuição,
não deve ser alterado pelo programa em execução.

Outras estruturas de dados?

Além das variáveis, existem outras estruturas de dados, como Arrays,
Matrizes associativas, listas vinculadas, filas, pilhas e muitos outros.
O objetivo dessas estruturas é armazenar dados de forma mais eficiente
então seria mais fácil trabalhar com os dados.

Funções nas linguagens de programação?

Uma das maneiras de simplificar a programação da lógica de negócios é usar
as chamadas funções. Como em matemática onde f(x) é uma função que produz
algum valor dependendo das propriedades dessa função na programação
funções podem retornar valores ou fazer alguma coisa. Funções podem aceitar entrada
argumentos como um número, uma string ou qualquer outra estrutura de dados e retorno
valores ou estruturas de dados ou podem funcionar sem nenhum argumento,
tudo depende da lógica de negócios da própria função.

Conclusões?

Na realidade, as linguagens de programação não são tão complexas quanto todo mundo pensa.
Se você está apenas começando a aprender programação - comece com interpretação simples
linguagem como Python. Depois de entender o básico - todos os outros idiomas
será tão fácil quanto ler a sintaxe.

Fonte: https://blog.wiregate.io/posts/programming-languages-explained

Declaração de lançamento Este artigo foi reproduzido em: https://dev.to/mikhail_shevtsov/programming-languages-explained-4mgc?1 Se houver alguma violação, entre em contato com [email protected] para excluí-la
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3