domingo, 24 de agosto de 2008

Lógica de programação: a primeira vista

Era dezembro de 2004, quando fui para a primeira aula de lógica de programação no ITECI. Um pouco atrasado chego ao local e, sem sequer me ser questionado o nome, sou colocado em uma sala por uma das atendentes do local. A aula já havia iniciado e tinham muitas pessoas na sala. O instrutor exibe um slide com a seguinte frase: "A caneta está na gaveta, para pegar a caneta preciso abrir a gaveta". Claro! É óbvio que para pegar uma caneta que está dentro da gaveta eu preciso antes abrir a gaveta.

Olhei para os lados me questionando: "Será que alguém daqui não sabe abrir uma gaveta e tirar a caneta?". Estaria eu em uma sala para pessoas, digamos assim, "especiais". Todos pareciam normais a minha volta (apesar de serem da área de TI).

Chega o intervalo, resolvo perguntar ao instrutor se eu estava, realmente, na sala de lógica de programação. Para minha surpresa... Estava! Começamos a ver outros procedimentos simples do cotidiano e eu ainda a me perguntar se valeria a pena um curso daquele. Era claro que eu sabia tirar caneta de gaveta, abrir geladeira, fazer uma ligação de orelhão para um amigo.

Chega a hora de fazermos fluxogramas...

"Faça uma ligação para um amigo pelo orelhão", era o que dizia o exercício para fazermos em um fluxograma. Isso eu sei... Pega cartão... Liga pra o amigo... se não atender, liga de novo... atendeu, falou, "tchau"! Entrego o fluxograma feliz da vida. Acabei antes de todo mundo... [ÊÊÊÊ!!!]

O instrutor pergunta: "Se eu não tiver cartão?". Volto... Nem sento na cadeira e coloco um outro bloquinho daqueles que representa uma condição... setinha pra lá... setinha pra cá... Pronto! Está aqui meu fluxograma "completão"! E ele pergunta: "E se o orelhão estiver quebrado?".

Para resumir a história, passei a noite inteira fazendo um fluxograma que não cabia em várias folhas juntas de papel paltado. E no final acabei percebendo que tirar uma caneta da gaveta não é um procedimento tão simples. Precisamos dizer para a máquina o que ela vai fazer em cada situação. Somos nós quem damos a inteligência que ela possui.

Eu possuia uma visão leiga de que para fazer um software era apenas questão de desenhar uma tela e dizer "Alakazam!" para que tudo estivesse resolvido. Vi que não é tão fácil como muitos imaginam. Já mais a frente no curso, depois de passar duas semanas virando noites e reunindo-se na casa dos colegas de grupo, apresento o projeto (feito em Java com Swing, todo na mão, tinha até DesktopPane no meio, que tirei nota máxima) para minha mãe e ela fala: "Tu passou duas semanas dormindo mal pra fazer essa coisa?". Mas quer saber? Valeu, muito, a pena.

Cenários a se pensar para construir? Existem muitos... Para quebrar... Mais ainda!

Para deixar claro... Não consegui fazer a ligação de orelhão sem que o intrutor quebrasse em algum lugar, que sorrindo me disse: "Está bom por este, vamos para um próximo exercício!".

6 comentários:

  1. heheheheh
    Essa história foi interessante! =D
    acontece nas melhores famílias!
    hehehhe

    abração!!!

    ResponderExcluir
  2. Edwin...
    A história foi engraçada, pra você ver que as coisas nem sempre são tão óbvias quanto parecem ser... mas adorei!! =D~
    Ah, também não preciso nem falar dos desenhos né?! ÓTIMOS!! haha..

    Beijãããooo!!

    ResponderExcluir
  3. Alunos de lógica de programação deveriam ler o seu post antes de mais nada... :)

    ResponderExcluir
  4. Edwin: um eterno saudosista. Abraço! =)

    ResponderExcluir
  5. hahahaha edwin foi "conquistado" pelas dificuldades.
    Adoreei o post, os desenhos, td!

    ResponderExcluir
  6. Isso aconteceu comigo.
    Na aula de estágio, era para fazer um passo a passo para fazer um café.
    Olha, podia ter escolhido ir tomar café na padaria, daria menos trabalho.rs
    Achei que tivesse acabado e a professora veio com um monte de perguntas...se... se...
    Coisa de louco!!!

    ResponderExcluir