É uma pergunta que eu tenho “medo” que a resposta seja SIM.
To pensando seriamente em tirar a SCJP no terceiro ano da faculdade (ano que vem), mas a pergunta: se eu tirar, a Sun falir e Java acabar, o que vai ser da certificação? Vale a pena isso para meu primeiro emprego que, espero que seja numa multinacional grande?
Não me xinguem de burro nem nada, mas é uma dúvida que tenho. Eu sei que ninguém pode prever o futuro nem nada, então deixo uma pergunta melhor: é possível “tirar” alguma coisa (de conhecimento) da certificação (ou de ser um expert em Java) para usar em outras áreas?
Abraço e bom final de 2007 e feliz natal para todos, próspero ano novo e ho ho ho.
SCJP é uma certificação de tecnologia que tem alguns tópicos que fogem ao trabalho com Java simplesmente.
Se a Sun falir, que o faça depois de lançar a JDK open-source, aí não vai ter perigo de acabar com tudo, e mesmo assim não adianta só a Sun falir, tem que falir todas as outras grande apoiadoras do Java, é só dar uma olhadinha nas cadeiras do comitê executivo do JCP.
E mesmo que isso ocorra, linguagens dificilmente “morrem”, vide o tão afamado COBOL que teima em sobreviver por aí.
Poisé… mas dizem que querem “matar” o COBOL :’(
(Tirar dos bancos principalemente)
Vou dormir. Amanhã acordo 7 horas… opz, hoje… daqui a pouco.
Abraço e valeu, madrugador
A resposta é ‘sim’, mas é muito improvável que isso ocorra num futuro não muito distante. O legado Java é muito extenso. Pode tirar sua certificação sem medo, só lembre que o pedaço de papel não vai dizer nada sobre se você programa bem ou não, só serve para aumentar suas chances de conseguir um emprego quando você não tem ouro diferencial, caso comum com estudantes.
Só não faça a besteira de acreditar que ‘java é o futuro’ e ignorar o que acontece à sua volta. Se eu estivesse na faculdade hoje aprenderia apenas o básico de Java e de C e e concentraria em Ruby, Scala, Smalltalk Haskell e/ou Lisp, são linguagens que formam profissionais completos.
shoes, esse é um cara que eu sei que não poderia de deixar de responder esse tópico!
Pois é… também acredito que seja um diferencial somente de “embalo” pra entrar em algum negócio.
Acredito também que se limitar em Java e C seja muito pouco. Essas 2 linguagens são de extrema importância, mas existe um mundo ainda muito grande quando fala-se sem utilizar elas.
Nas férias agora quero estudar C++ e um pouco de Ruby e Python. O problema de Ruby é que existem a ramificação Ruby on Rails. Comecei a estudar Ruby de uns tempos para cá, mas quando vi já estava estudando RoR e já desanimei
O que (acredito eu) não posso fazer é ficar limitado somente a programação. Engenharia de Software I foi uma das matérias que mais gostei no ano da faculdade… e não houve muito código, somente regras de processo, MVC, reuso e os tipos de processos que podem ser adotados (incremental, em cascata, protótipo…). Isso diz que eu, como um estudante de terceiro ano com uma futura SCJP, sempre vou me restringir a programar ou na certa posso evoluir e pegar um emprego como gerente de equipe de software? E minha SCJP ajuda no entender como funcionam as coisas e tal? Existe alguma certificação Java que aborde isso também? A Architect faz isso?
Desculpem as perguntas, mas depois que eu me empolgo…
Bom, acho que Java vai estar em nossas vidas por muitos e muitos anos ainda, uma hora vai parar de sair sistemas novos em java (e isso é logo logo), mas sempre haverá manutenção a ser feita em sistemas legados.
Claro que o fato de ter uma certificação de programador não vai lhe restringir a ser sempre um programador.
Dificilmente você vai sair da sua faculdade e ter o primeiro emprego como “gerente de equipe de software”, para chegar la você
precisa de muita experiencia, começar no chão da fabrica que é ser programador
Essas certificações só vão agregar, por que vai mostrar que você sabe falar (ou tem ideia) a lingua de seus liderados.
[quote=dedejava]
O que (acredito eu) não posso fazer é ficar limitado somente a programação. Engenharia de Software I foi uma das matérias que mais gostei no ano da faculdade… e não houve muito código, somente regras de processo, MVC, reuso e os tipos de processos que podem ser adotados (incremental, em cascata, protótipo…). Isso diz que eu, como um estudante de terceiro ano com uma futura SCJP, sempre vou me restringir a programar ou na certa posso evoluir e pegar um emprego como gerente de equipe de software? E minha SCJP ajuda no entender como funcionam as coisas e tal? Existe alguma certificação Java que aborde isso também? A Architect faz isso?[/quote]
Uma certificação, seja qual for, te ajuda a arrumar emprego quando você não tem nenhum outro diferencial, só isso.
O que você quer aprender sobre processos você consegue com uma boa bibliografia. Para in;icio recomendo o livro do Craig Larman sobre metodoloias (Agile & Iterative Software Development) que ai te dar uma visão bem interessante. Não acredite em nada que ouvir na faculdade sobre ‘engenharia de software’, a maior parte não passa de conceitos mal compreendidos e por isso propagados de maneira errada. Leia bastante.
Software é programar. Se você que gerenciar uma equipe de desenvolvimento você tem que estudar matérias relacionadas à gestão de pessoas. Isso não é uma evolução do programador, um desenvolvedor de software é sempre um desenvolvedor de software. O que você faz estudando estas coisas é diversificando para que possa trabalhar em áreas relacionadas, mas diferentes, com gestão.
[quote=dedejava]É uma pergunta que eu tenho “medo” que a resposta seja SIM.
[/quote]
Vamos pensar que a Sun acaba. Java não é da Sun. O copyright é deles, foram eles que inventaram, mas eles não são mais os donos. Ha muita gente (leia-se empresas e particulares) envolvidos com Java. Ou seja, ha muito dinheiro investido e isso leva a que seja dificil de exterminar. Claro que pode aparecer algo melhor…
Existem muitas linguagens, mas quais são as que o mercado usa para projetos comerciais ? Concerteza ninguem faz sites com assembly. Até poderia, mas não é viável comercialmente. Então, comercialmente Java vai dar cartas por muito bom tempo. Lembre-se sempre que a microsoft cirou o .NET porque viu que a ideia do java era boa. Eu so me arrependendo de não ter aprendido java mais cedo.
Tem coisas que não da para fazer em java ? tem. Mas são coisas muito especificas e cada vez mais existem menos porque a comunidade inventa uma forma de fazer em java ou em jni.
É dificil pensar numa razão para abandonar java.
Mas se vc não quer seguir o ramo comercial, então sim, aprender java não vai ser muito importante não. Aprender a fazer compiladores pode ser muito mais util no ramo académico ou até no cientifico onde linaguagens mais exoticas tem predominancia.
Hmmm…
É bem na parte de administração pelo jeito? Administração com produção de software.?
sergiotaborba
O ramo da pesquisa eu acredito que não seja um bom caminho pra mim, porque eu gosto mesmo é de trabalhar… na verdade, acho que eu gostaria de uma área tipo pesquisa e desenvolvimento dentro de uma empresa… ouvi dizer que é muito bom…
[quote=dedejava]Hmmm…
É bem na parte de administração pelo jeito? Administração com produção de software.?
[/quote]
Sim, ams especializada. Procure sobre uma cosia chamada ‘lean’.
E quanto `fazer pesquisa ou trabalhar’, cuidado. Primeiro porque qualquer desenvolvedor minimamente razoável está pesquisando o tempo todo. Novas maneiras de resolver velhos problemas, velhas maneiras para resolver novos problemas… mesmo que você não dedique tempo à pesquisa pura o ato de conhecer sua área vai te facilitar muito a vida. Procure todos os tópicos de pessoas que não entendem como criar um Domain Model e você vai ver um grupo grande pessoas que não leu e conheceu o suficiente sobre orientação a objetos e arquiteturas de software, e estamos falando de pessoas graduadas, pós graduadas e tudo mais.
Não houve e não há nenhuma linguagem que seja usada para cumprir qualquer tarefa de uma maneira aceitável. java não 'a ferramenta certa para qualquer tarefa e parte da obrigação profissional de um desenvolvedor é saber escolher ferramentas. Cuidado com quem vende Java como a única coisa que importa, a linguagem mais importante e tudo mais. palavra de quem já converteu 3 grandes empresas para Java.
Fique tranquilo que até bem depois de sua morte o Java vai continuar vivo. O que muda é a evolução. Java vai evoluir, para sempre ficar a nível das outras linguagens.
PS: Só eu, ou mais alguém, acha que a versão 7, vai ter umas coisinhas muiiiiito próximas do RoR ?
O máximo que for interessante. Aprender C# se você já sabe Java, por exemplo, é besteira, elas são (eram?) equivalentes (a menos é claro que você pretenda ganhar algum com C#, estu falandod e conhecimento)
Hmmm…
E J2ME? Sempre tive interesse em desenvolver sistemas pra celulares, mas vi num tópico que o desenvolvimento em J2ME é vergonhoso. Sabe me dizer que outras ferramentas (na verdade linguagens) existem de apoio pra sistemas de celulares “coloridos”?
Não consegui achar o tópico pra dar continuidade.
Essa questão de linguagens sempre da no que falar.
Bem, a mimnha opinião é que o amadurecimento de um desenvolvedor de software o leva a enxergar a linguagem a ser utilizada apenas como o meio para alcançar o objetivo e não como um protegido bichinho de estimação.
[quote=MrDataFlex]PS: Só eu, ou mais alguém, acha que a versão 7, vai ter umas coisinhas muiiiiito próximas do RoR ?
[/quote]
Sim, se olharmos a história do EJB, e o quanto as especificações oficiais são paga-pau das idéias do mundo livre, eu não duvido que o JSF 3.x seja algo em que você digita “faces minhaAplicacao” para criar a aplicação e depois o comando “java script/generate scaffold Usuario” para criar o seu CRUD.
Uma dúvida que me aflige há tempos: porque os alunos de faculdades da área de informática se preocupam tanto com o aprendizado de linguagens?
Não seria mais lucrativo em termos de futuro aprender desenvolvimento de sistemas como um todo lendo livros clássicos ao invés de aprender framework da moda? Quem vocês acham que ganha mais: um programador ou um Scrum Master?
Será que tem neguinho que faz faculdade só para pegar um estágio de code monkey? Precisa de faculdade para isto?
Já que o Phillip entrou neste tópico vou lembrar que ele já indicou diversos livros excelentes que eu desconfio que na maioria das faculdades quanto muito se aprende um resumo apostilado por algum professor pirateador e xeroqueiro.
Nah… não entendam dessa maneira… isso definitivamente não vai acontecer.
Não é isso que faz todo o barulho que o RoR está fazendo.
Python já tem esse generators a anos com Django e nem por isso foi tão longe…
O que vai ter de verdade é o JRuby dentro da JVM, o que é realmente interessante, comportando todo o legado existente em java.
[quote=pcalcado]Uma certificação, seja qual for, te ajuda a arrumar emprego quando você não tem nenhum outro diferencial, só isso.
O que você quer aprender sobre processos você consegue com uma boa bibliografia. Para in;icio recomendo o livro do Craig Larman sobre metodoloias (Agile & Iterative Software Development) que ai te dar uma visão bem interessante. Não acredite em nada que ouvir na faculdade sobre ‘engenharia de software’, a maior parte não passa de conceitos mal compreendidos e por isso propagados de maneira errada. Leia bastante.
Software é programar. Se você que gerenciar uma equipe de desenvolvimento você tem que estudar matérias relacionadas à gestão de pessoas. Isso não é uma evolução do programador, um desenvolvedor de software é sempre um desenvolvedor de software. O que você faz estudando estas coisas é diversificando para que possa trabalhar em áreas relacionadas, mas diferentes, com gestão.[/quote]
Agora é que percebi que o Phillip já tinha escrito algo bem parecido com o que penso e inclusive mais adiante citou o Lean.
Na vida de um desenvolvedor programar é uma das habilidades necessárias. Há muito mais coisas a aprender e perder o contato com professores para virar escravo quarterizado, trabalhando 10 horas por dia para alocadora de mão de obra de 3 letrinhas não é uma boa opção em termos de futuro. Se o cara precisa deste dinheiro, então é melhor sair da faculdade.