🔧 Tentando Conquistar o Mundo da Programação: Dicas para Resolver Problemas
Nachrichtenbereich: 🔧 Programmierung
🔗 Quelle: dev.to
Eai, cês tão bem?
Eu gosto muito de escrever sobre coisas que acabo vivenciando e pensando: E se eu fizer um post pra falar disso?
No meu trabalho, me deparo frequentemente com desafios que são bem comuns para quem está começando a explorar o mundo da programação. São aqueles obstáculos típicos que, de vez em quando, nos deixam um tanto desanimados na nossa jornada nesse universo meio "maluco" que é a programação.
Então, eu tô aqui hoje para conversarmos um pouco sobre essas situações e, quem sabe, eu consiga te dar uma mãozinha nessa jornada. :)
Dicas e Lembretes Essenciais 📝
- É perfeitamente normal ter dúvidas, seja quando você está aprendendo ou mesmo depois de algum tempo. Ter dúvidas simplesmente significa que existe algum conhecimento que ainda não foi adquirido. Portanto, não hesite em fazer perguntas e buscar esclarecimentos sempre que necessário.
- A aprendizagem muitas vezes requer repetição. Ver um conteúdo uma vez, duas vezes, ou até mesmo por vários dias seguidos não garante um conhecimento sólido sobre o assunto. É importante continuar praticando e revisando.
- Não se esqueça de valorizar os pequenos avanços. Às vezes, somos muito críticos conosco mesmos, especialmente quando tudo é novo, como foi para mim. Lembre-se de que cada passo é significativo e que todos eles contam.
- Evite comparar sua velocidade de aprendizado com a de outras pessoas, acredite em mim, não vale a pena e só gera frustração. Cada um tem seu próprio ritmo de aprendizado, e o importante é progredir de acordo com suas próprias metas e necessidades.
"Travei" num desafio/problema de programação. E agora? 🥶
Para tornar minha missão de ajudar a resolver seu desafio sem nem mesmo ver seu código mais eficaz, vou começar fazendo algumas perguntas:
Como você iniciou a resolução desse problema? ❓
- Comecei a codar sem dividir em partes e estou perdido, sem saber onde está o problema. 🤯
- Dividi em partes e estou enfrentando um problema em uma etapa específica. 🤧
Se você escolheu a primeira alternativa, vamos começar dividindo seu problema em partes. Essa prática é muito útil; eu pessoalmente a utilizo muito. Pego uma folha de papel e escrevo tudo o que meu programa deveria fazer, só depois parto para o código.
Para ser mais assertiva, vou dar um exemplo de como podemos fazer isso:
Desafio: Calcular a Média de uma Lista de Números 🤓
Dividindo meu problema:
Definir o Objetivo: O objetivo é calcular a média de uma lista de números.
Entrada de Dados: Identificar a entrada necessária para o problema. Neste caso, é uma lista de números.
Processamento dos Dados: Dividir o problema em etapas menores:
- Inicializar uma variável
total
como 0 para rastrear a soma dos números. - Usar um loop para percorrer a lista de números.
- Adicionar cada número à variável
total
. - Calcular a média dividindo o
total
pelo número de elementos na lista. - Retornar o valor da média.
Saída de Dados: No final, você obtém a média dos números e a imprime na tela.
Aqui nós dividimos o problema em etapas menores e ajuda a organizar a resolução do problema de maneira mais eficaz. Cada etapa lida com uma parte específica do problema, tornando-o mais "gerenciável" e fácil de implementar.
Isso foi uma das formas que eu pensei em como resolver esse desafio, mas existem outras formas. :)
Tenta resolver o desafio e depois, se quiser me conta como foi!
Se você respondeu a segunda alternativa, vem comigo que eu vou tentar te ajudar:
- Compreenda o problema: Certifique-se de entender completamente o problema antes de começar a escrever código.
- Divida em partes: Divida o novo problema em partes menores e bem definidas.
- Faça perguntas: Se estiver travado em uma parte, faça perguntas específicas para entender a dificuldade.
- Pesquisa: Busque em recursos como documentação, tutoriais, para obter informações, use alguma das perguntas feitas no tópico acima para pesquisar no Google ou até mesmo usar nosso amigo chat GPT.
- Pseudocódigo: Crie um pseudocódigo ou fluxograma para visualizar a lógica da solução.
- Revisão: Explique sua abordagem lógica a alguém para identificar problemas, isso me ajuda MUITO. Eu converso até meio sozinha as vezes, rs. 😅
- Testes: À medida que avança na resolução do problema, teste partes individuais do seu código e, sempre que possível, exiba as saídas na tela. Isso ajuda você verificar se cada parte do código funciona conforme o esperado e a identificar problemas mais cedo. Isso acontece bastante, quando achamos que uma variável está retornando um valor, mas na realidade, está nos surpreendendo com outro.
- Depuração: Utilize ferramentas de depuração para rastrear o comportamento do programa.
- Seja paciente: Todos enfrentam desafios, seja persistente e paciente.
- Aprenda com os erros: Veja os desafios como oportunidades de aprendizado e crescimento profissional.
O livro 'Fomos Maus Alunos' traz uma reflexão muito interessante sobre o erro. Vou deixar um trecho desse livro aqui para finalizar este conteúdo. ❤️
Faz parte da aventura chegar e dizer: Estava errado. Vou dar um exemplo. Uma pessoa se dedica à exploração de cavernas. Há uma bifurcação. Não sabe qual delas seguir. Assim, vai na sorte. Depois de muito caminhar, chega a um beco sem saída. Aquele corredor da caverna não leva a lugar algum. Ela volta e escreve à entrada da bifurcação: Beco sem saída. Essa informação é importante? É conhecimento? Importantíssima para os outros que virão depois dela. Conhecimento de que aquele caminho vai dar em nada. Aquelas palavras lhes pouparão trabalho. Um doutorando se propõe fazer uma pesquisa. Pesquisa durante cinco anos. Ao final de cinco anos, verifica que todas as suas hipóteses estavam erradas. Para mim seria perfeitamente válido que ele escrevesse, como conclusão de sua tese: Depois de cinco anos de pesquisa verifiquei que todas as hipóteses estavam erradas. Isso é conhecimento.
Até a próxima e bons estudos!
Se você leu até o final reage com um 💟 se não, não precisa reagir :(.
🔧 Dicas para iniciantes na programação:
📈 56.99 Punkte
🔧 Programmierung
🔧 Dicas e configurações para seu sistema linux
📈 35.74 Punkte
🔧 Programmierung
🔧 Dicas para usar o Github como Portfólio
📈 35.74 Punkte
🔧 Programmierung
🐧 Servirá para comenzar en el mundo de Linux?
📈 34.62 Punkte
🐧 Linux Tipps