Podemos dizer que somos programadores em uma certa linguagem, apenas conhecendo a sua sintaxe? Quando começamos a aprender uma linguagem de programação nova, aprendemos como é a estrutura dessa linguagem, já podemos dizer que “Progamamos nessa linguagem”?
Ou isso requer conhecimentos mais profundos da linguagem em questão, como conhecimento em várias Classes da Linguagem, Frameworks, Integração com banco de dados, User Interface ou isso depende apenas do tempo em que você trabalha com tal linguagem?
Quando é a hora certa para dizer "Eu programo na linguagem x"?
25 Respostas
Conhecer a linguagem é basicamente conhecer a sintaxe e as práticas mais recorrentes de formatação de código.
Para entender Frameworks basta ler a documentação.
Conhecer a linguagem é basicamente conhecer a sintaxe e as práticas mais recorrentes de formatação de código.
Para entender Frameworks basta ler a documentação.
Eu, por exemplo, faço faculdade e estou me dedicando à linguagem C e pretendo trabalhar com ela e com C++.
Assim que eu terminar a faculdade e conhecer bem a linguagem, já posso me candidatar a vagas de empresas que trabalham com essa linguagem ou é obrigatório conhecimentos mais “específicos” como algum framework?
Conhecer a linguagem é basicamente conhecer a sintaxe e as práticas mais recorrentes de formatação de código.
Para entender Frameworks basta ler a documentação.Eu, por exemplo, faço faculdade e estou me dedicando à linguagem C e pretendo trabalhar com ela e com C++.
Assim que eu terminar a faculdade e conhecer bem a linguagem, já posso me candidatar a vagas de empresas que trabalham com essa linguagem ou é obrigatório conhecimentos mais “específicos” como algum framework?
Você já procurar desde já um estágio pra ganhar experiência, de preferência na linguagem que você quer. Domínio em uma linguagem é conhecer seus recursos e usá-los de forma otimizada.
Mas conhecendo os conceitos profundamente torna-se muito mais fácil programar em outra linguagem.
Conhecer a linguagem é basicamente conhecer a sintaxe e as práticas mais recorrentes de formatação de código.
Para entender Frameworks basta ler a documentação.Eu, por exemplo, faço faculdade e estou me dedicando à linguagem C e pretendo trabalhar com ela e com C++.
Assim que eu terminar a faculdade e conhecer bem a linguagem, já posso me candidatar a vagas de empresas que trabalham com essa linguagem ou é obrigatório conhecimentos mais “específicos” como algum framework?
Rapaz, faça como o rafadelnero disse, procure um estágio desde já. Se deixar pra procurar algo apenas depois de se formar vai ter muita dificuldade em encontrar sem experiência, pois por ser formado não poderá ingressar como estagiário e praticamente nenhuma empresa arriscaria contratar alguém sem experiência alguma. Eu mesmo comecei a estagiar na área desde o primeiro semestre, fui precoce, me formei no ultimo ano e hoje o meu tempo de experiência vale muito mais que a graduação. Tanto que ter formado não mudou em nada minha situação na empresa.
Conhecer a linguagem é basicamente conhecer a sintaxe e as práticas mais recorrentes de formatação de código.
Para entender Frameworks basta ler a documentação.Eu, por exemplo, faço faculdade e estou me dedicando à linguagem C e pretendo trabalhar com ela e com C++.
Assim que eu terminar a faculdade e conhecer bem a linguagem, já posso me candidatar a vagas de empresas que trabalham com essa linguagem ou é obrigatório conhecimentos mais “específicos” como algum framework?Rapaz, faça como o rafadelnero disse, procure um estágio desde já. Se deixar pra procurar algo apenas depois de se formar vai ter muita dificuldade em encontrar sem experiência, pois por ser formado não poderá ingressar como estagiário e praticamente nenhuma empresa arriscaria contratar alguém sem experiência alguma. Eu mesmo comecei a estagiar na área desde o primeiro semestre, fui precoce, me formei no ultimo ano e hoje o meu tempo de experiência vale muito mais que a graduação. Tanto que ter formado não mudou em nada minha situação na empresa.
Então, já faço estágio, termino na metade desse ano. Porém, aqui na empresa não usamos C nem C++ ou Java, e sim PHP e MySQL. Vou precisar fazer outro estágio?
Então procure por alguma oportunidade nesta área…
Você pode dizer que programa em quantas linguagem quiser, se alguém vai ficar impressionado é outra história. Pra maioria das pessoas programação é chato, então é muito provável que vai entrar pelo ouvido e sair pelo outro.
Então, eu não disse sobre impressionar as pessoas. Estou dizendo, profissionalmente, se podemos dizer que temos conhecimento em uma linguagem apenas conhecendo a sua sintaxe, e se temos chance de concorrer a vagas sem experiência em frameworks.
Quanto a entrevista, aposto que eles não acham chato quando o concorrente a vaga fala sobre seus conhecimentos. Muito pelo contrário! Eles tem que falar da capacidade que tem!!
O fato de você já trabalhar com programação ajuda muito na lógica, agora só deve achar uma vaga na linguagem que você deseja, como já trabalha com isso vai ter um aprendizado muito rápido, pois a lógica você já tem, só basta a sintaxe da nova linguagem.
Quanto aos frameworks é muito relativo, isso muda de empresa para empresa.
Tente pesquisar sobre os mais utilizados em C e de uma estuda nesses, não posso te indicar, pois não trabalho com C.
Uma coisa é conhecer sintaxe e outra coisa é ter experiência na linguagem! Um bom programador desenvolve em qualquer linguagem, pois só tem que aprender a sintaxe dessa nova linguagem, porém ele leva muito mais tempo para codificar uma mesma funcionalidade que um programador experiente na linguagem.
Para o mercado de trabalho não basta conhecer a sintaxe, tem que ter experiência. Se você quer se dedicar a trabalhar com C/C++ arrume uma vaga de estágio aonde você possa trabalhar com essas linguagens, pois sem experiência prévia vai ser dificil conseguir uma colocação depois.
Eu creio que a experiência é fundamental para de dizer eu sou programador na linguagem xxx. A meu ver não basta apenas conhecer a linguagem, pois somente a experiência permite um aprendizado mais rico!
Podemos dizer que somos programadores em uma certa linguagem, apenas conhecendo a sua sintaxe? Quando começamos a aprender uma linguagem de programação nova, aprendemos como é a estrutura dessa linguagem, já podemos dizer que “Progamamos nessa linguagem”?
Ou isso requer conhecimentos mais profundos da linguagem em questão, como conhecimento em várias Classes da Linguagem, Frameworks, Integração com banco de dados, User Interface ou isso depende apenas do tempo em que você trabalha com tal linguagem?
Existe uma diferença entre ser programador em uma linguagem e desenvolvedor em uma plataforma.
Ser programador de uma linguagem é trivial. Basta saber os comandos e saber programar. Saber programar não está associado à linguagem de máquina. Está associado a algoritmia. Saber que qualquer programa pode ser feito apenas com 3 estrutruas base (Sequencia, Decisão e Repetição) é a essencia de programar. A linguagem só lhe dá isso e uma cola com o computador ( tipo, um system.out.print)
Ser desenvolvedor em uma plataforma é outro jogo. Vc precisa conhecer a plataforma mais que a linguagem. Java é uma linguagem e uma plataforma , mas Scala é uma linguagem diferente para a mesma plataforma.
Depois de alguns meses mexendo uma uma linguagem vc pode dizer que programa em X. Mas para desevolver na plataforma vai mais que isso. Precisa conhecer os frameworks, os ciclos de vida, os conceitos , as convenções, os padrões ,etc… e sobe tudo, precisa saber aquelas pequenas coisas que diferenciam aquela plataforma das outras. Este tipo de conhecimento precisa de mais tempo e experiencia.
Na teoria seria:
Lógica de Programação + Sintaxe da Linguagem + Boas Práticas de Desenvolvimento + API da linguagem + Experiência com a Linguagem(Projetos desenvolvidos durante determinado tempo) = Eu programo na linguagem x;
Mais na prática um programador ainda tem quer saber análise de sistemas(Processos de Software,RUP,UML), banco de dados(conceitos,modelagem,forma normais,SQL) e Frameworks porque o mercado exige.
Na teoria seria:
Lógica de Programação + Sintaxe da Linguagem + Boas Práticas de Desenvolvimento + API da linguagem + Experiência com a Linguagem(Projetos desenvolvidos durante determinado tempo) = Eu programo na linguagem x;Mais na prática um programador ainda tem quer saber análise de sistemas(Processos de Software,RUP,UML), banco de dados(conceitos,modelagem,forma normais,SQL) e Frameworks porque o mercado exige.
Assim que eu terminar a faculdade quero entrar numa empresa onde exista chances de eu crescer. Claro que eu não vou saber tudo isso que vc me disse tão brevemente, acredito que o trabalho em equipe deve entrar aí.
Podemos dizer que somos programadores em uma certa linguagem, apenas conhecendo a sua sintaxe? Quando começamos a aprender uma linguagem de programação nova, aprendemos como é a estrutura dessa linguagem, já podemos dizer que “Progamamos nessa linguagem”?
Ou isso requer conhecimentos mais profundos da linguagem em questão, como conhecimento em várias Classes da Linguagem, Frameworks, Integração com banco de dados, User Interface ou isso depende apenas do tempo em que você trabalha com tal linguagem?Existe uma diferença entre ser programador em uma linguagem e desenvolvedor em uma plataforma.
Ser programador de uma linguagem é trivial. Basta saber os comandos e saber programar. Saber programar não está associado à linguagem de máquina. Está associado a algoritmia. Saber que qualquer programa pode ser feito apenas com 3 estrutruas base (Sequencia, Decisão e Repetição) é a essencia de programar. A linguagem só lhe dá isso e uma cola com o computador ( tipo, um system.out.print)
Ser desenvolvedor em uma plataforma é outro jogo. Vc precisa conhecer a plataforma mais que a linguagem. Java é uma linguagem e uma plataforma , mas Scala é uma linguagem diferente para a mesma plataforma.
Depois de alguns meses mexendo uma uma linguagem vc pode dizer que programa em X. Mas para desevolver na plataforma vai mais que isso. Precisa conhecer os frameworks, os ciclos de vida, os conceitos , as convenções, os padrões ,etc… e sobe tudo, precisa saber aquelas pequenas coisas que diferenciam aquela plataforma das outras. Este tipo de conhecimento precisa de mais tempo e experiencia.
Para quem não tem experiência com projetos, mas gosta realmente do que faz e quer continuar se desenvolvendo, existe possibilidade de concorrer a vagas como programador? Quanto aos frameworks, acredito que não precisamos nos aprofundar muito estudando eles, apenas usar e consultar a documentação quando necessário. O essencial é conhecer a linguagem que estamos desenvolvendo e assim estaremos preparados a resolver os problemas de forma bemmais rápida, visto que o framework é baseado na linguagem.
Podemos dizer que somos programadores em uma certa linguagem, apenas conhecendo a sua sintaxe? Quando começamos a aprender uma linguagem de programação nova, aprendemos como é a estrutura dessa linguagem, já podemos dizer que “Progamamos nessa linguagem”?
Ou isso requer conhecimentos mais profundos da linguagem em questão, como conhecimento em várias Classes da Linguagem, Frameworks, Integração com banco de dados, User Interface ou isso depende apenas do tempo em que você trabalha com tal linguagem?Existe uma diferença entre ser programador em uma linguagem e desenvolvedor em uma plataforma.
Ser programador de uma linguagem é trivial. Basta saber os comandos e saber programar. Saber programar não está associado à linguagem de máquina. Está associado a algoritmia. Saber que qualquer programa pode ser feito apenas com 3 estrutruas base (Sequencia, Decisão e Repetição) é a essencia de programar. A linguagem só lhe dá isso e uma cola com o computador ( tipo, um system.out.print)
Ser desenvolvedor em uma plataforma é outro jogo. Vc precisa conhecer a plataforma mais que a linguagem. Java é uma linguagem e uma plataforma , mas Scala é uma linguagem diferente para a mesma plataforma.
Depois de alguns meses mexendo uma uma linguagem vc pode dizer que programa em X. Mas para desevolver na plataforma vai mais que isso. Precisa conhecer os frameworks, os ciclos de vida, os conceitos , as convenções, os padrões ,etc… e sobe tudo, precisa saber aquelas pequenas coisas que diferenciam aquela plataforma das outras. Este tipo de conhecimento precisa de mais tempo e experiencia.Para quem não tem experiência com projetos, mas gosta realmente do que faz e quer continuar se desenvolvendo, existe possibilidade de concorrer a vagas como programador?
Claro. Sempre existe a possibilidade de tudo.
Sendo que vc está na faculdade, as pessoas não irão esperar muito de si. Saber programar é o básico do básico. Se vc não sabe isso, não sabe nada. Mas saber programar, como eu disse, não é saber usar uma linguagem. É um pouco mais que isso.
Saber a linguagem é um “segundo grau” de saber programar. Ser um programador de verdade é dominar a linguagem em todas as suas caracteristicas. Por exemplo, vc sabe programar em java se não souber generics ? ou para que serve syncronized ? ou a diferença entre arraylist e linked list ? etc… tem muitas nuances ai. Vc está sendo simplista ao dizer que é precisa saber apenas a linguagem.
Quanto aos frameworks, acredito que não precisamos nos aprofundar muito estudando eles, apenas usar e consultar a documentação quando necessário. O essencial é conhecer a linguagem que estamos desenvolvendo e assim estaremos preparados a resolver os problemas de forma bemmais rápida, visto que o framework é baseado na linguagem.
Não é verdade. Se vc sabe java isso não lhe diz como funciona o struts ou o spring MVC ou o Vaadin ou o VRaptor ou o Swing ou o JSF. Cada um tem uma forma especifica de usar a linguagem para um propósito, mas esse propóstio não está na linguagem nem nas classes do frameworks. Está fora do código. É conhecer o que “está fora do código” que significa conhecer um framework. Saber a linguagem não é suficiente. consultar a documentação ajuda, mas vc tem que entender o que ela diz. Nem sempre é simples. Depende da documentação.
Mas o mais dificil é escolher entre um framework A e B. Isso que realmente diz se vc conhece os frameworks ou não. É claro que isso não é um estagiária que vai fazer, então vc está livre dessa, por enquanto. Mas se vc quiser vir a ser sênior algum dia, vc precisa evoluir esse seu conceito de que o “framework é baseado na linguagem”. O framework é escrito / implementado, na linguagem, mas é basedo em conceitos fora dela.
Podemos dizer que somos programadores em uma certa linguagem, apenas conhecendo a sua sintaxe? Quando começamos a aprender uma linguagem de programação nova, aprendemos como é a estrutura dessa linguagem, já podemos dizer que “Progamamos nessa linguagem”?
Ou isso requer conhecimentos mais profundos da linguagem em questão, como conhecimento em várias Classes da Linguagem, Frameworks, Integração com banco de dados, User Interface ou isso depende apenas do tempo em que você trabalha com tal linguagem?Existe uma diferença entre ser programador em uma linguagem e desenvolvedor em uma plataforma.
Ser programador de uma linguagem é trivial. Basta saber os comandos e saber programar. Saber programar não está associado à linguagem de máquina. Está associado a algoritmia. Saber que qualquer programa pode ser feito apenas com 3 estrutruas base (Sequencia, Decisão e Repetição) é a essencia de programar. A linguagem só lhe dá isso e uma cola com o computador ( tipo, um system.out.print)
Ser desenvolvedor em uma plataforma é outro jogo. Vc precisa conhecer a plataforma mais que a linguagem. Java é uma linguagem e uma plataforma , mas Scala é uma linguagem diferente para a mesma plataforma.
Depois de alguns meses mexendo uma uma linguagem vc pode dizer que programa em X. Mas para desevolver na plataforma vai mais que isso. Precisa conhecer os frameworks, os ciclos de vida, os conceitos , as convenções, os padrões ,etc… e sobe tudo, precisa saber aquelas pequenas coisas que diferenciam aquela plataforma das outras. Este tipo de conhecimento precisa de mais tempo e experiencia.Para quem não tem experiência com projetos, mas gosta realmente do que faz e quer continuar se desenvolvendo, existe possibilidade de concorrer a vagas como programador?
Claro. Sempre existe a possibilidade de tudo.
Sendo que vc está na faculdade, as pessoas não irão esperar muito de si. Saber programar é o básico do básico. Se vc não sabe isso, não sabe nada. Mas saber programar, como eu disse, não é saber usar uma linguagem. É um pouco mais que isso.
Saber a linguagem é um “segundo grau” de saber programar. Ser um programador de verdade é dominar a linguagem em todas as suas caracteristicas. Por exemplo, vc sabe programar em java se não souber generics ? ou para que serve syncronized ? ou a diferença entre arraylist e linked list ? etc… tem muitas nuances ai. Vc está sendo simplista ao dizer que é precisa saber apenas a linguagem.
Quanto aos frameworks, acredito que não precisamos nos aprofundar muito estudando eles, apenas usar e consultar a documentação quando necessário. O essencial é conhecer a linguagem que estamos desenvolvendo e assim estaremos preparados a resolver os problemas de forma bemmais rápida, visto que o framework é baseado na linguagem.Não é verdade. Se vc sabe java isso não lhe diz como funciona o struts ou o spring MVC ou o Vaadin ou o VRaptor ou o Swing ou o JSF. Cada um tem uma forma especifica de usar a linguagem para um propósito, mas esse propóstio não está na linguagem nem nas classes do frameworks. Está fora do código. É conhecer o que “está fora do código” que significa conhecer um framework. Saber a linguagem não é suficiente. consultar a documentação ajuda, mas vc tem que entender o que ela diz. Nem sempre é simples. Depende da documentação.
Mas o mais dificil é escolher entre um framework A e B. Isso que realmente diz se vc conhece os frameworks ou não. É claro que isso não é um estagiária que vai fazer, então vc está livre dessa, por enquanto. Mas se vc quiser vir a ser sênior algum dia, vc precisa evoluir esse seu conceito de que o “framework é baseado na linguagem”. O framework é escrito / implementado, na linguagem, mas é basedo em conceitos fora dela.
Obrigado pelos esclarecimentos…
Complementando o que diz o sergiotaborda.
Programar uma linguagem é simples, se você entende de lógica, você programa em qualquer linguagem, basta ler a sintaxe.
Na nossa área, o que vejo mercado adentro é: “O que separa o lobo das ovelhas é o conhecimento da arquitetura da tecnologia.”, porque lógica e algoritmos todo mundo sabe fazer, difícil é fazer uma integração elegante entre uma camada de negócios, uma camada de dados e uma apresentação, o que é regido pelo padrão de projetos que você adota.
Na minha opinião você não precisa conhecer todos os frameworks ABCD, mas sim entender as lógicas fundamentais e funcionais deles, você precisa saber o que é um framework, como ele funciona internamente. De posse desse conhecimento, qualquer framework será fácil de assimilar.
Sugiro que comece com frameworks e especificações populares, como Spring, JSF, Spring MVC.
E lembre-se do mais importante, dizer que sabe é diferente de dizer que desenrola.
Complementando o que diz o sergiotaborda.Programar uma linguagem é simples, se você entende de lógica, você programa em qualquer linguagem, basta ler a sintaxe.
Na nossa área, o que vejo mercado adentro é: “O que separa o lobo das ovelhas é o conhecimento da arquitetura da tecnologia.”, porque lógica e algoritmos todo mundo sabe fazer, difícil é fazer uma integração elegante entre uma camada de negócios, uma camada de dados e uma apresentação, o que é regido pelo padrão de projetos que você adota.
Na minha opinião você não precisa conhecer todos os frameworks ABCD, mas sim entender as lógicas fundamentais e funcionais deles, você precisa saber o que é um framework, como ele funciona internamente. De posse desse conhecimento, qualquer framework será fácil de assimilar.
Sugiro que comece com frameworks e especificações populares, como Spring, JSF, Spring MVC.
E lembre-se do mais importante, dizer que sabe é diferente de dizer que desenrola.
Vou estudar um pouco mais, depois pesquisar sobre os frameworks mais usados e praticar. Eu acho que eu estou andando em círculos sabe, toda vez que eu começo a estudar uma linguagem nova eu começo a fazer tudo quase do zero, como se fosse a primeira vez que estou programando e não saio de um programa com mais de quatro métodos…
Nunca conclui projetos que fiz em casa. Sempre que começa a ficar grande eu apago e começo tudo de novo, porém, implementando o projeto de maneira diferente(Com uma arquitetura melhor, claro)… Um exemplo é um chat mobile que eu fiz com HTML5 e jQuery. tava ficando uma maravilha. Mas do nada eu apaguei tudo ‘-’. Isso é normal??
Nunca conclui projetos que fiz em casa. Sempre que começa a ficar grande eu apago e começo tudo de novo, porém, implementando o projeto de maneira diferente(Com uma arquitetura melhor, claro)… Um exemplo é um chat mobile que eu fiz com HTML5 e jQuery. tava ficando uma maravilha. Mas do nada eu apaguei tudo ‘-’. Isso é normal??
Não.
É normal que vc duvide, modifique e evolua. Mas que destrua não é normal. Vc não gostou ? acha que pode fazer melhor ? Ok. guarda esse projeto e começa outro. Não precisa apagar.
Alguma coisa que vc fez antes vai aproveitar depois. E às vezes vc só descobre isso alguns meses depois. Então, não apague.
Programas que não passam de 4 metodos não são programas de verdade. Então vá mais afundo. E uma boa maneira de ir mais afundo, como já disseram é arranjar um estágio. Vc vai ver que o mundo real é muito diferente do que vc imagina. (Fora que vc vai ver aplicações completas com mais de 4 métodos. 4000 é mais provável… )
Chamo isso de falta de foco.
Todos sofremos disso em um dado momento. É como se você estivesse cheio de ideias em um dia e então pluft, no outro dia aquela ideia virou uma diarreia mental e você acaba por dar um shift+del. Logo depois se arrepende.
Primeiro de tudo, planeje o que você quer fazer, não vá codificando logo de cara.
- Elabore a ideia;
- Elabore os casos de uso;
- Faça wireframes dos formulários;
- Elabore o modelo de negócios;
- Elabore o modelo de entidades;
- Repita do passo 1 ao 5 para o banco de dados;
- Parta para a escolha de uma tecnologia em específico;
- Somente com todos os documentos prontos parta para uma especificação do que você irá fazer;
- Se for algo grande para fazer sozinho, compartilhe a especificação e peça ajuda para a codificação.
- Crie um sistema de versionamento e voilá, comece a codificação.
Veja que codificação é o último passo para uma excelente idéia, dependendo do tamanho do projeto, a elaboração dos passos 1 a 9 podem levar de 3meses a 1ano.
De posse disso codificar o projeto será bem simples, pois você saberá o que fazer no momento exato.
Nunca conclui projetos que fiz em casa. Sempre que começa a ficar grande eu apago e começo tudo de novo, porém, implementando o projeto de maneira diferente(Com uma arquitetura melhor, claro)… Um exemplo é um chat mobile que eu fiz com HTML5 e jQuery. tava ficando uma maravilha. Mas do nada eu apaguei tudo ‘-’. Isso é normal??Não.
É normal que vc duvide, modifique e evolua. Mas que destrua não é normal. Vc não gostou ? acha que pode fazer melhor ? Ok. guarda esse projeto e começa outro. Não precisa apagar.
Alguma coisa que vc fez antes vai aproveitar depois. E às vezes vc só descobre isso alguns meses depois. Então, não apague.Programas que não passam de 4 metodos não são programas de verdade. Então vá mais afundo. E uma boa maneira de ir mais afundo, como já disseram é arranjar um estágio. Vc vai ver que o mundo real é muito diferente do que vc imagina. (Fora que vc vai ver aplicações completas com mais de 4 métodos. 4000 é mais provável… )
Na verdade, esses 4 métodos que eu digo, é o que eu mantenho quando estou praticando alguma coisa. Já no meu chat, por exemplo, eu havia feito muita coisa, tava tudo bem organizado, eu tinha ate montado um documento no Writer com os relacionamentos das paginas do chat e o que teria de ter em cada uma…
Vou estudar um pouco mais, depois pesquisar sobre os frameworks mais usados e praticar. Eu acho que eu estou andando em círculos sabe, toda vez que eu começo a estudar uma linguagem nova eu começo a fazer tudo quase do zero, como se fosse a primeira vez que estou programando e não saio de um programa com mais de quatro métodos…Nunca conclui projetos que fiz em casa. Sempre que começa a ficar grande eu apago e começo tudo de novo, porém, implementando o projeto de maneira diferente(Com uma arquitetura melhor, claro)… Um exemplo é um chat mobile que eu fiz com HTML5 e jQuery. tava ficando uma maravilha. Mas do nada eu apaguei tudo ‘-’. Isso é normal??
No mercado de trabalho você não pode fazer isto, apagar tudo e começar do zero. Você é forçado a ser persistente e ir até o “fim” (entre aspas, visto que fim do software é bem relativo). Leve isto para os seus projetos pessoais.
Agora, um dos motivos pra você apagar e começar do zero é a falta de confiança no código. Ou ele está uma zona e é difícil demais entendê-lo, ou ele tem bugs inesperados (normalmente em decorrência da falta de qualidade do código). É por isso que é importante refatorar o código sempre. E refatorar não é começar do zero!
Vou estudar um pouco mais, depois pesquisar sobre os frameworks mais usados e praticar. Eu acho que eu estou andando em círculos sabe, toda vez que eu começo a estudar uma linguagem nova eu começo a fazer tudo quase do zero, como se fosse a primeira vez que estou programando e não saio de um programa com mais de quatro métodos…Nunca conclui projetos que fiz em casa. Sempre que começa a ficar grande eu apago e começo tudo de novo, porém, implementando o projeto de maneira diferente(Com uma arquitetura melhor, claro)… Um exemplo é um chat mobile que eu fiz com HTML5 e jQuery. tava ficando uma maravilha. Mas do nada eu apaguei tudo ‘-’. Isso é normal??
No mercado de trabalho você não pode fazer isto, apagar tudo e começar do zero. Você é forçado a ser persistente e ir até o “fim” (entre aspas, visto que fim do software é bem relativo). Leve isto para os seus projetos pessoais.
Agora, um dos motivos pra você apagar e começar do zero é a falta de confiança no código. Ou ele está uma zona e é difícil demais entendê-lo, ou ele tem bugs inesperados (normalmente em decorrência da falta de qualidade do código). É por isso que é importante refatorar o código sempre. E refatorar não é começar do zero!
Pior que não… Eu sou muito perfeccionista, sempre gosto de fazer as coisas da melhor maneira possível, e estava tudo certo, e eu acho que é esse o meu problema. Quando eu vejo que uma coisa pode ser feita de maneira diferente(pode ser melhorada), principalmente em se tratando de desempenho e organização, eu tenho que apagar o que eu já fiz e começar tudo de novo. Daí para não apagar de pouco em pouco eu apago tudo de uma vez. O único projeto que sobrou foi um player de vídeo que eu fiz na mão, do zero, em HTML5 e os eventos em JavaScript.
O ruim, como vc disse, é que eu tenho que parar de fazer isso, pois no mercado de trabalho isso é prejuízo.
Pior que não… Eu sou muito perfeccionista, sempre gosto de fazer as coisas da melhor maneira possível, e estava tudo certo, e eu acho que é esse o meu problema. Quando eu vejo que uma coisa pode ser feita de maneira diferente(pode ser melhorada), principalmente em se tratando de desempenho e organização, eu tenho que apagar o que eu já fiz e começar tudo de novo. Daí para não apagar de pouco em pouco eu apago tudo de uma vez. O único projeto que sobrou foi um player de vídeo que eu fiz na mão, do zero, em HTML5 e os eventos em JavaScript.O ruim, como vc disse, é que eu tenho que parar de fazer isso, pois no mercado de trabalho isso é prejuízo.
Buscar maneiras melhores de resolver os problemas é algo bom. Mas você não precisa jogar o que tinha fora e começar de novo, você pode refatorar seu código e incluir as melhorias.
Eu confesso que também já sofri bastante com isto. Hoje até melhorei um pouco, primeiro porque em projetos reais existem prazos e segundo porque no passado eu realmente tinha um conhecimento bem menor, então eu escolhia soluções piores com frequência.
Podemos dizer que somos programadores em uma certa linguagem, apenas conhecendo a sua sintaxe? Quando começamos a aprender uma linguagem de programação nova, aprendemos como é a estrutura dessa linguagem, já podemos dizer que “Progamamos nessa linguagem”?
Ou isso requer conhecimentos mais profundos da linguagem em questão, como conhecimento em várias Classes da Linguagem, Frameworks, Integração com banco de dados, User Interface ou isso depende apenas do tempo em que você trabalha com tal linguagem?
Tudo parte do problema que vai resolver, não da tecnologia. Se for um programa pra puramente resolver problemas matemáticos por exemplo, então pode ser capaz de resolver.