Em sua jornada como desenvolvedor ou desenvolvedora, o primeiro passo antes de você aprender qualquer linguagem de programação é aprender a lógica de programação. Essa parte é de fundamental importância para você ter um melhor pensamento nas partes do todo. Como a área de tecnologia é uma área de resolução de problemas, a lógica nos ajudará a resolver um problema de forma simples. 

Muitas pessoas querem já ir direto para a linguagem de programação, como Python, JavaScript, por exemplo, antes de ter um conhecimento básico em lógica de programação. Porém, isso é um caminho errado tomado pelas pessoas desenvolvedoras, pois você estará pulando etapas do ciclo de aprendizado.

Se você deseja aprender a programar, é fundamental saber como funciona a lógica de programação para a elaboração de algoritmos, fundamentais no desenvolvimento de soluções. Inclusive, é recomendado até para pessoas de qualquer área, seja ela gastronomia ou jornalismo, pois ela auxiliará na formação do pensamento crítico da pessoa. 

Neste conteúdo falaremos sobre:

Aproveite, tire suas dúvidas e boa leitura!

O que é lógica de programação?

A lógica de programação diz respeito à forma como a pessoa que trabalha com programação escreve uma solução ou um algoritmo utilizando as linguagens existentes no mercado. Ou seja, é como a pessoa desenvolvedora resolve o problema com uma sequência lógica de passos para isso. 

Se formos fazer uma comparação com o nosso cotidiano, quase todas as tarefas seguem um passo a passo para serem realizadas, embora não notemos. Vamos imaginar um exemplo de que, em um determinado dia, vamos fazer um bolo de cenoura. Em resumo, seria bater os ingredientes, colocar em uma forma e levar no forno, para aguardar o bolo ficar pronto. Correto? Sim! Mas, vamos expandir mais esse processo:

  1. Separar todos os ingredientes necessários;
  2. Separar todos os utensílios necessários;
  3. Bater os ingredientes no liquidificador;
  4. Untar a forma para que não grude a massa;
  5. Despejar a massa batida na forma;
  6. Abrir o forno;
  7. Colocar a forma com a massa nele;
  8. Aguardar o bolo ficar pronto;
  9. Retirar o bolo do forno;
  10. Cortar um pedaço dele ou desenformá-lo;
  11. Degustar o pedaço do bolo.

Você deve estar se perguntando: a lógica de programação é como se fosse uma receita de bolo que devemos seguir? Exatamente isso! Obviamente, os passos para fazer um bolo com certeza não serão iguais aos de fazer faxina, por exemplo, pois cada situação terá o seu passo a passo específico, mas, seguindo esse caminho lógico, podemos fazer muitas coisas. 

Ao destrinchar o processo acima, note que mais opções foram adicionadas e, que pouquíssimas pessoas pensariam em ter um processo tão detalhado como feito acima. Vamos supor que o bolo seria um jogo que estamos desenvolvendo e precisamos dizer quais são os passos para esse jogo chegar ao resultado, sendo essa a conclusão dele.  

As regras definidas pela lógica de programação permitem que, através de um código escrito, uma máquina consiga converter essas instruções em informação. Uma vez convertida, essa informação poderá ser compreendida por pessoas ou outros dispositivos, por meio das regras estabelecidas por quem desenhou a ideia.

Qual a importância da lógica de programação?

A lógica de programação nos ajuda a entender como montar um algoritmo a partir de ferramentas básicas. Antes de iniciar a codificação do programa, devemos entender como ele funcionará.

