Todo curso começa do básico, e uma introdução é necessária para aqueles que não entendem patavinas chegarem a algum lugar. Então, vamos nessa.

Introdução: Entendendo um Computador

Um computador nada mais é do que uma máquina que lê instruções e as executa em alguma ordem. Sua interface muda de modelo para modelo, mas a função e funcionamento são basicamente os mesmos. Além disso, um computador só faz aquilo que é mandado fazer. Por razões de segurança e previsibilidade, um computador não é dotado de inteligência própria e/ou imaginação, então ele não pode adivinhar o que você queria dizer com tal comando. Entretanto, ele também não vai de repente tomar consciência da sua existência patética e da superioridade de processamento dele em relação a você e tentar destruir a Terra. E todos somos muito gratos por isto. =)

Entendendo Programas

Um programa é um conjunto de dados e intruções que serão lidos e executados pelo computador em alguma ordem determinada. Imagine um programa como uma receita, exceto que ao invés de ingredientes e instruções, temos dados e... bem, instruções. O programa pode também capturar dados de alguma entrada e depois retornar alguma coisa para um saída. Entrada -> Processamento -> Saída Imagine uma calculadora – que é, também, um computador –: os números que você digita são a entrada; ao fim de cada operação, a calculadora faz o processamento; e depois mostra o resultado, ou saída, na tela. Este é o cerne básico da programação: dados entram, são processados e mais dados saem.

Escolhendo uma Linguagem

O processador, normalmente, entende tudo em termos de números. Para piorar ainda a situação, estes números não estão escritos no nosso querido e velho conhecido sistema decimal(com 9,15 ou 256), mas no mais obscuro, porém mais eficiente, sistema binário(como 1001, 1111 ou 1000000). Mas não há o que temer: graças a décadas de pesquisa e aperfeiçoamento, podemos escrever nossos programas não como números, mas como um texto mais ou menos inteligível para seres humanos. Ainda bem. =D

Entrementes, como o processo de compilação/interpretação se desenrola não nos interessa no momento. O que nos interessa é em qual linguagem de programação aprenderemos a escrever programas.

Cada um tem sua escada de aprendizado particular. Alguns começam com linguagens simples, outras com linguagens complicadas; de alto nível ou baixo nível; imperativas ou funcionais... cada linguagem tem sua função e seu motivo de ser. Para os fins deste curso, precisaremos de uma linguagem que provenha os princípios básicos de programação(variáveis, funções, controle de fluxo, declaração de tipos) e também um entendimento mais avançado de como o programa funciona. E, claro, um mínimo de abstração e nível para que o programa não se torne muito difícil de entender.

Na prática, a melhor linguagem de programação é aquela que atende às necessidades do problema. Linguagens muito boas para cálculos longos, por exemplo, costumam não ser nada boas para sistemas de cadastramento, e linguagens funcionais normalmente não funcionam para programas interativos. Cada caso é um caso.

Na aula que vem...

Analisaremos algumas – ou mesmo muitas – linguagens para escolher aquela que usaremos pelo curso afora...

Bem, sendo sincero, já sei qual vamos usar. Só vamos dar uma olhada no resto, certo? ;)