Da programação ao IDE NetBeans
O objetivo deste artigo é mostrar a diversidade de aplicações e a praticidade que uma IDE pode oferecer ao usuário. A programação pode ser desenvolvida em qualquer ambiente de trabalho, desde uma simples lauda de papel, um bloco de notas ou mesmo, um software de última geração. Na verdade, o que está em jogo, é sua capacidade lógica criativa.
Parte 2: Linguagens
A linguagem de máquina
A linguagem de máquina trabalha com binários. Pode-se dizer que é a linguagem natural do seu computador.Sua definição se dá pelo projeto de hardware e consistem, geralmente, em strings e números 1s e 0s que instruem seu computador a realizar suas operações mais elementares, uma de cada vez.
Por dependerem do hardwares específicos, torna-se difícil sua portabilidade. Isto quer dizer que, uma linguagem particular de máquina, pode ser utilizada apenas em um tipo de computador. Por ser muito complexa aos seres humanos, apresentava propensão a erros, além de ser lenta sua utilização e processamento.
"Um programa em código de máquina consiste de uma sequência de números que significam uma sequência de instruções a serem executadas. É normal a representação da linguagem de máquina por meio de números (opcodes) constantes e variáveis em sistema binário ou sistema hexadecimal. Alguns computadores também têm seu opcodes representados no sistema octal".Fonte: Código de máquina « Wikipedia.org
Tal complexidade pode ser demonstrada na construção do programa: "Olá, Mundo!".
Esta simples mensagem em linguagem de máquina, ficaria mais ou menos assim:
7F 45 4C 46 01 01 01 00 00 00 00 00 00 00 00 00 02 00 03 00 01 00 00 00 D0 82 04 08 34 00 00 00 BC 0C 00 00 00 00 00 00 34 00 20 00 07 00 28 00 24 00 21 00 06 00 00 00 34 00 00 00 34 80 04 08 34 80 04 08 E0 00 00 00 E0 00 00 00 05 00 00 00 4Viu-se que era necessário criar novos mecanismos para facilitar o uso desta ferramenta e de impor mais agilidade na construção de programas, surge assim, a linguagem Assembly.
A linguagem Assembly
Esta linguagem é uma evolução à linguagem de máquina, na verdade, foi criada para facilitar o manuseio da linguagem binária. Assim, em vez de strings de números, os programadores começaram a utilizar abreviações em inglês para operações elementares.Os tradutores assemblers foram desenvolvidos para converter os primeiros programas em linguagem de máquina em velocidade de computador.
Assim, Assembly, também conhecida como linguagem de montagem, é uma notação legível por humanos para o código de máquina que é uma arquitetura de computador específica a qual utiliza-se para programar dispositivos computacionais, como microprocessadores e microcontroladores.
A linguagem de máquina, que é um mero padrão de bits, torna-se legível pela substituição dos valores brutos por símbolos. Exemplo de programa em Assembly que soma os ganhos em horas extras ao salário-base e armazena o resultado no salário bruto:
load basepay
add overpay
store grosspay
add overpay
store grosspay
A linguagem de alto nível
Embora tenha dado um grande avanço na programação, a linguagem Assembly ainda apresentava deficiência em instruções simples. Destarte, para acelerar o processo de programação, desenvolveu-se a linguagem de alto nível, em que únicas instruções poderiam ser escritas para realizar tarefas substanciais.A linguagem de alto nível permite que programadores escrevam instruções que se parecem com o inglês, ou outra linguagem natural, ou mesmo notações matemáticas comumente utilizada.
O mesmo programa descrito em Assembly em linguagem de alto nível:
grosspay = basepay + overtimepay;
Percebe-se aqui, que a linguagem de alto nível está muito mais próxima do programador do que do dispositivo, ou seja, é uma linguagem muito mais intuitiva.
Todavia, a conversão para linguagem de máquina se faz por compiladores. Como exemplo de linguagem de alto nível, há o C/C++, Python, .NET, Java, etc.