Eu sou um programador iniciante. Estudo linguagens como C, C ++, Python e Java (principalmente com foco em C ++). Sou o que você chamaria de "jovem e inexperiente" e admito isso porque não posso afirmar o contrário.
Como estudante, tenho muitos outros problemas além da programação. Pratico programação sempre que posso, e principalmente porque meu professor me dá muito mais exercícios do que o resto da turma (é um nível muito baixo), então muitas vezes passo semanas fazendo outra coisa, como projetos escolares ou esportes, ou viajar, qualquer coisa além de programação.
Não me interpretem mal, eu amo programação. Adoro criar código funcional, observar como um programa ganha vida com o pressionar de um botão e aprender o máximo que posso. O problema é que eu simplesmente não tenho muito tempo para isso.
Agora, direto à pergunta: seu conhecimento de programação diminui com o passar do tempo e você não pratica? Você pode perguntar "quanto tempo você quer dizer?". Não quero dizer uma quantidade específica de tempo, mas como referência, você pode levar um mês, dois ou até um ano como exemplo.
Por conhecimento, quero dizer qualquer coisa, da sintaxe à funcionalidade da linguagem.
Respostas:
Obviamente, programação é algo que você aprende a fazer, não um conjunto de fatos ou informações. Dito isto, é mais como andar de bicicleta ou falar um idioma. Também existem teorias, mas é mais sobre colocá-las em prática.
Mesmo assim, como qualquer coisa, se você não o usar, seu cérebro começará a soltar as informações. Seu cérebro é como um músculo dessa maneira. Após um período de tempo, você provavelmente se lembrará de conceitos amplos, mas não específicos sobre sintaxe e funções menos usadas. Por exemplo, você pode querer fazer um
for
loop ou iterar sobre uma lista e saber que é algo comowhile List.hasNext()
oufor item in list
oufor index, item of list
, mas não escrevê-lo muito confiante.O bom é que você saberá o que deseja fazer. Você só precisa procurar. Então, eu não ficaria muito preocupado com isso. Isso voltará para você. O importante é aprender a resolver problemas com os programas. Todas as linguagens de programação geralmente são capazes de fazer as mesmas coisas, mas na maioria das vezes de maneiras diferentes. Você pode esquecer que Ruby ou Python têm compreensão e
for
, em vez disso, escrevem muitos loops, mas você fará o trabalho.Quanto ao quanto você vai esquecer ou lembrar, acho que isso depende de quão ativa sua mente é e quantos anos você tem. Acho que não desenvolvi um cérebro totalmente funcional até os 19 anos. Nesse momento, memorizar qualquer coisa para mim foi instantâneo. Todos são diferentes.
Em resumo: os detalhes sempre desaparecem, a taxa que eles desaparecem depende de você, todos os idiomas estão tentando facilitar a solução dos mesmos problemas, portanto, talvez seja mais importante aprender a resolver problemas. :)
fonte
Qualquer coisa não usada acabará atrofiando.
fonte
Sou dono de uma pequena empresa, ou seja, sou o cara. Então, quando o site precisa ser atualizado, eu tenho que ser o guru do Zend / MVC. Quando preciso cortar dados ou ajustar páginas da Web, percebo que estou precisando usar o php. Quando estou lutando com o Quickbooks, posso me encontrar usando consultas do faux-QB, Visual Basic, php, mysql, linux e windows em um miasma de sopa de tecnologia. Ah, sim, e eu trabalho com CAD quando um fornecedor precisa de desenhos, o que significa que tenho que ser um engenheiro / designer mecânico e descobrir os formatos de arquivo e o que é necessário para que as pessoas tenham o conhecimento que está dentro da minha cabeça claramente. Acabamos de ficar sem catálogos novamente, então comprei o Adobe CS5 e peguei o arquivo do InDesign para o catálogo antigo e o aprimorei para o novo catálogo. Eu também sou o eletricista e especialista em redes que constrói cabos quando necessário.
Dada toda essa experiência nos últimos 10 anos, descobri que esqueço as coisas em cerca de um mês. Mas quando imerso nele novamente, o cérebro despertará memórias que me enviarão para o php.net ou vasculhar o código antigo / legado / antigo que eu escrevi. O mesmo para o trabalho CAD; há um grande projeto em que trabalho há mais de um ano. Quando ligo o computador, leva um dia para que todas as atualizações sejam concluídas e as licenças sejam classificadas e, em seguida, mais dois a cinco dias para chegar onde eu estava quando parei.
Eu estou achando o mais difícil de pegar novamente toda vez que é a programação do qodbc do Quickbooks. : P Eu fiz o MySql e o PostgreSQL várias vezes ao longo dos anos e, com meus arquivos de texto de trapaças, onde salvei consultas particularmente úteis, posso pegar essas coisas rapidamente.
Resumo: mantenha todo o seu trabalho para sempre, brinque com ele a cada 6 a 12 meses. Quando precisar revisar esse código, provavelmente você não terá regredido muito e espera ter velocidade máxima novamente em uma semana.
fonte
O conhecimento geral de programação ou as habilidades de resolução de problemas programáticos não envelhecem realmente, mas o conhecimento específico da linguagem ou da estrutura fica desatualizado depois de um tempo.
fonte
Metodologias e gostos não diminuem se você não pratica, mas lembrar a sintaxe e as bibliotecas corretas certamente diminui.
Eu uso principalmente Java, C ++ e C #. Nos últimos dois anos, porém, uso Java apenas ocasionalmente (se um bug precisar ser corrigido em um sistema legado). Portanto, muitas vezes luto um pouco para lembrar qual é a sintaxe correta ou qual biblioteca preciso agora.
fonte
Conhecimento, não (pelo menos não os conceitos do Big Picture). Habilidades, sim.
fonte
O conhecimento diminui um pouco; você pode se esquecer de algumas das sintaxes ou dos aspectos mais complexos de uma determinada linguagem. No início, também pode ser difícil estruturar seu código se você não praticar, mas depois de um tempo isso voltará.
fonte
Aprender a programar é aprender a resolver problemas mais do que qualquer outra coisa. Eu estive na situação em que não programava há mais de 10 anos. Sim, os detalhes da sintaxe que eu tinha e preciso procurar regularmente, mas a habilidade de resolver problemas ainda estava lá.
fonte
Como em todas as atividades cerebrais, o conhecimento começa a desaparecer após literalmente segundos. Isso continua por segundos e minutos (curto prazo). Alguns são transferidos pelo hipocampo para a memória de longo prazo, onde o processo de desbotamento é muito mais lento.
Uma analogia que eu mais gosto do que o músculo é "a esponja". Aprender e usar é como adicionar água, o que torna a esponja agradável, rechonchuda e pesada. Pare de adicionar água e ele começará a secar e perder peso. Os neurologistas podem gostar dessa analogia;)
Algumas coisas que podem ser contrárias são:
Repetição. Faça qualquer tarefa vezes suficientes e você se lembrará disso.
Nemonics. Seja visual, auditivo ou seja o que for, isso pode ser realmente útil.
Flexibilidade. Em vez de conhecimento em si, a capacidade de assumir novas tarefas é fundamental e é ajudada com a realização de atividades completamente novas.
Exercício. Bem conhecido por ajudar o cérebro e com a memória.
Fazendo anotações. Não (tanto) para referência futura, mas porque o processo real de fazê-las ajuda a prender o conhecimento na mente.
fonte