Uma coisinha que achei estranha em Scala foram as “case classes”.
Ainda não consegui ver grande vantagens nela. Alguém já utilizou ? Foi realmente interessante ?
Uma coisinha que achei estranha em Scala foram as “case classes”.
Ainda não consegui ver grande vantagens nela. Alguém já utilizou ? Foi realmente interessante ?
[quote=ViniGodoy]
Como eu falei, não é necessário fechar os olhos para outras linguagens. O que sou contra é você assumir que a troca de uma linguagem para outra é uma operação sem custo.[/quote]
Fechar os olhos, ta maluco? Pelo contrário, quem esta começando tem que meter a cara nessas linguas mesmo porque é futuro. O futuro do programador Java é setores específicos onde OO vai prevalecer, como simulações, design de jogos, programar interfaces gráficas em JavaFX Script. Mas aplicações de regras de negócio, webservices, aplicações servidoras em geral, onde é preciso tirar proveito de programação funcional em hardware multicore aplicações escritas em JAva mesmo serão cada vez menos.
[quote=ViniGodoy]
Aliás, muitas tecnologias novas sequer irão se fixar no mercado. Por isso, ser um pouco conservador também pode poupar custos.[/quote]
Seguir a manada pode ser bom pra quem esta estabelecido no mercado numa posição confortável. Para o resto não tenho certeza se há o mesmo “custo” que vc se refere. Essas novas linguagens nem são tão complexas para aprender quando comparadas com Java, muitas são bem mais simples até.
[quote=ViniGodoy]
Talvez o Scala não precise, até porque o Hibernate faz mapeamento objeto relacional, e scala nem sequer é OO, e sim funcional.[/quote]
[quote=ViniGodoy]
Não precisa ir muito longe. Recentemente troquei do Java para o C#, duas tecnologias praticamente iguais. Entretanto, no C#, tive que descobrir que APIs usar para persistência, ou para inversão de controle. Sabia que existia o Spring e o Hibernate para C#, mas eles teriam a mesma confiabilidade? Usariam os recursos do C# com eficiência? Muitas versões para outras linguagens não são tão boas fora de seu ambiente original. E o que usar para gerar relatórios? Não adianta, trocou a tecnologia, novas curvas de aprendizado, novas descobertas de fornecedores, etc. E tudo isso é custo.[/quote]
Trocar Java por C# vc nem saiu do lugar. Trocou uma linguagem pela copia da mesma.
[quote=ViniGodoy]Só para ressaltar. Não estou dizendo que você deve fechar os olhos para outras linguagens/plataformas. Aliás, qualquer equipe de informática que queira se manter atualizada deve estar bem atento ao mercado, e experimentar tecnologias.
Mas acho que você deve mensurar bem se o ganho de produtividade é real, ou não. Se a tecnologia é realmente superior, ou se muito do que se fala dela é marketing.
Comece com um projeto piloto, pague a curva de aprendizado para um ou dois funcionários. Avalie se o desempenho dele foi realmente superior, obtenha feedback dele sobre os problemas encontrados na nova tecnologia. Veja se ela é realmente muito mais adequada para o tipo de problemas que você resolve. Só então faça a troca. Mas faça com base em dados concretos, não em achismos, modismos ou pq a revista “InfoQ” do mês disse que tem que ser assim.[/quote]
Finalmente uma opinião sensata voltada aos empreendedores que frequentam o GUJ.
[quote=Ssalgado]Uma coisinha que achei estranha em Scala foram as “case classes”.
Ainda não consegui ver grande vantagens nela. Alguém já utilizou ? Foi realmente interessante ?
http://www.scala-lang.org/node/107[/quote]
Também achei a documentação complicada. Se Scala pretende ganhar mais adeptos precisa uma documentação mais em sintonia com a realidade dos usuários. Muitos termos e conceitos complexos pra um simples “tour” pela linguagem. Poderia ser mais objetiva.
[quote=mochuara][quote=ViniGodoy]
Como eu falei, não é necessário fechar os olhos para outras linguagens. O que sou contra é você assumir que a troca de uma linguagem para outra é uma operação sem custo.[/quote]
Fechar os olhos, ta maluco? [/quote]
Melhor você reler o meu quote. Em especial a palavra “não”, que dá um sentido de “negação”.
Estou falando da perspectiva de uma equipe, não de um único programador. Para um só programador, é fácil mudar de linguagem. Mas, sendo você um gerente de projetos, com uma equipe já estabelecida, você REALMENTE mandaria o seu time INTEIRO estudar tecnologias novas assim que elas surgissem?
Quando falta argumento técnico, é melhor partir para agressão, certo?
O que justifica ainda mais minha posição. Se para uma mudança simples esses problemas já existiram, o que dizer de uma mudança completa de paradigma? Os problemas estarão lá, e ainda mais agravados.