O que é um programa de computador?

Um programa de computador é formado por um conjunto de instruções que irão fazer o computador executar algo. As instruções básicas de computador são compostas por uma sequência de “sim” e “não” ou “ligado” e “desligado” (on/off) que o computador segue enquanto roda um programa.

Essa sequência de “ligado” e “desligado” é chamado de sistema binário, que é um sistema de numeração formado por apenas dois algarismos (0 off / 1 on). Ou seja, esse sistema admite apenas duas possibilidades, sempre opostas, como: tudo/nada, ligado/desligado, presença/ausência, esquerdo/direito, alto/baixo, verdadeiro/falso, aceso/apagado.

Os “ligado/sim” são codificados (ou seja, escritos em programação) como 1 e os “desligado/não” como 0. Números e letras também são representados todos dessa maneira: 0000 = 0, 0001 = 1, 0010 = 2, 0011 = 3, etc.

 

binarios

A vida não deve ter sido fácil para os programadores de antigamente…

 

No início da programação os códigos pareciam algo como “10100101010101000101010101010101”, até que alguém percebeu que, como o objetivo da programação é tornar a vida mais fácil, seria mais lógico se criassem um programa que receberia um tipo de código que fosse fácil de criar e esse programa, então, traduziria para código de máquina (em 0 e 1, portanto, binário).

 

Assim a linguagem a Assembly foi criada, de forma que o código de computador passou a ficar parecido com “add $5, $7, $8”, o que apesar de não ser totalmente legível ainda assim era melhor que “010101”. O programa que traduzia a linguagem Assembly para linguagem de máquina era chamado de Assembler.

assembly

Programa em Assembly: diversão garantida!

 Então alguém teve a ideia de criar um programa que traduziria palavras em inglês para a linguagem Assembly, para que pudessem escrever em inglês.

Assim as linguagens de alto nível foram criadas. Agora os programadores podiam codificar coisas como “x = 5 + 8” ou String nome = “Ivens Rocha”, o que tornou o código muito mais fácil de ler.

assembly 2

FORTRAN, a primeira linguagem de alto nível. (E hoje poderia ser considerada de baixo nível, devido a grande evolução das linguagens de programação modernas)

Este novo jeito de programar fazia com que o compilador traduzisse o código contendo palavras em inglês para linguagem Assembly, para que ela então traduzisse para linguagem de máquina e em seguida o computador entendesse e executasse aquela série de “sim” e “não” (1 e 0).

Esta nova forma de codificar tornou possível criar códigos mais complexos, mais organizados e mais fáceis de ler, manter e continuar.

Programar, em última instância, significa criar instruções. Dependendo da velocidade do computador, ele consegue executar milhões de instruções por segundo. Por exemplo, um jogo 3D complexo como Call of Duty possui milhões de linhas de código que são executadas por segundo. O trabalho de um programador é ser capaz de não focar apenas em como o produto final aparenta ser, mas em como cada pequena parte roda individualmente e então ser capaz de escrever todas as linhas de código que façam com que o programa como um todo funcione.

Quando você aprender a como programar, você aprenderá a quebrar o objetivo em pequenas partes e trabalhar somente em uma parte por vez. Isso serve para que você foque apenas no que precisa ser feito agora, deixando o futuro para o futuro.

 

A Curiosity, lançada pela NASA e que vaga por Marte desde 2012 usa 2.500.000 linhas de código, na linguagem C.

Por exemplo, quando você estiver programando um jogo, se você estiver focado em desenvolver o comportamento dos tiros de uma arma, você deixará o resto para depois. Quando você quiser programar a forma como um jogador irá se movimentar no mapa, você irá programar apenas isso, deixando todo o resto para depois. Depois disso tudo, você dará um passo pra trás e juntará todos os pedaços. Apesar de parecer difícil, esse é um dos aspectos mais básico que você aprenderá nesse curso e ficará extremamente acostumado com isso. Isso é conhecido como abstração.

One thought on “O que é um programa de computador?

Leave a Reply

Your email address will not be published. Required fields are marked *


*