Case pra discussão: lista de preços  XML
Índice dos Fóruns » Arquitetura de Sistemas
Autor Mensagem
agodinhost
Virtual Machine Man
[Avatar]

Membro desde: 28/03/2006 21:19:16
Mensagens: 590
Localização: RJ, Tijuca
Offline

pcalcado wrote:- Gerenciamentod e transações declarativas
- IoC/DI
- Integração com EJB
- Integração com Hibernate
- Spring MVC
- AOP
- Remoting


Nunca usei spring (sou um zero à esquerda nesse assunto de inversão de componentes tb). Como é o suporte? Como é a demanda de profissionais no mercado?

"The difference between theory and practice is that, in theory, there is no difference between theory and practice".
[WWW] [MSN]
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

saoj wrote:
pcalcado wrote:

- Gerenciamentod e transações declarativas



O que é isso?



http://static.springframework.org/spring/docs/1.2.x/reference/transaction.html

saoj wrote:
pcalcado wrote:
- AOP

Desculpem a ignorancia, mas pensei que isso era IoC e DI. O que mais AOP oferece? (IoC e DI é AOP ???)


http://static.springframework.org/spring/docs/1.2.x/reference/aop.html

saoj wrote:
pcalcado wrote:
- Remoting

O que é isso ?


http://static.springframework.org/spring/docs/1.2.x/reference/remoting.html



A documentaçãod e referência do Spring é excelente, vale uma lida

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
agodinhost
Virtual Machine Man
[Avatar]

Membro desde: 28/03/2006 21:19:16
Mensagens: 590
Localização: RJ, Tijuca
Offline

pcalcado wrote:Considerando que oficialmente não foi lançado, você não está querendo um pouco demais não? De qualquer modo o JBoss tem whitepapers de clientes seus utilizando essa arqutietura.


Não, não estou querendo demais não, desculpe. Foi vc quem disse que usaria o Spring a um ano e meio atrás. Exatamente a mesma situação, IMO.

"The difference between theory and practice is that, in theory, there is no difference between theory and practice".
[WWW] [MSN]
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

agodinhost wrote:Não, não estou querendo demais não, desculpe. Foi vc quem disse que usaria o Spring a um ano e meio atrás. Exatamente a mesma situação, IMO.


Vamos comparar as situações.

Spring: Framework Open Source especificado por Rod Johnson em seu livro como Interface21 depois feito livre. Implementação disponível há mais de um ano.

EJB 3.0: Especificação que ainda não foi oficialmente terminada. Apesar de fabricantes já divulgarem previews e beta, teoricamente uma implementação só surge após a especificação ser terminada e então implementada. Nenhuma implementação oficial finalizada disponível até agora.

Fora que eu não falei que usaria Spring porque A, B ou C estavam usando, falei que usaria porque conhecia o framework

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
agodinhost
Virtual Machine Man
[Avatar]

Membro desde: 28/03/2006 21:19:16
Mensagens: 590
Localização: RJ, Tijuca
Offline

Okay, okay, vc conhecia bem a parada. Mas isso não é o normal. Pelo menos no meu caso o aprendizado é muito, muito lento (meus neurônios já não fazem as sinápses como antigamente, puts).

Eu não encararia, como não encarei entity 1, só isso - principalmente pq não havia apoio algum da gerência usuária. Como já disse não conheço o Spring, conheço superficialmente o Spring MVC.

Cara, o risco de usar ferramentas ou tecnologias novas não é só tecnológico - é pessoal tb. Duvido que vc nunca tenha entrado em algum projeto onde teu gerente tenha lhe dito "Fica calmo, vai dar tudo certo - nossa equipe toda é experiente em struts, em hibernate, etc ..." mais daí, qdo vc começa no projeto, logo de cara, tú se da conta do problema: caraca, se eles sabem struts eu sou o papa!!!

Fora a falácia: teu gerênte começa a propagandear que seu projeto está usando x, y ou z e todo mundo logo fica em cima de vc.

Gosto de arriscar, gosto de ferremantas novas, adoro fussar - mas a gerência tem de apoiar.
EDIT: puts, rimou!!! Dá pra fazer um funk!!!

"The difference between theory and practice is that, in theory, there is no difference between theory and practice".
[WWW] [MSN]
saoj
JWizard
[Avatar]

Membro desde: 09/03/2004 23:34:46
Mensagens: 2667
Localização: Chicago, EUA
Offline

Trasaction do Spring wrote:
Provides a consistent programming model across different transaction APIs such as JTA, JDBC, Hibernate, iBATIS Database Layer and JDO.

Provides a simpler, easier to use, API for programmatic transaction management than most of these transaction APIs

Integrates with the Spring data access abstraction

Supports Spring declarative transaction management



Uma interface Transaction que abstrai a implementação de qualquer api de transação (HibernateTransaction, JDBCTransaction, JTATransaction, etc) não resolve o problema aqui ? Qual a situação onde algo mais complexo se fará necessário ? Essa situação não seria exceção ?

Quanto a AOP, vc usa alguma coisa de AOP no dia a dia ? Qual é a grande sacada de AOP que todos nós devemos usar diariamente em nossos projetos web ? AOP não seria um outro paradigma de programação, que alguns gostam e outros não, preferindo ficar com o bom e velho OO ?

Quanto a Remoting, que parece ser objetos remotos (RMI, RPC, WebServices, etc e tal) isso não anda bem fora de moda? Quem ainda fala com empolgação de webservices hoje em dia ?

