não é exatamente igual ao html:text do Struts?
[/quote]
Não conheço o Struts, mas de cara dá pra notar uma diferença.
O mtw:input suporta type=“password,text,checkbox,radio”. Esse html:text suporta só type=“text”, ou o nome é misleading?
Como não conheço não posso comparar, mas esse esquema do mentawai de pegar do output e depois do input é muito útil e economiza um tempo grande antes gasto com programação chata e repetitiva.
MVC sem XML, extremamente simples e fácil de instalar, configurar e usar, flexível, pequeno, sem dependências externas e suporta tudo que o Struts/WebWork suportam.
Motivação/Missão:
Não é fácil entender e dominar o Struts.
Não é fácil entender e dominar o WebWork.
Não é fácil entender e dominar o SpringMVC
É bastante fácil dominar e entender o Mentawai. Em 30 minutos vc explica tudo para um cara que nunca viu e ele já pode começar programando.
Por isso que as pessoas agora não querem abandonar o Struts, pois investiram muito tempo para dominá-lo. Quando vc é obrigado a investir tempo numa coisa para dominá-lo, cria-se uma simbiose e começa-se a dizer perigosamente que há um padrão de mercado.
Quando vc investe pouco tempo para utilizar algo, o risco é baixo e não há simbiose.
Não conheço o WebWork e o SpringMVC, só o Struts. Um cara consegue ensinar o básico dele em 2 horas e ele já pode sair programando. Se quiser explorar todo o conteúdo dele, aí sim, demora mais pra aprender, mas se quer só o básico (que já resolve uns 99% dos problemas), isso dá pra aprender rapidinho.
O Struts tem sérios problemas de arquitetura, e por isso é que o pessoal está abandonando ele… Não vejo muito padrão de mercado nisso, muita gente usa Struts, Webwork, JBanana, frameworks proprietários etc e tal. A grande verdade é que você é obrigado a trabalhar com o que a empresa trabalha, na empresa que eu trabalhava antes, usavamos struts, logo em seguida passamos a usar um framework desenvolvido internamente (todo orientado a objetos), na empresa que trabalho hoje também usamos um framework desenvolvido pela empresa… Atualmente tá aparecendo um tal de Lazlo (alguém já ouviu falar? http://www.laszlosystems.com/), não conheço mas parece que é bom.
O que quero dizer com isso é que se não tiver uma coisa nova, não vejo necessidade de usar entendeu? Por exemplo, a única coisa que você falou até agora foi o <mtw:input type=“text” name=“fullname” size=“50” maxlength=“60” />, mas isso as outras ferramentas já fazem… Ah, esqueci, e tirou a configuração por XML, que é uma coisa bem tediosa (tem projeto que você tem que configurar 5 arquivos XML!, pra que isso?).
Quais são os recursos do Mentawai? O que eu posso fazer com ele? Tem algum lugar que dá pra ver todos os recursos disponíveis dele?
Essa conclusão não foi minha, mas de algumas pessoas que fizeram a comparação. Abaixo vai uma como exemplo: (desculpe o espanhol)
Pra quem não gosta de “programação” XML como eu e outros, isso já faz uma diferença grande!
O Mentawai vc consegue dominar todo e completamente em 2 horas. Tem cursos por aí de Struts de 40 horas!
Vc deve estar falando do acoplamento com o servlet container. Concordo contigo, isso é horrível. O WebWork e o Mentawai já resolvem isso muito bem.
Entretanto muita gente ainda defende e usa o Struts. Na minha opinião por uma simples questão de comodidade. No começo falaram que era bom e algumas pessoas embarcaram na onda investindo tempo para aprender o framework. Agora não querem abrir mão desse investimento.
Concordo. Por isso que antes de eu entrar em qualquer projeto eu pergunto: "Posso opinar na arquitetura e framework ou isso vai ser ditado por um gerente ditador?
Concordo de novo, mas apenas o fato de ser 10 vezes mais fácil que os outros já é um motivo forte para considerá-lo. Estou pensando em termos produtivos. Eu preciso fazer um site complexo e não quero ficar brigando com o framework. Quero abstrair o framework na minha cabeça e me concentrar no meu negócio que é o site. Já programou em C ??? Então sabe o que estou dizendo. Quando vc faz um programa em C vc passa 50% do tempo brigando com a linguagem e apenas 50% do tempo pensando nas suas regras de negócio. Isso não é produtivo. Java veio e mudou isso de forma maravilhosa. Vejo o mesmo problema hoje em dia com Struts, WebWork, SpringMVC, etc. Os autores desses frameworks querem mostrar poder e nunca se perguntam se o que estão fazendo vai ser claro para uma ameba. O Mentawai visa ser o mais claro, simples e fácil possível.
Tem muita coisa que pode ser feito de uma maneira ridicularmente fácil: validação, i18n, mensagens dinamicas, value object, injection, etc.
Olá Sergio,
Cara… eu vi a matéria sobre teu Framework no JavaWorld. Parabéns cara!
Gostei muito mesmo… ainda não programei com ele… mas vendo os exemplos… gostei muito. Odeio XML tbm!
A única utilidade do XML é que vc pode alterar alguma configuração sem precisar recompilar quando a aplicação ja está em produção. E não precisa necessariamente do desenvolvedor criador do sistema.
Mas pela minha experiencia, que não é muito grande em sistemas web, nunca vi alguem alterar algum valor de XML do framework quando uma aplicação já está em produção. Logo, a sua visão de configurar tudo no Java é muito legal e produtiva.
Dificilmente alguem vai mudar uma regra de validação, por exempo. E se precisar mudar é so implementar a leitura de um XML.
Acho que vou usar esse framework quando precisa fazer um projeto web da próxima vez…