Prévia do material em texto
Prof. Me. Marcelo Santos UNIDADE I Estudos Disciplinares Linguagens de Programação Pense em algumas das diferentes maneiras como as pessoas usam os computadores. Na escola, os alunos usam os computadores para as tarefas como escrever artigos, pesquisar artigos, enviar e-mail e participar de aulas on-line. No trabalho, as pessoas usam os computadores para analisar dados, fazer apresentações, conduzir as transações comerciais, comunicar-se com os clientes e os colegas de trabalho, controlar as máquinas em instalações de manufatura e fazer muitas outras coisas. Em casa, as pessoas usam os computadores para as tarefas como pagar as contas, fazer as compras on-line, comunicar- se com os amigos e familiares, e jogar games de computador. E não se esqueça de que os smartphones, os sistemas de navegação automotivos e muitos outros dispositivos, também são computadores. Os usos de computadores são quase ilimitados em nossa vida cotidiana. Programação de Computadores Os computadores podem fazer grande variedade de coisas, porque podem ser programados. Isso significa que os computadores não são projetados para fazer, apenas, um trabalho, mas para fazer qualquer trabalho que os seus programas digam para eles executarem. Um programa é um conjunto de instruções que um computador segue para realizar uma tarefa. Por exemplo, o Microsoft Word é um programa de processamento de texto que permite criar, editar e imprimir documentos. Já o Adobe Photoshop é um programa de edição de imagens que permite trabalhar com imagens gráficas, como fotos tiradas com a sua câmera digital. Os programas são comumente chamados de software. O software é essencial para um computador, porque ele controla tudo o que o computador faz. Todos os softwares que usamos para tornar nossos computadores úteis são criados por indivíduos que trabalham como programadores ou desenvolvedores de softwares. Programação de Computadores Um programador, ou desenvolvedor de software, é uma pessoa com o treinamento e as habilidades necessárias para projetar, criar e testar os programas de computador. A programação de computadores é emocionante e uma carreira gratificante. Hoje, você encontrará o trabalho de programadores de sistemas sendo aplicados em negócios, medicina, governo, aplicação da lei, agricultura, processos acadêmicos, entretenimento e muitos outros campos. Programação de Computadores Fonte: https://www.coc.com.br/ api/images/res/700/350/ blog/447/202009091752 14828.jpg Um programa é um conjunto de instruções escritas em uma linguagem (como BASIC) compreensível pelo computador para executar uma função específica no computador. Um programa bem escrito pode ser dividido para formar um pacote de aplicativo personalizado para resolver um tipo específico de problema. Um programador de computador é um cientista da computação hábil no uso de construções de linguagens de programação para desenvolver os programas de computador executáveis e aceitáveis. Os programadores costumam trabalhar lado a lado com os analistas de sistema em grandes projetos. Programação de Computadores Programar é a arte de desenvolver programas de computador, com o auxílio de uma linguagem de programação. É uma habilidade especial cuja qualidade é testada pela qualidade do programa ou software resultante. Na programação, as etapas da programação devem ser seguidas corretamente, ou seja, da definição do problema à manutenção e à revisão. Programação de Computadores Fonte: https://lh3.googleusercontent.com/prox y/XkGfR- TeIAFiIU2N11MaZPEBDrxVgLl5Z- LqXU2iyBFnvWPgxF_jHyW8hSwAON EIR__035cLCniv9dOHHYrbKScPt3EQI kC6a7N_98M6RX1uCY8LQZxqReAfTx JJvkVW9Fi- 5Fdl36aXcUxYJ3BoDURQyxQM6W7o w4IwSXgtT4gBnT75_Lcl O BASIC é um acrônimo para o código de instrução simbólica para todos os fins para os estudantes. BASIC é o nome de uma linguagem de programação de alto nível, desenvolvida nos EUA com fins acadêmicos, nos anos de 1963-1964. A linguagem foi desenvolvida para ensinar aos alunos os conceitos básicos da teoria da programação e como uma das linguagens de programação mais fáceis de aprender. Como um código de programa de linguagem de programação de alto nível, escrito em BASIC, deve ser traduzido à sua equivalência em código de máquina antes de poder ser executado no computador. Um compilador BASIC (ou seja, software tradutor) é necessário para este propósito. Chamamos o código-fonte do programa antes dele ser traduzido pelo compilador (intérprete) de código-objeto. Programação de Computadores: natureza e características Vantagens da Linguagem de Programação BASIC: É uma linguagem de programação simples; É amigável, fácil de ensinar e aprender, em comparação com outras linguagens; É flexível, e fácil de codificar ou modificar o código existente; Simplificou a gramática (sintaxe) e um número relativamente menor de instruções; Possui uma linguagem polivalente adequada para os ambientes interativos; Seu compilador (intérprete) é pequeno e portátil; Programação de Computadores: natureza e características Vantagens da Linguagem de Programação BASIC: Pode ser programado em um terminal; É muito comum, e está disponível em muitos micro e minicomputadores. Desvantagens da Linguagem de Programação BASIC: Possui um ritmo de execução lento, pois a tradução é combinada com a execução; Muitas versões do BASIC não são estruturadas por causa de instruções como GOTO; Programação de Computadores: natureza e características Desvantagens da Linguagem de Programação BASIC: A portabilidade é limitada, pois diferentes versões requerem diferentes intérpretes para a tradução do código-fonte; Mais de 50 versões (“dialeto”) do BASIC existem, hoje, como resultado de variações nos sistemas de hardware; Espera-se que todas essas variações estejam em conformidade com o padrão universalmente aceito estabelecido pela ANSI (American National Standards Institute). Algumas dessas versões são: ANSI BASIC, VISUAL BASIC, GW BASIC, QUICK BASIC, TURBO BASIC, BASICA, MFBASIC, CASSETTE BASIC, APPLE BASIC etc.; O Java possui um interpretador e compilador que traduz o código-fonte, linha por linha e declaração por declaração. Não gera um código de objeto intermediário a partir do código- fonte, e traduz e executa o código-fonte de forma simultânea. Programação de Computadores: natureza e características Linguagens de programação são linguagens notacionais artificiais criadas ou desenvolvidas para serem usadas no processo de preparação de instruções codificadas no computador para uma posterior execução. Geralmente, são compostas por uma série de regras de uso (sintaxe) que determinam o significado (semântica) das expressões escritas no idioma. Cada linguagem de programação deve ser utilizada com o seu próprio tradutor, ou seja, a partir do intérprete ou compilador, conforme o caso. Programação de Computadores Fonte: https://miro.medium.com /max/2400/1*WarAc0Jg hane6KFJiqZUEg.png A linguagem é a fonte de comunicação entre os seres humanos. Cada país ou região possui a sua própria língua para a comunicação entre o seu povo, como o inglês, o francês etc. No mesmo sentido, as pessoas são obrigadas a se comunicar com as máquinas de computador, então, existe a necessidade de uma linguagem que possa ser entendida pelo computador. Tal linguagem é conhecida como linguagem de computador ou linguagem de programação. Muitas linguagens de programação são apresentadas para realizar diversos tipos de trabalhos na máquina do computador. Um conjunto de regras e símbolos são utilizados por uma linguagem de programação para operar um computador. Programação de Computadores Damos o comando ao computador e, depois, ele é convertido em sua própria linguagem (Linguagem de Máquina/Binária – 0 e 1). Essas línguas podem ser classificadas de váriasmaneiras. Um desenvolvedor sempre segue as regras de sintaxe para escrever o código correto para o programa ou aplicativo. A classificação das linguagens de computador sempre varia de acordo com as características. Podemos classificar as linguagens de acordo com os níveis de abstração. Programação de Computadores Linguagens de baixo nível (Low-level Languages): Linguagens de máquina; Linguagens de montagem. Linguagens de nível médio (Middle-level Language). Linguagens de alto nível (High-level Languages). Linguagens de nível muito alto (Very High- level Languages). Linguagens de nível superior (Higher level Languages). Programação de Computadores Um programa pode ser definido como sendo: a) Um conjunto de instruções escritas em uma linguagem compreensível pelo computador, para executar uma função específica no computador. b) Elementos desfragmentados de instruções escritas em uma linguagem compreensível pelo computador, para executar uma função específica no computador. c) Um conjunto de instruções escritas em uma linguagem compreensível pelo programador, para executar uma função específica no computador. d) Elementos desfragmentados de instruções escritas em uma linguagem compreensível pelo programador, para executar uma função específica no computador. e) Um conjunto de instruções duplicadas que executar uma função específica no computador, de forma sincronizada e sistematizada. Interatividade Um programa pode ser definido como sendo: a) Um conjunto de instruções escritas em uma linguagem compreensível pelo computador, para executar uma função específica no computador. b) Elementos desfragmentados de instruções escritas em uma linguagem compreensível pelo computador, para executar uma função específica no computador. c) Um conjunto de instruções escritas em uma linguagem compreensível pelo programador, para executar uma função específica no computador. d) Elementos desfragmentados de instruções escritas em uma linguagem compreensível pelo programador, para executar uma função específica no computador. e) Um conjunto de instruções duplicadas que executar uma função específica no computador, de forma sincronizada e sistematizada. Resposta Linguagens de baixo nível são códigos de máquina diretos ou muito próximos da máquina. Fornece um pouco ou nenhuma abstração da arquitetura de conjunto de instruções de um computador. A palavra “baixo”, aqui, se refere à quantidade pequena ou inexistente de abstração entre a linguagem e a linguagem de máquina. Tais tipos de linguagens estão muito próximos do hardware. Não há a necessidade do tradutor como compilador, intérprete para este tipo de linguagens. Todos os programas de baixo nível são executados muito rapidamente em máquinas de computador e é necessário pouquíssimo espaço na memória, em comparação com os programas de linguagem de alto nível. Programação de Computadores: linguagens de baixo nível Esses tipos de linguagens são simples, mas são difíceis de usar devido a tantos detalhes técnicos que devem ser memorizados pelos desenvolvedores. Um computador só pode entender e executar as instruções das linguagens que estão na forma de 0’s e 1’s (sistema numérico binário). Linguagens de baixo nível são orientadas à máquina e sempre exigem o amplo conhecimento da arquitetura do computador (hardware de computador e configuração do computador). Existem dois tipos de linguagens de baixo nível chamadas de linguagens de máquina e linguagens Assembly. Programação de Computadores: linguagens de baixo nível Esses são os níveis mais baixos e básicos de linguagens de programação. Foi o primeiro tipo de linguagem de computador desenvolvida. O computador pode entender, apenas, os sinais especiais, que são a corrente de alto nível e a corrente de baixo nível, em que 1’s e 0’s as representam, respectivamente. Esses dois dígitos são chamados de dígitos binários. O computador pode entender, apenas, os programas que são escritos em dígitos binários. Esses tipos de programas são chamados de programas de linguagem de máquina. Estas são as únicas linguagens, diretamente, compreendidas pelos computadores. Uma série de códigos são fornecidos ao computador; em seguida, ele identifica o código alimentado e os converte para o sistema elétrico de sinais para executá-lo conforme necessário. Programação de Computadores: linguagens de máquina A linguagem que utiliza dígitos binários é chamada de linguagem de nível de máquina. A linguagem de máquina possui os seus próprios prós e contras: 1. Linguagens de primeira geração: foi a primeira linguagem a ser programada pelos programadores. São as linguagens de computador de primeira geração; 2. Dependente da máquina: o design interno de cada máquina (arquitetura) é diferente de outra máquina, então, a codificação da máquina também é diferente. Diz que as instruções do programa que são projetados para um tipo de máquina não podem ser utilizados em outro tipo de máquina; Programação de Computadores: linguagens de máquina 3. Processamento rápido: todas as instruções da máquina são reconhecidas, diretamente, pela máquina; os programas em linguagem de máquina são muito rápidos de executar; 4. Propenso a erros: as instruções são escritas usando 0's e 1's, por isso, é uma tarefa muito complicada. Consequentemente, há mais chances de códigos sujeitos a erros nessas linguagens; 5. Difícil de usar: os dígitos binários (0 e 1) são usados para representar os dados completos ou para representar as instruções, por isso, é uma tarefa difícil memorizar todos os códigos de máquina para os seres humanos; Programação de Computadores: linguagens de máquina 6. Difícil de depurar: quando há um erro na lógica do programa, é difícil descobrir o erro (bug) e depurar o programa em linguagem de máquina; 7. Difícil de entender: é muito difícil entender os programas existentes; requer um grande conhecimento de código de máquina com a arquitetura do sistema. Para cada máquina, o código de máquina é diferente. Não podemos trabalhar facilmente no outro sistema de configuração sem ter o conhecimento de um código de máquina; 8. Código eficiente para a máquina: a codificação dos programas em linguagem de máquina é muito eficiente para a máquina; Programação de Computadores: linguagens de máquina 9. Não há a necessidade de tradutor: o código de máquina é compreendido diretamente pelas máquinas, portanto, não há a necessidade do tradutor (compilador); 10. O programador requer o conhecimento de arquitetura de computadores: para programar, o profissional precisa entender a arquitetura do computador; 11. É preciso lembrar muitos códigos de máquina: temos que lembrar muitos códigos de máquina para a programação nessas linguagens; 12. Necessidade de lembrar todos os endereços de memória: temos que lembrar todos os endereços de memória para a realização da programação; Programação de Computadores: linguagens de máquina 13. Linguagem de máquina diferente para os diferentes computadores: cada computador tem a sua própria língua (sintaxe e/ou estrutura); 14. Aplicações de linguagens de máquina: foram usadas pelos programadores quando não havia a linguagem de computador, mas, agora, muitas opções estão disponíveis para a realização da programação. A programação em linguagens de máquina precisa de muito tempo para aprender e documentar. Normalmente, as linguagens Assembly são usadas no lugar delas. Programação de Computadores: linguagens de máquina Fonte: http://3.bp.blogspot.com/- TKtWD7BMGMs/VrISVq4Zyz I/AAAAAAAAACA/jsWOIyM- Dbc/s1600/binary.jpg Este é o próximo nível de linguagens de programação após as linguagens de máquina. As linguagens de montagem utilizam símbolos alfanuméricos (como operandos e operações) em vez de dígitos binários. Esses mnemônicos podem ter, até, cinco combinações de letras no máximo, por exemplo,MOV, INC, SUB, ADD, MUL, START etc. Essas linguagens também são conhecidas como “Linguagens de Programação Simbólica” devido ao uso de símbolos para representar os códigos de operação e locais de armazenamento. Programação de Computadores: linguagens de montagem Os programas escritos em Assembly são chamados de códigos de montagem. A linguagem Assembly é mais fácil de entender pelos programadores, em comparação com a sua linguagem predecessora (linguagem de máquina). Os comandos da linguagem de máquina são substituídos por mnemônicos (código de operação). A codificação do programa de montagem é, geralmente, separada em diversos campos, que se dividem com espaços ou guias. Programação de Computadores: linguagens de montagem Nas aplicações de tempo real, a linguagem Assembly é utilizada para controlar o computador e as suas atividades com eficiência. Portanto, as linguagens sempre exigem um bom conhecimento da máquina (e de sua arquitetura). As linguagens Assembly são orientadas para a máquina, portanto, os desenvolvedores estão sempre exigindo reescrever os programas para implementar isso em máquinas diferentes. Programação de Computadores: linguagens de montagem Fonte: https://line.17qq.com/articles /lkhoghcov_p7.html FIGURE 17. Assembly language Os computadores só podem executar os programas escritos em linguagem de máquina. Um programa pode ter milhares ou, até, milhões de instruções binárias e escrever tal programa seria muito tedioso e demorado. A programação em linguagem de máquina também seria muito difícil, porque, colocar 0 ou 1 no lugar errado, causaria um erro. Embora a CPU de um computador só entenda a linguagem de máquina é impraticável escrever os programas em linguagem de máquina. Por este motivo, a linguagem Assembly foi criada como uma alternativa à linguagem de máquina. Em vez de usar números binários para as instruções, a linguagem Assembly utiliza palavras curtas conhecidas como mnemônicos. Programação de Computadores: da linguagem de máquina à linguagem Assembly Por exemplo, na linguagem Assembly, o mnemônico add, normalmente, significa “adicionar números”, mul, normalmente, significa “multiplicar números”, e mov, normalmente, significa “mover um valor para um local em memória”. Quando um programador usa a linguagem Assembly para escrever um programa ele pode escrever mnemônicos curtos, em vez de números binários. No entanto, programas em linguagem Assembly não podem ser executados pela CPU. A CPU, apenas, entende a linguagem de máquina, então, um programa especial conhecido como Assembler é usado para traduzir um programa em linguagem Assembly para um programa em linguagem de máquina. Programação de Computadores: da linguagem de máquina à linguagem Assembly O programa de linguagem de máquina criado pelo compilador (interpretador) pode, em seguida, ser executado pela CPU. Embora a linguagem Assembly torne desnecessária escrever as instruções em linguagem de máquina binária, apresenta algumas dificuldades para o desenvolvedor. A linguagem Assembly é, principalmente, uma substituta direta para a linguagem de máquina e, como a linguagem de máquina, requer que você saiba muito sobre a CPU. A linguagem Assembly também requer que você escreva um grande número de instruções para realizar, inclusive, as instruções simples. Programação de Computadores: da linguagem de máquina à linguagem Assembly Fonte: https://line.17qq.com/articles/lkhoghcov_p7.html Sobre as linguagens de baixo nível é correto afirmar que: a) São códigos fáceis de compreender. b) São utilizadas pela grande maioria dos programadores na atualidade. c) São códigos de máquina que não devem ser estudados e analisados. d) São similares às linguagens de alto nível. e) São códigos de máquina ou muito próximos da máquina. Interatividade Sobre as linguagens de baixo nível é correto afirmar que: a) São códigos fáceis de compreender. b) São utilizadas pela grande maioria dos programadores na atualidade. c) São códigos de máquina que não devem ser estudados e analisados. d) São similares às linguagens de alto nível. e) São códigos de máquina ou muito próximos da máquina. Resposta Como a linguagem Assembly é muito próxima da linguagem de máquina, ela é chamada de linguagem de baixo nível. Na década de 1950, uma nova geração de linguagens de programação, conhecidas como linguagens de alto nível, começaram a aparecer. Uma linguagem de alto nível permite que você crie programas poderosos e complexos sem saber, exatamente, como a CPU funciona e sem escrever um grande número de instruções em baixo nível. Linguagens de alto nível Além disso, a maioria dos idiomas de alto nível usa palavras fáceis de entender. Por exemplo, se um programador estava usando COBOL (que era uma das primeiras linguagens de alto nível criados na década de 1950), ele escreveria a seguinte instrução para exibir uma mensagem na tela do computador: DISPLAY “Hello world”. No Python, exibiríamos a mensagem “Hello world”, com a seguinte instrução: Print “Hello world”. Linguagens de alto nível Fazer a mesma coisa em linguagem Assembly exigiria várias instruções e um profundo conhecimento de como a CPU interage com o dispositivo de saída do computador. Como você pode ver, as linguagens de alto nível permitem que os programadores se concentrem nas tarefas que desejam realizar com os seus programas, em vez dos detalhes de como a CPU executará esses programas. Desde a década de 1950, milhares de linguagens de alto nível foram criadas. A seguir, temos uma comparação entre as linguagens: Linguagens de alto nível Ada: Ada foi criado na década de 1970, principalmente, para os aplicativos usados pelos EUA no Departamento de Defesa. O idioma é nomeado em homenagem à condessa Ada Lovelace, uma figura histórica e influente no campo da computação. BASIC: O código de instrução simbólica para todos os fins do BASIC, para iniciantes, é uma linguagem de uso geral que foi, originalmente, projetado no início dos anos 1960, para ser simples o suficiente para que os iniciantes aprendessem. Hoje, existem muitas versões diferentes do BASIC. Linguagens de alto nível FORTRAN: FORmula TRANslator foi a primeira linguagem de programação de alto nível. Foi projetada na década de 1950 para realizar os cálculos matemáticos complexos. COBOL: O COBOL (Common Business-Oriented Language) foi criado na década de 1950 e foi projetado para os aplicativos de negócios. Pascal: O Pascal foi criado em 1970 e foi, originalmente, projetado para ensinar programação. O idioma foi nomeado em homenagem ao matemático, físico e filósofo Blaise Pascal. Linguagens de alto nível C e C ++: As linguagens C e C ++ são linguagens poderosas de uso geral. A linguagem C foi criada em 1972 e a linguagem C ++ foi criada em 1983. C #: Esta linguagem foi criada pela Microsoft, por volta dos anos 2000, para o desenvolvimento de aplicações baseadas na plataforma Microsoft .NET. Java: A linguagem Java foi criada pela Sun Microsystems, no início dos anos 1990. Pode ser usado para desenvolver programas executados em um único computador ou na internet, a partir de um servidor da web. Linguagens de alto nível JavaScript: A linguagem JavaScript, criada na década de 1990, pode ser usada em páginas da web. Apesar do nome, o JavaScript não está relacionado ao Java. Python: A linguagem em Python é uma linguagem de propósito geral, criada no início da década de 1990. Tornou-se popular em aplicações acadêmicas e de negócios. Ruby: Ruby é uma linguagem de uso geral, criada na década de 1990. Ela está se tornando cada vez mais uma linguagem popular para os programas executados em servidores da web. Linguagens de alto nível Visual Basic: O Visual Basic (comumente conhecido como VB) é uma linguagem de programação daMicrosoft. Fornece um ambiente de desenvolvimento de software que permite aos programadores criar aplicativos baseados no Windows, rapidamente. O VB foi originalmente criado no início dos anos 1990. Linguagens de alto nível Fonte: https://desenvolvenetapp.files. wordpress.com/2015/06/visua l-basic-in-urdu11.png Visual Basic Cada linguagem de alto nível tem o seu próprio conjunto de palavras predefinidas que o programador deve utilizar para escrever um programa. As palavras que compõem uma linguagem de programação de alto nível são conhecidas como palavras-chave ou palavras reservadas. Cada palavra-chave tem um significado específico e não pode ser usada para nenhum outro propósito. Além de palavras-chave, as linguagens de programação têm operadores que executam várias operações em dados. Por exemplo, todas as linguagens de programação têm operadores matemáticos que realizam operações aritméticas. Na maioria das linguagens, por exemplo, o sinal de soma (+) é um operador que adiciona dois números. 12 + 75 Palavras-chave, operadores e sintaxe: uma visão geral Além de palavras-chave e operadores, cada idioma também tem a sua própria sintaxe, que é um conjunto de regras que devem ser estritamente seguidas ao escrever um programa. As regras de sintaxe ditam como as palavras-chave, os operadores e os vários caracteres de pontuação devem ser usados em um programa. Quando você está aprendendo uma linguagem de programação você deve aprender as regras de sintaxe para esta linguagem (em particular). As instruções individuais que você usa para escrever um programa em uma programação de alto nível são chamadas de declarações. Uma instrução de programação pode consistir em palavras-chave, operadores, pontuação e outros elementos de programação, permitidos e organizados de forma adequada (sequência) para realizar uma operação. Palavras-chave, operadores e sintaxe: uma visão geral As linguagens humanas também possuem regras de sintaxe: Embora as pessoas, geralmente, violem as regras de sintaxe de sua língua nativa quando falam ou escrevem, normalmente, as outras pessoas entendem o que elas significam; Infelizmente, os compiladores e os interpretadores não possuem essa capacidade. Mesmo que um único erro de sintaxe apareça em um programa, ele não poderá ser compilado ou executado; Quando um interpretador ou um compilador encontra um erro de sintaxe, ele interrompe a execução do programa. Palavras-chave, operadores e sintaxe: uma visão geral Como a CPU entende, apenas, as instruções em linguagem de máquina, os programas escritos em uma linguagem de alto nível devem ser traduzidos para a linguagem de máquina. Dependendo da linguagem em que um programa foi escrito, o programador usará um compilador ou um interpretador para fazer a tradução. Compiladores e intérpretes Fonte: https://www.europeanvalley.es/noticias/wp-content/uploads/2018/04/Compilador1.png Source code Compiler Machine code Um compilador é um programa que traduz um programa de linguagem de alto nível em uma linguagem de máquina. O programa em linguagem de máquina pode, então, ser executado a qualquer momento. Por exemplo, a linguagem de programação Python utiliza um interpretador, que é um programa que traduz e executa as instruções em um programa de linguagem de alto nível. Conforme o intérprete lê cada instrução individual no programa, ele a converte em instruções em linguagem de máquina e os executa imediatamente. Este processo se repete para todas as instruções no programa. Compiladores e intérpretes Qual dos itens a seguir é considerado como sendo uma linguagem muito próxima da linguagem de máquina (ou linguagem de baixo nível)? a) Pascal. b) C. c) Assembly. d) C ++. e) C #. Interatividade Qual dos itens a seguir é considerado como sendo uma linguagem muito próxima da linguagem de máquina (ou linguagem de baixo nível)? a) Pascal. b) C. c) Assembly. d) C ++. e) C #. Resposta As instruções que um programador escreve em uma linguagem de alto nível são chamadas de código-fonte ou, simplesmente, código. Normalmente, o programador digita o código de um programa em um editor de texto e, em seguida, salva o código em um arquivo no disco do computador. Após esse processo, o programador usa um compilador para traduzir o código em um programa de linguagem de máquina ou um interpretador, para traduzir e executar o código. Compiladores e intérpretes Fonte: https://blog.saga.art.br/wp- content/uploads/2020/08/SA GA-BLOG-programacao-de- jogos-1080x675.jpg Caso o código possuir um erro de sintaxe, no entanto, ele não poderá ser traduzido. Um erro de sintaxe é um erro como uma palavra-chave com erros ortográficos, um caractere de pontuação ausente ou o uso incorreto de um operador. Quando isso acontece, o compilador ou o interpretador exibem uma mensagem de erro indicando que o programa contém um erro de sintaxe. O programador deve corrigir o erro e tentar, mais uma vez, realizar a compilação (tradução do programa). Compiladores e intérpretes Fonte: https://unimex.edu.mx/ licenciatura-en- informatica- administrativa Linguagens de nível médio foram desenvolvidas para preencher a lacuna de alto nível e as linguagens de baixo nível. Algumas dessas linguagens se enquadram na categoria de orientação a objetos, por exemplo, C #, C ++ e Java. Essas linguagens são úteis no desenvolvimento de interfaces gráficas de usuário (GUIs) que funcionam em computadores pessoais. Os programadores de linguagem de nível médio precisam de mais habilidades técnicas, em comparação com os programadores de linguagem de alto nível. Essas linguagens oferecem um pequeno conjunto de instruções de controle e manipulação de dados que podem ser utilizada pelos desenvolvedores. Linguagens de nível médio Em uma programação de baixo nível, cada função é definida pelos desenvolvedores, uma vez que nada é predefinido e as bibliotecas deles estão disponíveis. Estas são as linguagens de programação do bloco de construção, porque todas as rotinas são criadas, em primeiro lugar, para o funcionamento específico. As linguagens C e C ++ permitem ao programador definir as rotinas para executar os comandos de alto nível. Essas rotinas são chamadas de funções. Podemos personalizar uma biblioteca de funções C e C ++ para realizar as tarefas que são realizadas por nosso programa. Linguagens de nível médio As principais linhas das linguagens de nível médio são porque: carregam recursos; acessam a memória, diretamente, usando ponteiros; utilizam os registros do sistema para o processamento rápido; fornecem o suporte aos recursos de linguagem de alto nível; possuem uma natureza amigável; estão mais perto das máquinas; além de possuir a necessidade de se esforçar para criar os programas (e as rotinas). Linguagens de nível médio Fonte: https://docs.microsoft.com/pt- br/windows/images/c-logo.png As linguagens de um nível muito alto são mais orientadas para o problema do que para o computador. Há muitas instruções de linguagem de baixo nível correspondentes a todas as instruções de linguagem de alto nível. Os compiladores e os interpretadores são usados para traduzir os programas-fonte de linguagem de alto nível para as instruções em linguagem de máquina. Escrever grandes peças de software, como os navegadores da web, processadores de texto, jogos de computador, reprodutores de áudio e vídeo, ou um sistema de biblioteca, não pode ser feito de forma eficaz, escrevendo todas as suas instruções com a ajuda de linguagens de programação de baixo nível. Esse tipo de software é escrito em linguagens de programação de um alto nível. Essas linguagens permitem as sequências complexas de instruções do processador a ser expresso brevemente. Linguagens de nível muito alto Linguagens de programação de um nível muitoalto têm formatos próximos ao idioma inglês. O objetivo principal de desenvolver essas linguagens é escrever programas facilmente. Essas são linguagens basicamente simbólicas. Aqui, palavras em inglês e/ou símbolos matemáticos são utilizados no lugar de códigos mnemônicos. Existem tantas linguagens de alto nível para os diferentes tipos de trabalhos. O FORTRAN é o idioma de alto nível mais antigo usado para expressar as notações algébricas. COBOL (COmmon Business-Oriented Language) é a linguagem para os aplicativos de negócios. C é uma linguagem de programação do sistema. Alguns idiomas possuem uma estrutura de GUI (interface gráfica do usuário) baseada no desenvolvimento de aplicativos. Linguagens de nível muito alto Alguns dos recursos das linguagens de alto nível que são fornecidos: Compreensão: os usuários podem compreender, facilmente, os programas escritos nessas linguagens; Depuração: podemos encontrar, facilmente, os erros (bugs) em programas escritos nessas linguagens; Portabilidade: é fácil executar o mesmo programa que está escrito em uma máquina e executado em uma máquina diferente; Fácil de usar: essas línguas são como o inglês e podemos escrever os programas facilmente; Linguagens de nível muito alto Facilidade de uso: por causa da codificação semelhante ao inglês, estamos dizendo que são fáceis de usar. Os usuários conhecem muito bem o idioma inglês; Pouco tempo para escrever os programas: nessas línguas, a escrita de programas requer menos tempo; Fácil manutenção: podemos, facilmente, manter os programas escritos nessas línguas; Independência da máquina: os programas desenvolvidos em uma máquina podem ser executados, facilmente, em outra máquina com uma configuração distinta; Necessidade de um tradutor: há sempre a necessidade de traduzir o programa de linguagem de alto nível para programar na linguagem de máquina. Linguagens de nível muito alto Muitas linguagens foram desenvolvidas para a realização de diversos trabalhos; algumas são bastante especializadas e outras são de propósito geral: a) Linguagens de programação científica: estas linguagens são orientadas para os procedimentos computacionais para resolver os problemas matemáticos e estatísticos. Podemos citar as seguintes linguagens: FORTRAN, C, MATLAB, FIDIL etc.; b) Linguagens de processamento de dados de negócios: essas linguagens enfatizam os dados basicamente grandes e o processamento de aplicativos para as empresas, por ex.: COBOL (Linguagens Comuns para os Negócios), RPG (gerador de programa de relatório) etc.; Taxonomia de linguagens de alto nível c) Inteligência Artificial: as manipulações a partir dos padrões de busca e inserção, bem como a exclusão de caracteres, por exemplo: IPL (Information Processing Language), LISP (List Processing), Prolog (Program in Logic) etc.; d) Linguagem de programação orientada a objetos: é uma estrutura para desenvolver as aplicações de acordo com os conceitos do mundo real. A orientação a objetos fornece uma nova visão da computação. Um sistema de software é uma coleção de objetos como o mundo; cada objeto coopera com os outros objetos através da passagem de mensagens para resolver os problemas do mundo real. Algumas das linguagens de programação que se enquadram nesta categoria são: SIMULA, SMALLTALK, EIFFEL, C ++, Java etc. Linguagens de nível muito alto Qual das linguagens listada a seguir pode ser considerada como sendo uma linguagem de processamento de dados de negócios? a) COBOL. b) FORTRAN. c) C. d) MATLAB. e) FIDIL. Interatividade Qual das linguagens listada a seguir pode ser considerada como sendo uma linguagem de processamento de dados de negócios? a) COBOL. b) FORTRAN. c) C. d) MATLAB. e) FIDIL. Resposta KAHANWAL, B. ABSTRACTION LEVEL TAXONOMY OF PROGRAMMING LANGUAGE FRAMEWORKS. International Journal of Programming Languages and Applications (IJPLA), v. 3, n. 4, oct. 2013. Disponível em: https://arxiv.org/ftp/arxiv/papers/1311/1311.3293.pdf. Acesso em: 04 mai. 2021. LATEEF, U.; OWOADE, A.; ABIMBOLA, B. L.; OGUNSANWO, G. INTRODUCTION TO COMPUTER PROGRAMMING (BASIC). 2016. Disponível em: https://www.researchgate.net/publication/317182495_INTRODUCTION_TO_COMPUTER_P ROGRAMMING_BASIC. Acesso em: 04 mai. 2021. Referências ATÉ A PRÓXIMA!