Abaixo, temos as principais razões pelas quais devemos entender a lógica de programação.

  • Organização: ao começar a pensar logicamente, conduzimos uma maior organização em alguns processos. Isso é, aumentamos a ordem em favor de haver maior produtividade e realizarmos as tarefas no âmbito pessoal ou profissional. Com a lógica de programação, conseguimos ver um novo horizonte de ideias onde os processos exteriores e, principalmente, interiores da nossa mente serão positivamente impactados.
  • Raciocínio lógico: o raciocínio lógico é um dos maiores aliados para a pessoa programadora. Um computador não consegue entender ideias não-lógicas, da mesma forma que são ineptos de raciocinar ideias sem ordem. Ou seja, a lógica de programação aumenta a percepção das ideias dos desenvolvedores ou desenvolvedoras para poder pensar da mesma forma que um computador, melhorando assim o desempenho do seu código.
  • Resolução de problemas: para uma pessoa desenvolvedora, deve-se resolver problemas e não apenas criar programas. Sobre isso, é possível dizer inclusive que a programação pode ser entendida como um processo de dividir um grande problemas em várias partes para que assim possamos resolvê-las gradativamente, a partir de pequenos trechos de código.
  • Concentração: quando mudamos a maneira de pensar, os processos externos que executamos acabam por ser alterados também, e a concentração é um caso disso. Se você procrastina muito ou sente que não consegue prestar muita atenção na hora de trabalhar ou estudar, entender como funciona a lógica de programação ajudará nisso.
  • Entender a tecnologia: já comentamos que o computador não consegue entender as nossas ordens subjetivas, assim sendo necessário que sejam estritamente ordenadas da maneira que ele entende, certo? Dessa forma entendemos que, ao estudar lógica de programação, estamos estudando da mesma forma a maneira como a tecnologia funciona em um âmbito geral.

Portanto, aprender lógica de programação é uma estrada que ajudará você a compreender a tecnologia como um todo.

Lógica de programação e algoritmos: qual a relação?

Lógica de programação e algoritmos são dois conceitos ligados entre si. Por isso é importante que, ao conhecer o primeiro, você entenda o que é o segundo.

De uma forma simples, os algoritmos dizem respeito a um conjunto de instruções bem definidas, finitas e que, ao serem executadas, precisam gerar um resultado. Por exemplo, uma receita de bolo de cenoura, com o passo a passo em lista, que organiza o processo desde o uso do primeiro ingrediente, até obter o resultado — o seu prato pronto.

Esse exemplo ajuda a compreender a receita padrão (uma de bolo básico) e podem ocorrer variações conforme as necessidades (novo recheio, novo sabor, uma cobertura diferenciada, etc.). A mesma situação ocorre com os algoritmos, logo, eles podem mudar conforme o que você precisa.

Agora que entendemos como funciona um algoritmo, precisamos conhecer sua base, ou seja, de que forma ele é constituído. Para que o algoritmo consiga executar suas funções é necessário ter uma linguagem de programação de fundo, de modo que o dispositivo entenda o que deve ser executado.

Afinal, as máquinas não têm uma interpretação subjetiva, sendo necessário determinar as diretrizes para ela realizar o seu processo. Retornando ao exemplo, a pessoa que compõe o algoritmo é quem escreve a receita para que a outra pessoa (no caso, a máquina) possa realizá-la tal como foi mandada (executando o algoritmo).

A lógica de programação, nesse caso, é fundamental para realizar uma codificação do algoritmo realmente eficiente. É preciso que se considere esse conceito, pois, seu algoritmo pode ser falho e levar ao fracasso da solução caso não o conheça.

Se você, por exemplo, não introduz no seu algoritmo que ele deverá analisar a velocidade média dos carros ao determinar o tempo de duração de uma viagem, bem como introduzir de que forma deverá ser feito esse cálculo, como o sistema fará isso quando for executado? Por isso, a lógica de programação é fundamental para uma boa criação de soluções.

A pessoa que trabalha com esse tipo de atividade precisa conseguir entender de que modo pode ser possível resolver os problemas que aparecem com os algoritmos, dividindo-os em partes menores e conseguindo solucionar as questões.

O que é pseudocódigo?

Quando falamos em programação de algoritmos, estamos caminhando na área de programação. A questão é: a representação deles, nessa área, pode ser feita de muitas formas. Não há, de fato, uma padronização ou uma regra formal que mostre de que forma eles devam ser feitos — algo que gera um afastamento do conceito formal de programação.