Desculpa a pentelhação, Phillip. Sou ignorante desses assuntos e estou fazendo perguntas como um cétido que não consegue ver as vantagens de tudo isso... (Pode me ignorar se tiver sem paciência para me explicar essas coisas complicadas...)



Sergio A Oliveira Jr. - saoj

ExperiMENTA:

Mentawai = http://www.mentaframework.org - Full-stack Java Web Framework com Configuracão Programática
MentaQueue = http://mentaqueue.soliveirajr.com - Queue de alta-performance.
MentaLog = http://mentalog.soliveirajr.com - Non-intrusive, fast, garbage-less, colored and straightforward logging
MentaBean = http://mentabean.soliveirajr.com - Tiny ORM with SQL Builder
MentaRegex = http://mentaregex.soliveirajr.com - Perl-style regex for Java.
MentaContainer = http://mentacontainer.soliveirajr.com - Straightforward IoC, DI e Auto-Wiring
Space4J = http://www.space4j.org - Banco-de-dados de Objetos em Memória
Options-Lib = https://github.com/saoj/options-lib - Ruby classes para ter acesso as opcoes do Yahoo Finance
Selleto = http://www.selleto.com.br
Flipinion = http://www.flipinion.com
Kawai = http://www.kawaiwiki.org


[Email] [WWW]
pcalcado
Moderador
[Avatar]

Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline

saoj wrote:
Uma interface Transaction que abstrai a implementação de qualquer api de transação (HibernateTransaction, JDBCTransaction, JTATransaction, etc) não resolve o problema aqui ? Qual a situação onde algo mais complexo se fará necessário ? Essa situação não seria exceção ?


Antes de mais nada eu teria que criar esta tal interface. Se a cada projeto eu tiver que criar a interface é sinal que estou tendo nenhum reuso.

Mesmo assim esse não é o mais importante. COm Spring (e ele usa AOP apra isso, por acaso) eu posso falar na configuração (por isso é declarativo): o método adicionarUsuario é transacional, nível de isolamento X. Isso é parecido com EJBs exceto por funcionar com qualquer POJO.

saoj wrote:
Quanto a AOP, vc usa alguma coisa de AOP no dia a dia ? Qual é a grande sacada de AOP que todos nós devemos usar diariamente em nossos projetos web ? AOP não seria um outro paradigma de programação, que alguns gostam e outros não, preferindo ficar com o bom e velho OO ?


AOP complementa OO, não substitui. Realmente AOP é mais útil para a construção de frameworks mas uma aplicação grande geralmente implica na criaçãod e um framework interno à esta.

Já precisei do caso clássico de logging mais de uma vez, enviar e-maisl ou mensagens após a conclusão de um método, tornar um método síncrono assíncrono de forma transparente ao cliente, controlar quanto tempo um método demora e abortar em timeout... fora casos simples relacionados ao negócio.

Uma analogia de um AOP simples como do Spring é pensar como filtros HTTP aplicáveis a qualquer POJO gerenciado. Certamente você usa filtros para mais que 'coisas de framework' e o fato de trabalhar numa API que não te ofereça filtros iria ser pertubador.

saoj wrote:
Quanto a Remoting, que parece ser objetos remotos (RMI, RPC, WebServices, etc e tal) isso não anda bem fora de moda? Quem ainda fala com empolgação de webservices hoje em dia ?


Agora que as pessoas estão entendendo o que dá pra fazer com WebServices você acha que eles estão fora de moda? Google: SOA WebServices

No caso dos outros protocolos, geralmente eles são necessários nos meus projetos recentes e ter um bom nível de abstração/integração é fundamental.

Ah, esqueci de citar também o Acegi para segurança.

Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay
[Email] [WWW] [Yahoo!] [MSN]
Mauricio Linhares
Moderador
[Avatar]

Membro desde: 09/01/2005 23:28:22
Mensagens: 3717
Localização: João Pessoa, Paraíba - Brasil
Offline

Também tem a integração com WebWork, Velocity, FreeMarker, AspectJ, Struts (Argh!), Quartz e mais uma dúzia de coisas

O Spring não é só um "framework" mas é também um conjunto de ferramentas e utilitários pra facilitar a vida do programador, e as coisas realmente ficam bem "coladas" lá dentro

Pra quem tiver com coragem, os dois primeiros livros do Rod Johnson sobre o Spring são ótimos (o primeiro que ele discute o desenvolvimento J2EE e o outro que ele já discute o Spring e outros frameworks "leves).



E pra começar a brincar com o Spring, tem esse livrão aqui:


Meu blog sobre desenvolvimento | My Last.fm | @mauriciojr

Screencast de Introdução a linguagem Objective-C
[WWW]
agodinhost
Virtual Machine Man
[Avatar]

Membro desde: 28/03/2006 21:19:16
Mensagens: 590
Localização: RJ, Tijuca
Offline

Maurício Linhares wrote:os dois primeiros livros do Rod Johnson sobre o Spring são ótimos (o primeiro que ele discute o desenvolvimento J2EE e o outro que ele já discute o Spring e outros frameworks "leves).
puts, esse primeiro eu tenho!!! nunca lí ok? baixei o pdf mas ainda não consegui tempo pra ler.

bom saber, valeu mesmo pela dica.

com certeza vou precisar ler, vcs estão falando tão bem do spring que eu ainda não consegui formar opinião sobre os contras.

"The difference between theory and practice is that, in theory, there is no difference between theory and practice".
[WWW] [MSN]
 
Índice dos Fóruns » Arquitetura de Sistemas
Ir para:   
Powered by JForum 2.1.8 © JForum Team