sou novo em Scala, apesar de já ter estudado ano passado, foi só esse ano graças ao curso Coursera "Functional Programming in Scala" que eu realmente evolui na linguagem e também com programação funcional! Aliás, completei ele esta semana, e realmente é muito bom para quem está começando.
Só que como tudo é novo, ficou algumas dúvidas, como tenho background em Java e C#, e estou querendo utilizar Scala em meus projetos pessoais para me aprofundar mais, pretendo estudar o play framework, como vocês utilizam essa linguagem em seus projetos web, digo utilizam essa linguagem puramente funcional ou utilizam objetos mutáveis / stateful ? Quais as vantagens e desvantagens? Se conhecem algum livro / artigo que poderiam me indicar, seria muito bom!
Um livro que eu gostei como segundo passo na linguagem foi o Scala in
Depth, quem escreveu foi um dos caras que trabalham na TypeSafe, Josh
Suereth. Ele dá várias dicas interessantes, mesmo que algumas passem do
limite :). Legal que você tenha interesse no Play, ele é realmente um
framework interessante, completamente focado no usuário final. A ideia
dele, e que atingem com algum sucesso, é a de deixar o desenvolvimento web
com uma linguagem compilada, tipo java e scala, mais perto do que a gente
tem com um ruby da vida. Dá uma olhada no site que a documentação é muito
boa!.
Em relação ao lance dos objetos, trabalho com eles mantendo estado e
geralmente sendo mutáveis. Numa app web tradicional, não vejo motivo para
ficar tendo trabalho em manter todos os seus objetos imutáveis. A gente usa
o objeto e descarta quase que no mesmo instante. Não joga para um
processamento paralelo nem nada... Só penso em coisas imutáveis quando
realmente mudar estado pode me atrapalhar, se não me atrapalha não
implemento.
Abraço,
Alberto
2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse ano
> graças ao curso Coursera "Functional Programming in Scala" que eu realmente
> evolui na linguagem e também com programação funcional! Aliás, completei
> ele esta semana, e realmente é muito bom para quem está começando.
> Só que como tudo é novo, ficou algumas dúvidas, como tenho background em
> Java e C#, e estou querendo utilizar Scala em meus projetos pessoais para
> me aprofundar mais, pretendo estudar o play framework, como vocês utilizam
> essa linguagem em seus projetos web, digo utilizam essa linguagem puramente
> funcional ou utilizam objetos mutáveis / stateful ? Quais as vantagens e
> desvantagens? Se conhecem algum livro / artigo que poderiam me indicar,
> seria muito bom!
Do modo como vejo as coisas, ele permite o desenvolvimento de aplicações
web num estilo mais funcional.
Quase não uso objetos mutaveis com ele.
O ponto que alguns acham negativo é que por ser voltado a um estilo mais
funcional de se programar e por permitir fazer a mesma coisa de várias
maneiras diferentes, ele pode parecer um pouco mais dificil ou confuso. Mas
se a pessoa não se assustar com essa primeira impressão, ficará
impressionada com o framework.
Sobre a sua pergunta de como utilizamos a linguagem em projetos, bem, eu
sempre procurei utilizar as vantagens que o estilo funcional trazem para a
programação, pois como eu costumo dizer, se vc quer continuar programando
OO, continue com o java/C#, etc. Não faz muito sentido apenas tentar
aplicar as técnicas de Java/C# em Scala pois você só estará fazendo uma
tradução de uma linguagem para outra, sem realmente aproveitar o que Scala
tem de melhor para oferecer.
Quando for escrever sua aplicação, tente pensar em soluções funcionais, em
como tentar resolver o problema sem usar objetos mutaveis.
Acho que é isso.
Abraços
2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse ano
> graças ao curso Coursera "Functional Programming in Scala" que eu realmente
> evolui na linguagem e também com programação funcional! Aliás, completei
> ele esta semana, e realmente é muito bom para quem está começando.
> Só que como tudo é novo, ficou algumas dúvidas, como tenho background em
> Java e C#, e estou querendo utilizar Scala em meus projetos pessoais para
> me aprofundar mais, pretendo estudar o play framework, como vocês utilizam
> essa linguagem em seus projetos web, digo utilizam essa linguagem puramente
> funcional ou utilizam objetos mutáveis / stateful ? Quais as vantagens e
> desvantagens? Se conhecem algum livro / artigo que poderiam me indicar,
> seria muito bom!
Primeiramente peço desculpas por sequestrar a thread, mas gostaria de
aproveitar o comentario do amigo Gilberto para lhe fazer uma pergunta.
Gilberto, venho estudando o Lift, mas tenho tido uma dificuldade enorme com
o ambiente. Você poderia dar uma dica de qual ambiente você usa?
Eu como usuario de eclipse, comecei com a Scala IDE usando o plugin do
Jrebel. Achei que a vida fosse ser facil com o Jrebel recarregando as
classes, mas nem sempre é isso que acontece e tenho de ficar toda hora
derrubando o jetty ou até mesmo o eclipse em algumas situações.
Se puder comentar um pouco sobre qual ambiente que você usa, e como
seta-lo, ficaria grato.
Obrigado,
Atenciosamente,
Marcelo Magno
Em 6 de novembro de 2012 08:55, Gilberto Garcia <giba....@gmail.com>escreveu:
> Do modo como vejo as coisas, ele permite o desenvolvimento de aplicações
> web num estilo mais funcional.
> Quase não uso objetos mutaveis com ele.
> O ponto que alguns acham negativo é que por ser voltado a um estilo mais
> funcional de se programar e por permitir fazer a mesma coisa de várias
> maneiras diferentes, ele pode parecer um pouco mais dificil ou confuso. Mas
> se a pessoa não se assustar com essa primeira impressão, ficará
> impressionada com o framework.
> Sobre a sua pergunta de como utilizamos a linguagem em projetos, bem, eu
> sempre procurei utilizar as vantagens que o estilo funcional trazem para a
> programação, pois como eu costumo dizer, se vc quer continuar programando
> OO, continue com o java/C#, etc. Não faz muito sentido apenas tentar
> aplicar as técnicas de Java/C# em Scala pois você só estará fazendo uma
> tradução de uma linguagem para outra, sem realmente aproveitar o que Scala
> tem de melhor para oferecer.
> Quando for escrever sua aplicação, tente pensar em soluções funcionais, em
> como tentar resolver o problema sem usar objetos mutaveis.
> Acho que é isso.
> Abraços
> 2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
>> Olá pessoal,
>> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse ano
>> graças ao curso Coursera "Functional Programming in Scala" que eu realmente
>> evolui na linguagem e também com programação funcional! Aliás, completei
>> ele esta semana, e realmente é muito bom para quem está começando.
>> Só que como tudo é novo, ficou algumas dúvidas, como tenho background em
>> Java e C#, e estou querendo utilizar Scala em meus projetos pessoais para
>> me aprofundar mais, pretendo estudar o play framework, como vocês utilizam
>> essa linguagem em seus projetos web, digo utilizam essa linguagem puramente
>> funcional ou utilizam objetos mutáveis / stateful ? Quais as vantagens e
>> desvantagens? Se conhecem algum livro / artigo que poderiam me indicar,
>> seria muito bom!
SBT (0.11.2)
JRebel setado no SBT, ou seja, quando eu starto o SBT o JRebel sobe junto.
De tempos em tempos tenho que matar o SBT por problemas de PermGem, etc.
por isso subo ele por fora da IDE. assim qdo tenho que matar ele é apenas
ele que morre e não a IDE toda.
> Primeiramente peço desculpas por sequestrar a thread, mas gostaria de
> aproveitar o comentario do amigo Gilberto para lhe fazer uma pergunta.
> Gilberto, venho estudando o Lift, mas tenho tido uma dificuldade enorme
> com o ambiente. Você poderia dar uma dica de qual ambiente você usa?
> Eu como usuario de eclipse, comecei com a Scala IDE usando o plugin do
> Jrebel. Achei que a vida fosse ser facil com o Jrebel recarregando as
> classes, mas nem sempre é isso que acontece e tenho de ficar toda hora
> derrubando o jetty ou até mesmo o eclipse em algumas situações.
> Se puder comentar um pouco sobre qual ambiente que você usa, e como
> seta-lo, ficaria grato.
> Obrigado,
> Atenciosamente,
> Marcelo Magno
> Em 6 de novembro de 2012 08:55, Gilberto Garcia <giba....@gmail.com>escreveu:
> Oi Diego,
>> Não preciso comentar que adoro o Lift né?
>> Do modo como vejo as coisas, ele permite o desenvolvimento de aplicações
>> web num estilo mais funcional.
>> Quase não uso objetos mutaveis com ele.
>> O ponto que alguns acham negativo é que por ser voltado a um estilo mais
>> funcional de se programar e por permitir fazer a mesma coisa de várias
>> maneiras diferentes, ele pode parecer um pouco mais dificil ou confuso. Mas
>> se a pessoa não se assustar com essa primeira impressão, ficará
>> impressionada com o framework.
>> Sobre a sua pergunta de como utilizamos a linguagem em projetos, bem, eu
>> sempre procurei utilizar as vantagens que o estilo funcional trazem para a
>> programação, pois como eu costumo dizer, se vc quer continuar programando
>> OO, continue com o java/C#, etc. Não faz muito sentido apenas tentar
>> aplicar as técnicas de Java/C# em Scala pois você só estará fazendo uma
>> tradução de uma linguagem para outra, sem realmente aproveitar o que Scala
>> tem de melhor para oferecer.
>> Quando for escrever sua aplicação, tente pensar em soluções funcionais,
>> em como tentar resolver o problema sem usar objetos mutaveis.
>> Acho que é isso.
>> Abraços
>> 2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
>>> Olá pessoal,
>>> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse
>>> ano graças ao curso Coursera "Functional Programming in Scala" que eu
>>> realmente evolui na linguagem e também com programação funcional! Aliás,
>>> completei ele esta semana, e realmente é muito bom para quem está começando.
>>> Só que como tudo é novo, ficou algumas dúvidas, como tenho background em
>>> Java e C#, e estou querendo utilizar Scala em meus projetos pessoais para
>>> me aprofundar mais, pretendo estudar o play framework, como vocês utilizam
>>> essa linguagem em seus projetos web, digo utilizam essa linguagem puramente
>>> funcional ou utilizam objetos mutáveis / stateful ? Quais as vantagens e
>>> desvantagens? Se conhecem algum livro / artigo que poderiam me indicar,
>>> seria muito bom!
Vou testar desse jeito, já imaginava que usar o Jrebel por dentro do SBT
poderia ser mais leve, mas não tinha ideia de como configura-lo.
Em tempo: Vc conhece alguma lista em portugues para Lift?
Estou brincando com aquele FOBO e estou me amarrando na brincadeira, e
queria tirar umas duvidas, mas algumas respostas lah na lista principal
dadas pelo proprio David me deixaram meio cabreiro...
> SBT (0.11.2)
> JRebel setado no SBT, ou seja, quando eu starto o SBT o JRebel sobe junto.
> De tempos em tempos tenho que matar o SBT por problemas de PermGem, etc.
> por isso subo ele por fora da IDE. assim qdo tenho que matar ele é apenas
> ele que morre e não a IDE toda.
> 2012/11/8 Marcelo Magno <marceloma...@gmail.com>
>> Bom dia,
>> Primeiramente peço desculpas por sequestrar a thread, mas gostaria de
>> aproveitar o comentario do amigo Gilberto para lhe fazer uma pergunta.
>> Gilberto, venho estudando o Lift, mas tenho tido uma dificuldade enorme
>> com o ambiente. Você poderia dar uma dica de qual ambiente você usa?
>> Eu como usuario de eclipse, comecei com a Scala IDE usando o plugin do
>> Jrebel. Achei que a vida fosse ser facil com o Jrebel recarregando as
>> classes, mas nem sempre é isso que acontece e tenho de ficar toda hora
>> derrubando o jetty ou até mesmo o eclipse em algumas situações.
>> Se puder comentar um pouco sobre qual ambiente que você usa, e como
>> seta-lo, ficaria grato.
>> Obrigado,
>> Atenciosamente,
>> Marcelo Magno
>> Em 6 de novembro de 2012 08:55, Gilberto Garcia <giba....@gmail.com>escreveu:
>> Oi Diego,
>>> Não preciso comentar que adoro o Lift né?
>>> Do modo como vejo as coisas, ele permite o desenvolvimento de aplicações
>>> web num estilo mais funcional.
>>> Quase não uso objetos mutaveis com ele.
>>> O ponto que alguns acham negativo é que por ser voltado a um estilo mais
>>> funcional de se programar e por permitir fazer a mesma coisa de várias
>>> maneiras diferentes, ele pode parecer um pouco mais dificil ou confuso. Mas
>>> se a pessoa não se assustar com essa primeira impressão, ficará
>>> impressionada com o framework.
>>> Sobre a sua pergunta de como utilizamos a linguagem em projetos, bem, eu
>>> sempre procurei utilizar as vantagens que o estilo funcional trazem para a
>>> programação, pois como eu costumo dizer, se vc quer continuar programando
>>> OO, continue com o java/C#, etc. Não faz muito sentido apenas tentar
>>> aplicar as técnicas de Java/C# em Scala pois você só estará fazendo uma
>>> tradução de uma linguagem para outra, sem realmente aproveitar o que Scala
>>> tem de melhor para oferecer.
>>> Quando for escrever sua aplicação, tente pensar em soluções funcionais,
>>> em como tentar resolver o problema sem usar objetos mutaveis.
>>> Acho que é isso.
>>> Abraços
>>> 2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
>>>> Olá pessoal,
>>>> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse
>>>> ano graças ao curso Coursera "Functional Programming in Scala" que eu
>>>> realmente evolui na linguagem e também com programação funcional! Aliás,
>>>> completei ele esta semana, e realmente é muito bom para quem está começando.
>>>> Só que como tudo é novo, ficou algumas dúvidas, como tenho background
>>>> em Java e C#, e estou querendo utilizar Scala em meus projetos pessoais
>>>> para me aprofundar mais, pretendo estudar o play framework, como vocês
>>>> utilizam essa linguagem em seus projetos web, digo utilizam essa linguagem
>>>> puramente funcional ou utilizam objetos mutáveis / stateful ? Quais as
>>>> vantagens e desvantagens? Se conhecem algum livro / artigo que poderiam me
>>>> indicar, seria muito bom!
> Vou testar desse jeito, já imaginava que usar o Jrebel por dentro do SBT
> poderia ser mais leve, mas não tinha ideia de como configura-lo.
> Em tempo: Vc conhece alguma lista em portugues para Lift?
> Estou brincando com aquele FOBO e estou me amarrando na brincadeira, e
> queria tirar umas duvidas, mas algumas respostas lah na lista principal
> dadas pelo proprio David me deixaram meio cabreiro...
> Em 8 de novembro de 2012 10:05, Gilberto Garcia <giba....@gmail.com>escreveu:
> Eu utilizo:
>> SBT (0.11.2)
>> JRebel setado no SBT, ou seja, quando eu starto o SBT o JRebel sobe junto.
>> De tempos em tempos tenho que matar o SBT por problemas de PermGem, etc.
>> por isso subo ele por fora da IDE. assim qdo tenho que matar ele é apenas
>> ele que morre e não a IDE toda.
>> 2012/11/8 Marcelo Magno <marceloma...@gmail.com>
>>> Bom dia,
>>> Primeiramente peço desculpas por sequestrar a thread, mas gostaria de
>>> aproveitar o comentario do amigo Gilberto para lhe fazer uma pergunta.
>>> Gilberto, venho estudando o Lift, mas tenho tido uma dificuldade enorme
>>> com o ambiente. Você poderia dar uma dica de qual ambiente você usa?
>>> Eu como usuario de eclipse, comecei com a Scala IDE usando o plugin do
>>> Jrebel. Achei que a vida fosse ser facil com o Jrebel recarregando as
>>> classes, mas nem sempre é isso que acontece e tenho de ficar toda hora
>>> derrubando o jetty ou até mesmo o eclipse em algumas situações.
>>> Se puder comentar um pouco sobre qual ambiente que você usa, e como
>>> seta-lo, ficaria grato.
>>> Obrigado,
>>> Atenciosamente,
>>> Marcelo Magno
>>> Em 6 de novembro de 2012 08:55, Gilberto Garcia <giba....@gmail.com>escreveu:
>>> Oi Diego,
>>>> Não preciso comentar que adoro o Lift né?
>>>> Do modo como vejo as coisas, ele permite o desenvolvimento de
>>>> aplicações web num estilo mais funcional.
>>>> Quase não uso objetos mutaveis com ele.
>>>> O ponto que alguns acham negativo é que por ser voltado a um estilo
>>>> mais funcional de se programar e por permitir fazer a mesma coisa de várias
>>>> maneiras diferentes, ele pode parecer um pouco mais dificil ou confuso. Mas
>>>> se a pessoa não se assustar com essa primeira impressão, ficará
>>>> impressionada com o framework.
>>>> Sobre a sua pergunta de como utilizamos a linguagem em projetos, bem,
>>>> eu sempre procurei utilizar as vantagens que o estilo funcional trazem para
>>>> a programação, pois como eu costumo dizer, se vc quer continuar programando
>>>> OO, continue com o java/C#, etc. Não faz muito sentido apenas tentar
>>>> aplicar as técnicas de Java/C# em Scala pois você só estará fazendo uma
>>>> tradução de uma linguagem para outra, sem realmente aproveitar o que Scala
>>>> tem de melhor para oferecer.
>>>> Quando for escrever sua aplicação, tente pensar em soluções funcionais,
>>>> em como tentar resolver o problema sem usar objetos mutaveis.
>>>> Acho que é isso.
>>>> Abraços
>>>> 2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
>>>>> Olá pessoal,
>>>>> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse
>>>>> ano graças ao curso Coursera "Functional Programming in Scala" que eu
>>>>> realmente evolui na linguagem e também com programação funcional! Aliás,
>>>>> completei ele esta semana, e realmente é muito bom para quem está começando.
>>>>> Só que como tudo é novo, ficou algumas dúvidas, como tenho background
>>>>> em Java e C#, e estou querendo utilizar Scala em meus projetos pessoais
>>>>> para me aprofundar mais, pretendo estudar o play framework, como vocês
>>>>> utilizam essa linguagem em seus projetos web, digo utilizam essa linguagem
>>>>> puramente funcional ou utilizam objetos mutáveis / stateful ? Quais as
>>>>> vantagens e desvantagens? Se conhecem algum livro / artigo que poderiam me
>>>>> indicar, seria muito bom!
> Seria legal se mais pessoas se interessasem e ajudassem a tornar a lista
> mais ativa :)
> Mas não se assute com a lista em inglês, o pessoal é sempre bem solicito e
> ajudam bastante. E ter o David respondendo as questões é um plus :D
> 2012/11/8 Marcelo Magno <marceloma...@gmail.com>
>> Gilberto,
>> Vou testar desse jeito, já imaginava que usar o Jrebel por dentro do SBT
>> poderia ser mais leve, mas não tinha ideia de como configura-lo.
>> Em tempo: Vc conhece alguma lista em portugues para Lift?
>> Estou brincando com aquele FOBO e estou me amarrando na brincadeira, e
>> queria tirar umas duvidas, mas algumas respostas lah na lista principal
>> dadas pelo proprio David me deixaram meio cabreiro...
>> Em 8 de novembro de 2012 10:05, Gilberto Garcia <giba....@gmail.com>escreveu:
>> Eu utilizo:
>>> SBT (0.11.2)
>>> JRebel setado no SBT, ou seja, quando eu starto o SBT o JRebel sobe
>>> junto.
>>> De tempos em tempos tenho que matar o SBT por problemas de PermGem, etc.
>>> por isso subo ele por fora da IDE. assim qdo tenho que matar ele é apenas
>>> ele que morre e não a IDE toda.
>>> 2012/11/8 Marcelo Magno <marceloma...@gmail.com>
>>>> Bom dia,
>>>> Primeiramente peço desculpas por sequestrar a thread, mas gostaria de
>>>> aproveitar o comentario do amigo Gilberto para lhe fazer uma pergunta.
>>>> Gilberto, venho estudando o Lift, mas tenho tido uma dificuldade enorme
>>>> com o ambiente. Você poderia dar uma dica de qual ambiente você usa?
>>>> Eu como usuario de eclipse, comecei com a Scala IDE usando o plugin do
>>>> Jrebel. Achei que a vida fosse ser facil com o Jrebel recarregando as
>>>> classes, mas nem sempre é isso que acontece e tenho de ficar toda hora
>>>> derrubando o jetty ou até mesmo o eclipse em algumas situações.
>>>> Se puder comentar um pouco sobre qual ambiente que você usa, e como
>>>> seta-lo, ficaria grato.
>>>> Obrigado,
>>>> Atenciosamente,
>>>> Marcelo Magno
>>>> Em 6 de novembro de 2012 08:55, Gilberto Garcia <giba....@gmail.com>escreveu:
>>>> Oi Diego,
>>>>> Não preciso comentar que adoro o Lift né?
>>>>> Do modo como vejo as coisas, ele permite o desenvolvimento de
>>>>> aplicações web num estilo mais funcional.
>>>>> Quase não uso objetos mutaveis com ele.
>>>>> O ponto que alguns acham negativo é que por ser voltado a um estilo
>>>>> mais funcional de se programar e por permitir fazer a mesma coisa de várias
>>>>> maneiras diferentes, ele pode parecer um pouco mais dificil ou confuso. Mas
>>>>> se a pessoa não se assustar com essa primeira impressão, ficará
>>>>> impressionada com o framework.
>>>>> Sobre a sua pergunta de como utilizamos a linguagem em projetos, bem,
>>>>> eu sempre procurei utilizar as vantagens que o estilo funcional trazem para
>>>>> a programação, pois como eu costumo dizer, se vc quer continuar programando
>>>>> OO, continue com o java/C#, etc. Não faz muito sentido apenas tentar
>>>>> aplicar as técnicas de Java/C# em Scala pois você só estará fazendo uma
>>>>> tradução de uma linguagem para outra, sem realmente aproveitar o que Scala
>>>>> tem de melhor para oferecer.
>>>>> Quando for escrever sua aplicação, tente pensar em soluções
>>>>> funcionais, em como tentar resolver o problema sem usar objetos mutaveis.
>>>>> Acho que é isso.
>>>>> Abraços
>>>>> 2012/11/6 Diego Armando Gusava <diegogus...@gmail.com>
>>>>>> Olá pessoal,
>>>>>> sou novo em Scala, apesar de já ter estudado ano passado, foi só esse
>>>>>> ano graças ao curso Coursera "Functional Programming in Scala" que eu
>>>>>> realmente evolui na linguagem e também com programação funcional! Aliás,
>>>>>> completei ele esta semana, e realmente é muito bom para quem está começando.
>>>>>> Só que como tudo é novo, ficou algumas dúvidas, como tenho background
>>>>>> em Java e C#, e estou querendo utilizar Scala em meus projetos pessoais
>>>>>> para me aprofundar mais, pretendo estudar o play framework, como vocês
>>>>>> utilizam essa linguagem em seus projetos web, digo utilizam essa linguagem
>>>>>> puramente funcional ou utilizam objetos mutáveis / stateful ? Quais as
>>>>>> vantagens e desvantagens? Se conhecem algum livro / artigo que poderiam me
>>>>>> indicar, seria muito bom!