O pseudocódigo, também chamado Linguagem Estruturada, cumpre uma função de intermediação entre esses dois pontos. Ele cria uma espécie de código cujo objetivo é gerar uma aproximação do que é visto nas linguagens padronizadas e tradicionais (como Java, C, C#, entre outras).

Ele transforma as regras definidas anteriormente, utilizadas em nossa linguagem corrente, em algo passível de ser compreendido no processamento das linguagens de programação. No Brasil, um dos pseudocódigos mais conhecidos e utilizados é o Portugol. Entretanto, esse não é o único, já que hoje são encontrados diversos outros no mercado, capazes de cumprir com os mesmos objetivos.

Cada tipo de pseudocódigo terá as suas regras específicas para a elaboração da codificação. Por exemplo, no Portugol, as ações devem sempre ser inseridas no infinitivo. Portanto, trazem um conjunto restrito de palavras-chave elaboradas na língua nativa da pessoa que opera a programação — e tenha termos equivalentes nas linguagens de programação padrões.

Assim, a pessoa consegue focar na lógica e o pseudocódigo será, posteriormente, uma espécie de “facilitador de tradução” para as linguagens de programação. Por exemplo, termos como “escrever”, “ler”, “então” e “isto” são palavras-chave que tendem a estar presentes em todas elas, fazendo com que quem está desenhando o algoritmo consiga fazer uma boa adaptação, sem perder detalhes da lógica de programação.

Vamos conferir abaixo um exemplo de pseudocódigo para cálculo de médias de um aluno, utilizando duas notas como parâmetros: 

Algoritmo “media”

var nota1, nota2, media = real

inicio
escreva (“Digite a primeira nota: “)
leia (nota1)

escreva (“Digite a segunda nota: “)
leia (nota2)

media:= (nota1 + nota2) / 2

escreva (“A média das notas do aluno é: “, media)

fimalgoritmo

Entenda a lógica de programação no dia a dia

Para entender a lógica de programação, é essencial esquematizar as ideias em situações reais. Assim, conseguimos assimilar todos os conceitos de um algoritmo nas nossas vidas e perceber que estamos com cada vez mais programas biológicos ao nosso redor.

  • Padronização do tempo

Com base no nosso conhecimento em lógica de programação, conseguimos criar uma rotina muito eficaz. Primeiramente, podemos dividir o nosso longo dia em pequenas fases. Caso trabalhemos, devemos separar uma boa quantidade do dia para o descanso. No entanto, se estudarmos, temos que organizar o nosso dia para os estudos.

Para a alimentação, é necessário estabelecer uma rotina para ficar mais fácil organizar o dia. Com base na lógica de programação, sabemos como melhorar a nossa rotina e extrair o melhor dos nossos dias.

  • Organizando receitas

Como vimos, as receitas de bolo são basicamente o passo a passo que os programas precisam seguir. Se queremos fazer uma receita de bolo, necessitamos dos ingredientes (ferramenta de desenvolvimento), da preparação da massa (algoritmo) e de um forno (computador) para produzir a receita. 

Dessa maneira, compreendemos que a preparação de uma receita pode ser separada em pequenos passos que fazem analogia para o funcionamento de um programa no computador.

Quais os conceitos básicos de lógica de programação?

Para compreender melhor tudo que envolve a lógica de programação, é fundamental conhecer alguns termos importantes utilizados nessa área. Vejamos os principais deles a seguir!

  • Estruturas de controle: são elas que definem se uma ação pode ou não ocorrer internamente e quais são os parâmetros que definem sua execução ou interrupção. Ou seja, se formos fazer um bolo de cenoura, deve ter cenoura em nosso domicílio. Caso não tenha cenoura, mas tenha laranja, poderá ser feito um bolo de laranja;
  • Laço de repetição: essa ferramenta é justamente a determinação da condição para que uma ação seja executada ou interrompida, por exemplo: “ande até chegar à Avenida Paulista”;
  • Armazenamento de dados: toda ferramenta precisa de dados que alimentam o sistema e que permitam que o algoritmo trabalhe. Diz respeito aos vídeos, imagens, arquivos de texto, memórias de dispositivos eletrônicos, entre outros;
  • Tipos de dados: é a categorização das informações internas, mostrando como elas devem ser processadas — por exemplo, de que forma se apresentam o texto, números, frações,etc;
  • Variáveis: para quem não está habituado a termos matemáticos, as variáveis são como expressões que utilizem letras e números (por exemplo, “x = 5” ou “x = y”). Auxiliam no armazenamento de valores trabalhados durante a execução dos algoritmos.

A lógica de programação precisa ser nítida e eficiente para evitar ambiguidades: lembre-se de que as máquinas não apresentam subjetividade. Então, caso você não faça as ações da maneira adequada, pode gerar algumas questões problemáticas. Vamos a um exemplo prático que pode ser aplicado na vida cotidiana para compreender as implicações de ambiguidades:

Meme sobre Lógica

Essa foto acima é um meme muito comum que circula nas redes sociais e, ele diz basicamente que, uma consulta marcada para amanhã não pode ser cancelada, pois, precisa ser cancelada com três dias de antecedência. 

Então, o usuário pensa em adiar a consulta deles para três dias depois de hoje, no caso, quinta-feira, para que a consulta seja cancelada. Ou seja, a pessoa que queria a consulta médica usou certa “malandragem” para desmarcar a consulta e, o sistema não estava preparado para essa “trapaça”. 

Linguagens de programação

A lógica sozinha não adianta se você não tiver como expressá-la — e isso é possível por meio das linguagens de programação. As linguagens são responsáveis por fazer as ações serem convertidas em linguagem de máquina (bits) e serem gravadas em arquivo, bem como a conversão em ações que podem ser compreendidas pelo usuário (imagens, vídeos, textos, etc.).

Por isso, é importante que, além de dominar a lógica de programação, a pessoa que trabalha com essa função domine o uso das principais linguagens utilizadas atualmente. Algumas delas são:

  • JavaScript;
  • PHP;
  • Java;
  • C#;
  • Python;
  • C++;
  • Rails.

Aprofundando os conceitos básicos da lógica de programação!

Variáveis e constantes

Em termos simples, pense em um armário de arquivos, no qual há pastas com uma etiqueta cada, que armazenam dados sobre determinado tema (idade, nacionalidade, naturalidade, data de nascimento). Essas são as variáveis.

Elas são espaços de memória reservados nos programas. Esse espaço pode ser alterado ao longo do tempo, bem como as informações podem variar. Por exemplo, quando falamos em “idade”, ela não se mantém igual daqui a um ano, variando conforme o decorrer do tempo.

As constantes, em contrapartida, dizem respeito aos espaços de memória reservados nos sistemas, mas que não vão ser alterados conforme decorrer. Por exemplo, você acha mais indicado guardar a data de nascimento ou a idade de uma pessoa, no cadastro dela? A data de nascimento, pois, caso seja armazenada a idade, ela terá que ser anualmente atualizada.

Tipos de dados

Os tipos de dados, de forma simples, dizem respeito ao formato da informação. Voltemos ao exemplo da pasta no armário: ao abrir uma pasta, você estará em contato com um texto, uma imagem, um CD com vídeo, áudio, números inteiros, números fracionados, entre outros.

Quando falamos em linguagem de programação, dizemos se estamos tratando de um texto, números inteiros ou frações. Seguindo o que mencionamos acima, na variável “idade” teremos apenas números inteiros, bem como na constante “data de nascimento”.

Estruturas de repetição e seleção

Abordamos esse tema anteriormente, mas vale relembrar e aprofundar um pouco mais sobre ele! A estrutura de repetição é o ponto que permite executar, de forma repetitiva, um mesmo comando ou um conjunto de ações predefinidas no algoritmo, segundo uma determinada condição preexistente.

Pode-se definir que a aplicação gerará uma notificação toda vez que uma pessoa usuária receber uma mensagem. Isso é uma ação redundante, feita por uma estrutura de seleção: 100% das vezes que uma mensagem for recebida, a aplicação deverá gerar uma notificação. Enquanto a condição for verdadeira, essa função deverá ser estabelecida.

Já as estruturas de seleção são aquelas que geram um condicional para as situações, ou seja, é executada apenas nos casos determinados é que a ação deverá ser executada. Dessa forma, torna-se necessário estabelecer afirmações de verdadeiro ou falso, para que a função seja realizada.

Vamos supor que, em sua aplicação, ocorra a venda de um produto em que só é possível garantir frete grátis a partir de R$99. Desde que o valor final oferecido no carrinho esteja abaixo dessa quantia, a eliminação do valor da tarifa de entrega não poderá ser realizada — trata-se, assim, de um condicional, sendo uma estrutura de seleção.

Em outros termos, entende-se que, sendo o valor acima de R$ 99 uma condição verdadeira, subtrai-se a taxa. Estando a quantia abaixo do limite estimado, isso caracteriza uma condição falsa e, portanto, a tarifa deve ser incluída.

Como aprender lógica de programação? Confira algumas dicas!

Comece aprendendo com algoritmos

Para iniciantes, a palavra algoritmo pode parecer assustadora. Temos a ideia que um algoritmo é um sistema complexo e de difícil entendimento.

O algoritmo nada mais é do que uma sequência lógica e, por causa disso, conseguimos percebê-lo em vários lugares além do computador. Quando uma abelha coleta o mel para a sua colmeia, ela instintivamente executa uma série de comandos programados no seu algoritmo biológico.

Da mesma forma, quando um algoritmo é executado em formato de código, conseguimos resolver diversos problemas no nosso computador.

Revise alguns conceitos de lógica matemática

Pode ser preciso rever alguns conceitos de lógica matemática, para acompanhar alguns termos que podem ser não muito usuais para quem não está acostumado. É possível revisar esses conteúdos em videoaulas em canais interessantes, como Portal da Matemática, Equaciona Matemática, entre outros.

Após se ambientar com os conceitos, você estará mais confortável para enfrentar a adoção de muitos dos caminhos utilizados no ambiente da programação. É aí que chega a hora de conseguir se especializar nessa área!

Cursos de programação

Os bons cursos de formação para programação incorporam, direta ou indiretamente, os ensinamentos sobre esse tipo de lógica em seus currículos. Isso porque não é possível falar sobre uma boa construção de algoritmos sem passar por tais questões.

Além disso, nesses locais você terá o suporte com monitores e pessoas tutoras especializadas no mercado, que poderão dar todo o apoio, encarando as questões e auxiliando em suas dificuldades — conseguindo, assim, melhorar a sua capacidade de aprendizado.

Outro ponto fundamental é verificar se os conteúdos dos cursos de formação escolhidos permitem que você aprenda sobre lógica de programação, na prática. Afinal, estamos falando de um tema que, naturalmente, é muito abstrato. Logo, ficar com os conceitos parados em sua mente pode gerar dificuldades de colocá-los em execução quando for necessário.

Ao conseguir realizar essa aplicação prática nos cursos, é possível tirar suas dúvidas sobre como executar os processos de lógica de programação. Assim, caso ainda reste alguma dúvida ou tenha alguma falha, essas pessoas poderão orientar sobre a melhor forma de solucionar as questões, melhorando seus estudos e formação.

Utilize aplicativos e jogos de aprendizado

Além de cursos, é preciso treinar diariamente. Algumas ferramentas podem ajudar você neste processo, auxiliando a compreender, no dia a dia, como funciona a lógica de programação. Aplicativos específicos como o LightBot podem ser úteis durante sua rotina de estudos.

O jogo em formato de puzzle game é baseado em codificação: por meio das decisões realizadas durante o jogo, você vai aprendendo a lógica de programação, com sequenciamento, sobrecarga, procedimentos, loops recursivos e condicionais. Por ser simples, ele pode ser um auxílio também para pais que querem introduzir seus filhos e filhos também nesse cenário. Interessante, não é mesmo?

Como organizar a rotina de estudos em lógica de programação?

Lembre-se de que teoria sem prática se torna absurdamente abstrata e, infelizmente, inútil. Por outro lado, a prática sem teoria também não é fundamentada e, provavelmente, bastante falha. Por isso, é fundamental você unir os dois pontos de modo a conseguir melhores resultados e complementar seus estudos.

Além dos exercícios passados durante os cursos, uma opção é ir treinando por conta própria. Ao ter uma noção básica de programação, você poderá começar a criar seus próprios algoritmos em casa, para ir descobrindo as melhores formas de conseguir bons resultados.

Lembre-se, também, de que lidar com programação é um aprendizado contínuo. Mesmo que você termine o curso de formação, até isso ser adotado em sua rotina, é importante continuar treinando. Assim, será mais natural criar as suas soluções ao decorrer do tempo.

Para isso, é fundamental ter uma organização do seu tempo de estudo de forma eficiente. Vamos apontar algumas dicas importantes para isso a seguir!

Busque continuamente aprimorar seus conteúdos

Uma pessoa que busca se especializar e se destacar no mercado precisa dominar os principais temas sobre a área. Por mais que a lógica de programação seja uma base, ou seja, algo que norteie as questões que serão melhor trabalhadas futuramente, é fundamental garantir que os conhecimentos sobre o assunto serão, de fato, bem repassados.

Por conta disso, é fundamental buscar cursos complementares, acompanhar conteúdos de blogs especializados, videoaulas etc., em conjunto com o seu curso de formação. Com isso, existirá maior domínio sobre o tema para aplicá-lo na rotina de programação.

Reveja suas anotações

Você provavelmente terá suas anotações do curso de formação ou, então, acesso às apostilas e materiais didáticos oferecidos, não é mesmo? Diante disso, é fundamental consultá-los continuamente, para verificar de que forma é possível aprimorar seu conhecimento ou incorporar algo que ainda não tinha sido percebido anteriormente.

Converse com outras pessoas sobre suas dúvidas

Um ponto fundamental dos cursos de formação é a troca de experiências entre os colegas que estão aprendendo junto a você. Como o processo de aprendizado muitas vezes pode trazer reflexões individuais, muitos dos que estão aprendendo junto podem ter “macetes” que auxiliam em seu aprendizado, ajudando a superar suas dificuldades individuais.

Por vezes, ao estudar em grupo, você já deve ter encontrado alguém que conhecia alguma forma para facilitar a assimilação de algum conhecimento que era mais difícil, certo? Isso pode ocorrer em relação à lógica de programação. Sendo assim, converse com essas pessoas, troque experiências, fale sobre suas dificuldades e ideias e aproveite para fazer um networking interessante.

Não hesite em tirar dúvidas com seus monitores

Caso ainda tenha dúvidas, converse com quem dá monitoria no seu curso de formação. Essas pessoas estão ali justamente para facilitar a sua jornada rumo ao mundo da programação. Muitas vezes são questões que podem ser difíceis para você no momento, mas que elas saberão trabalhar da melhor forma e conseguir os melhores resultados para seu aprendizado.

Separe um tempo para os estudos todos os dias

A prática leva à perfeição. No ambiente da programação, essa afirmação é de ouro! Por isso, separe um tempo todos os dias para colocar em prática aquilo que aprendeu no dia. Com o tempo, verá que essas informações se tornarão mais fáceis e você conseguirá naturalizar o processo de lógica de programação ao elaborar seus algoritmos, sem maiores dificuldades.

Mantenha a disciplina

As dicas que listamos acima só funcionam se você mantiver uma disciplina de implementá-las em suas rotinas cotidianamente. Não adianta, por exemplo, treinar hoje sobre o tema e ficar uma semana sem fazê-lo — é preciso que se torne um hábito.

A lógica de programação é um conceito de fundamental importância para quem está entrando na área de Tecnologia da Informação, Ciência da Computação e afins. Por isso, não deixe de estudar bastante sobre o tema e tirar suas dúvidas. Para isso, pode contar com a Trybe em sua formação profissional!

A lógica de programação é fundamental para todo desenvolvedor ou desenvolvedora de software. Com ela, conseguimos entender melhor o funcionamento dos programas que utilizamos e consequentemente dos programas que criaremos.

Dessa forma, aprendemos a organizar os nossos pensamentos de uma maneira mais lógica, como o exemplo da divisão de um grande problema em pequenas partes para facilitar a compreensão do algoritmo. Ao fim, não podemos esquecer que necessitamos de um grande raciocínio lógico para elaborar todos esses processos em nossa cabeça.

Muito além dos computadores, como já vimos, a lógica de programação se vê presente em vários lugares, a começar por fenômenos biológicos da natureza e até construções modernas da nossa sociedade. Tudo se reflete na lógica de programação.
Gostou deste conteúdo? Não deixe de conferir também nosso texto completo sobre JavaScript, a linguagem mais usada no mundo.

Deixe um comentário
Você também pode gostar