Olá, pessoal! Ultimamente uma dúvida tem literalmente me tirado o sono. Eu tenho 18 anos e faço faculdade de Sistemas de Informação. Nas aulas da minha faculdade o que mais rola é Java. No entanto, antes de entrar na faculdade eu estudava HTML, CSS, JavaScript e Design em geral, e hoje eu posso dizer que domino um pouco de Front-End.
Eu penso em focar todo o meu tempo de estudo fora da faculdade para Front-End e me tornar um master no assunto, só que eu também penso em focar apenas no Back-End (mais especificamente em Java) porque dizem que existem mais vagas de emprego e também para ter um melhor aproveitamento da minha graduação.
Como eu não sei nada de Java, tenho uma impressão meio estranha da linguagem. Imagino que terei que usar muitos cálculos, tipo Cálculo Diferencial Integral ou alguma outra coisa que a minha faculdade não ensina e que eu não tenho muita afinidade. Talvez essa visão esteja errada e seja apenas balela da minha mente tentando me fazer ficar na minha zona de conforto (Front-End).
Vou resumir a minha dúvida para duas questões:
1 - Programar em Java é muito complicado?
2 - Vocês acham que eu deveria apostar o meu tempo de estudo em Front-End ou em Java?
1- Programo em C#, pelo que vi, as linguagens são parecidas, apesar de que Java pode ter uma curva de aprendizado maior. Nada é facil, mas não impossível, dês de que se dedique e estude.
Mas a principio de tudo, estude e domine os conceitos que formam essa linguagem, sendo uma das principais a “Orientação a Objetos”, que você usara em todas linguagens que usem OO.
Com uma base solida em Logica e OO, sua preocupação em trocar de linguagem ficara em torno de sintaxe e características únicas da mesma.
2- Eu indicaria você a se dedicar aos dois, pois um se liga ao outro, fora que existem muitas vagas de “Full Stack”(Profissional que trabalha com front e back).
E por fim se especialize em uma, aprenda as duas, mas se dedique mais na que tiver preferencia.
Falando apenas da sintaxe da linguagem e conceitos de orientação a objetos, não é fácil mas também não é tão difícil. Se você tiver o mínimo de conhecimento sobre programação, com certeza terá capacidade de aprender Java. Eu diria que a facilidade de aprender algo tem muito a ver com teu gosto sobre o que está sendo aprendido. Por exemplo, eu nunca gostei de química, então se eu fizer uma faculdade que envolva química certamente eu não me sairei bem porque eu já tenho essa predisposição em não gostar. Quando você gosta do que está aprendendo, você se empenha mais, e mesmo que haja dificuldades você vai correr atrás com afinco para superá-las. Então a questão que fica pra você mesmo responder: você gosta de programação?
2 - Vocês acham que eu deveria apostar o meu tempo de estudo em Front-End ou em Java?
Essa resposta é muito subjetiva e também tem relação com a primeira. Eu recomendo que você invista sempre naquilo que mais combina com você e com seu gosto pra não se tornar um profissional frustrado futuramente. Se eu respondesse pra mim mesmo eu com certeza escolheria Java, que é mais a minha praia. Procure conhecer mais sobre ambos os lados, quem sabe estagiando primeiramente com front-end e depois com Java (ou ambos), assim terá experiência e condições de analisar por si mesmo o que é melhor pra você.
Hoje em dia nem temos tanto mais essa escolhe de não aprender frontend. Hoje o mercado pede fullstack developer, principalmente lá fora. O melhor a fazer é aprender ambos.
Javascript é a linguagem do momento, aprendendo ela, você pega fácil backend (Node.js) e frontend (Angular.js e varios outras existentes). E ainda de quebra, pega fácil mobile hibrido com Ionic + Angular.