Primeiros
Passos com Programação
Introdução à Programação com JavaScript
(ou Python)
1.
Por Que Começar com Linguagens de Fácil Leitura?
A
jornada de quem começa a programar pode ser desafiadora, especialmente se o
primeiro contato ocorrer por meio de linguagens complexas, com sintaxe rigorosa
e termos técnicos difíceis. Por isso, é altamente recomendável que iniciantes
comecem aprendendo com linguagens de programação de fácil leitura, como Python
ou JavaScript.
Essas
linguagens são consideradas mais acessíveis por diversos motivos:
Segundo
Downey (2016), "Python é uma linguagem ideal para ensinar os fundamentos
da ciência da computação por causa de sua clareza e simplicidade". Já
JavaScript, conforme Flanagan (2020), "domina o desenvolvimento web e é
fundamental para aplicações interativas e dinâmicas".
Comparativo
entre Python e JavaScript:
Ambas oferecem um ambiente amigável e estão entre as linguagens mais ensinadas em cursos introdutórios ao redor do mundo.
2.
Primeiro Programa: “Olá, Mundo!”
O
primeiro passo prático para aprender qualquer linguagem é escrever o
tradicional programa “Olá, Mundo!”. Esse exemplo simples serve para
verificar se o ambiente está funcionando corretamente e mostrar como exibir
informações na tela.
Exemplo
em Python:
print("Olá,
Mundo!")
Exemplo
em JavaScript:
console.log("Olá,
Mundo!");
Esses
exemplos revelam a clareza das linguagens: poucos comandos, sintaxe direta e
fácil compreensão. O comando print() em Python e console.log() em JavaScript
são usados para exibir mensagens no terminal ou console.
O “Olá, Mundo!” pode parecer trivial, mas representa um marco: o primeiro
contato real com a linguagem e o primeiro passo rumo ao desenvolvimento de sistemas mais complexos.
3.
Ferramentas Gratuitas para Programar
Ao
começar a programar, é importante escolher ferramentas acessíveis e que não
exijam instalações complexas. Abaixo estão algumas das principais plataformas e
editores gratuitos recomendados para iniciantes.
3.1
Replit (https://replit.com)
O
Replit é um ambiente de desenvolvimento online, gratuito, que permite
programar diretamente no navegador, sem instalar nada. Suporta dezenas de
linguagens, incluindo Python e JavaScript.
Vantagens:
Para
iniciantes, o Replit elimina barreiras técnicas e oferece
resultados imediatos na tela, o que estimula a continuidade dos estudos.
3.2
VSCode (Visual Studio Code)
O Visual Studio Code é um dos editores de código mais utilizados no mundo, gratuito, de código aberto e desenvolvido pela Microsoft.
Principais
características:
Para
Python, recomenda-se instalar a extensão oficial “Python”; para JavaScript, a
funcionalidade já vem nativa.
3.3
IDLE (para Python)
O
IDLE (Integrated Development and Learning Environment) é o ambiente
padrão que acompanha a instalação do Python. Ele é leve, fácil de usar e
projetado especialmente para iniciantes.
Recursos:
Por ser oficial e básico, o IDLE é ideal para dar os primeiros passos na linguagem Python, especialmente em computadores com poucos recursos.
Considerações
Finais
Aprender
programação é como aprender um novo idioma: é preciso compreender a lógica,
praticar e se familiarizar com a estrutura da linguagem. Começar com linguagens
acessíveis como Python e JavaScript torna essa jornada menos intimidante e
mais eficiente.
O
primeiro programa, por mais simples que seja, representa uma quebra de barreira
psicológica. Ele mostra que é possível controlar uma máquina por meio da
lógica, da linguagem e da criatividade.
Com o apoio de ferramentas gratuitas, qualquer pessoa com acesso à internet pode iniciar seus estudos em programação, seja para desenvolvimento pessoal, profissional ou acadêmico. O importante
é dar o primeiro passo, persistir e praticar constantemente.
Referências
Bibliográficas
Estruturas
Condicionais e de Repetição
1.
Introdução
Em
programação, é comum que um algoritmo precise tomar decisões ou executar
comandos repetidamente. Para isso, utilizamos estruturas de controle de
fluxo, divididas em condicionais (tomada de decisão) e laços de
repetição (execução contínua).
Essas estruturas tornam o programa dinâmico, flexível e adaptável a diferentes entradas e situações, permitindo que ele reaja de maneira lógica a diferentes cenários.
2.
Estruturas Condicionais
As
estruturas condicionais são utilizadas para executar diferentes
blocos de código conforme uma ou mais condições. As principais formas são:
if, else, elif (em Python) ou else if (em JavaScript), e switch (estrutura
alternativa em algumas linguagens).
2.1
if, else, elif / else if
A estrutura condicional mais básica é o if (se). Ela permite que o programa verifique uma condição e execute um bloco de código se essa condição for verdadeira.
Exemplo
em Python:
idade
= 20
if
idade >= 18:
print("Maior de idade")
else:
print("Menor de idade")
Exemplo
em JavaScript:
let
idade = 20;
if
(idade >= 18) {
console.log("Maior de idade");
}
else {
console.log("Menor de idade");
}
Se
houver mais de duas opções, usa-se elif (Python) ou else if (JavaScript):
nota
= 7
if
nota >= 9:
print("Excelente")
elif
nota >= 6:
print("Aprovado")
else:
print("Reprovado")
2.2
switch
O
switch é uma estrutura condicional comum em linguagens como JavaScript, que
permite comparar uma variável contra múltiplos valores possíveis.
Exemplo
em JavaScript:
let
dia = 3;
switch
(dia) {
case 1:
console.log("Domingo");
break;
case 2:
console.log("Segunda-feira");
break;
case 3:
console.log("Terça-feira");
break;
default:
console.log("Dia
inválido");
}
O switch pode melhorar a legibilidade quando há muitas comparações simples.
3.
Estruturas de Repetição
As
estruturas de repetição, também chamadas de laços, servem para executar
um mesmo bloco de código várias vezes, seja por um número fixo de
repetições, seja enquanto uma condição for verdadeira.
3.1
for
O
laço for é usado quando se sabe quantas vezes a repetição deve ocorrer.
Ele é ideal para percorrer listas, arrays ou faixas de números.
Exemplo
em Python:
for
i in range(1, 6):
print("Contagem:", i)
Exemplo
em JavaScript:
for
(let i = 1; i <= 5; i++) {
console.log("Contagem:", i);
}
Ambos
os exemplos imprimem os números de 1 a 5.
3.2
while
O
laço while executa um bloco enquanto uma condição for verdadeira. É útil
quando não se sabe ao certo o número de repetições.
Exemplo
em Python:
contador
= 1
while
contador <= 5:
print("Número:", contador)
contador += 1
Exemplo
em JavaScript:
let
contador = 1;
while
(contador <= 5) {
console.log("Número:", contador);
contador++;
}
3.3
Cuidados com Laços Infinito
É
importante garantir que a condição de parada seja alcançada. Caso
contrário, o programa pode entrar em um laço infinito, consumindo
recursos da máquina e travando o sistema.
#
Atenção: este código entra em laço infinito!
while
True:
print("Isso nunca para...")
4.
Exemplos Práticos Combinados
Exemplo
1: Verificar se números são pares ou ímpares
for
i in range(1, 6):
if i % 2 == 0:
print(i, "é par")
else:
print(i, "é ímpar")
Exemplo
2: Menu de opções com while
opcao
= ""
while
opcao != "sair":
print("Digite uma opção (ver, editar,
sair):")
opcao = input()
if opcao == "ver":
print("Visualizando
dados...")
elif opcao == "editar":
print("Editando dados...")
elif opcao != "sair":
print("Opção inválida.")
Esse tipo de estrutura é comum em interfaces de linha de comando.
5.
Considerações Finais
As
estruturas condicionais e de repetição são ferramentas indispensáveis
para todo programador. Elas permitem que o código “pense” e “aja” de maneira
inteligente, reagindo a diferentes situações e executando tarefas de forma
automatizada.
Combinadas, essas estruturas aumentam o poder da linguagem de programação e permitem a criação de sistemas robustos e flexíveis. Dominar if, else, elif, switch, for e while é essencial para a construção de algoritmos eficientes e o desenvolvimento de aplicações reais.
Referências
Bibliográficas
Funções e Organização de Código
1.
O que são Funções e Por que Usar?
Em
programação, funções (também chamadas de “procedimentos” ou “métodos” em
algumas linguagens) são blocos de código reutilizáveis que executam uma
tarefa específica. Elas permitem agrupar instruções relacionadas sob um nome
descritivo, podendo ser chamadas sempre que necessário, quantas vezes forem
necessárias.
Exemplo
em Python:
def
saudacao():
print("Olá! Seja bem-vindo ao
curso.")
Ao
escrever saudacao(), o programa executa o bloco associado à função. Essa
prática melhora a organização do código, evita repetição desnecessária e torna
o programa mais legível e fácil de manter.
Conforme
Manzano e Oliveira (2017), "uma função é um trecho de algoritmo que pode
ser reutilizado diversas vezes, facilitando a legibilidade, modularização e
manutenção do código".
Por
que utilizar funções?
2.
Parâmetros e Retorno
Uma
função pode receber dados de entrada, chamados de parâmetros (ou
argumentos), e retornar um valor como resultado de sua execução.
2.1
Parâmetros
Os
parâmetros são informações que você fornece para personalizar a execução da
função.
Exemplo
em Python:
def
saudacao(nome):
print(f"Olá, {nome}!")
Aqui,
nome é um parâmetro. A função só será completa quando esse valor for fornecido.
2.2
Retorno
O
retorno (ou “valor de saída”) de uma função é enviado de volta ao ponto
onde a função foi chamada, usando a palavra-chave return.
Exemplo
em Python:
def
soma(a, b):
return a + b
resultado
= soma(3, 5)
print("Resultado:",
resultado)
A função soma recebe dois parâmetros (a e b) e retorna o
soma recebe dois parâmetros (a e b) e retorna o valor de sua soma. Esse
valor é armazenado na variável resultado e pode ser usado posteriormente.
Em
JavaScript, o mesmo conceito se aplica:
function
saudacao(nome) {
return "Olá, " + nome +
"!";
}
let
mensagem = saudacao("Lucas");
console.log(mensagem);
Ao utilizar parâmetros e retorno, as funções se tornam mais versáteis e reutilizáveis, já que podem se adaptar conforme os valores fornecidos.
3.
Modularização e Boas Práticas Iniciais
3.1
Modularização
A
modularização consiste em dividir um programa em módulos menores e
independentes, geralmente representados por funções, com o objetivo de facilitar
a compreensão, manutenção e reaproveitamento do código.
Ao
invés de escrever um único bloco longo de instruções, um bom programador divide
o código em tarefas menores, cada uma com uma função específica.
Exemplo:
Essa
divisão facilita a leitura, testes e alterações no código.
3.2
Boas práticas na criação de funções
Algumas
recomendações importantes para escrever boas funções desde o início:
Exemplo:
calcula_salario_liquido(), verifica_aprovacao()
Segundo McConnell (2004), "bons programas são compostos por pequenas peças confiáveis, bem testadas e com funções bem delimitadas".
4.
Exemplo Prático Completo
A
seguir, um exemplo prático de código organizado com funções:
def
ler_notas():
nota1 = float(input("Digite a primeira
nota: "))
nota2 = float(input("Digite a segunda
nota: "))
return nota1, nota2
def
calcular_media(n1, n2):
return (n1 + n2) / 2
def
verificar_situacao(media):
if media >= 6:
return "Aprovado"
else:
return "Reprovado"
#
Programa principal
n1,
n2 = ler_notas()
media
= calcular_media(n1, n2)
situacao
= verificar_situacao(media)
print(f"Média:
{media:.2f} - Situação: {situacao}")
Esse exemplo mostra como quebrar o programa em partes lógicas, com cada função cuidando de uma etapa. Isso facilita futuros ajustes, como mudar o critério de aprovação, sem afetar o restante do programa.
5.
Considerações Finais
As
funções representam um dos principais pilares da programação moderna.
Elas ajudam o desenvolvedor a organizar melhor seu código, dividir
tarefas, aplicar a lógica de maneira mais clara e criar programas mais robustos
e reutilizáveis.
O
uso correto de parâmetros, valores de retorno, e a aplicação da modularização
refletem a maturidade e eficiência do programador. Para quem está começando,
dominar esses conceitos é essencial antes de avançar para estruturas mais
complexas, como classes, objetos e frameworks.
Com a prática constante e aplicação das boas práticas descritas, o aluno desenvolverá códigos mais limpos, organizados e profissionais.
Referências
Bibliográficas
Acesse materiais, apostilas e vídeos em mais de 3000 cursos, tudo isso gratuitamente!
Matricule-se AgoraAcesse materiais, apostilas e vídeos em mais de 3000 cursos, tudo isso gratuitamente!
Matricule-se Agora