Ajuda: Desenvolvendo uma Aplicação Web

Olá Pessoal!

Primeiramente gostaria de agradecer aos participantes do fórum pela ajuda dada às pessoas menos instruídas e pela nobre atitude de compartilhar conhecimento com carinho e boa vontade.

Estou a dois anos afastado da Universidade devido a alguns problemas pessoais. Eu estive prestes a abandonar o curso, mas decidi que não poderia jogar quatro anos de dedicação, conhecimento e tempo fora, tendo em vista que esse é o último ano que tenho direito de permanecer na Universidade.

Tenho que desenvolver um projeto de estágio para poder concluir meu curso, porém encontrei muita dificuldade para encontrar uma empresa para desenvolver um projeto, e quando achei que tudo seria perdido consegui estabelecer um acordo entre a empresa que eu trabalho e a universidade.

Irei desenvolver um sistema web afim de integrar informações relacionadas aos serviços executados pelas quatro unidades da empresa que trabalho. A princípio é um sistema extremamente simples, para se ter ideia acredito que irei precisar de uma ou duas tabelas em um banco de dados, armazenando informações sobre localização da base, data e hora da execução de uma ordem de serviço, número da ordem de serviço, tipo de serviço, quem executou, etc e tal. E sobre essa base de informações irei precisar de um mecanismo para gerar alguns relatórios.

O meu problema é que eu estou completamente enferrujado na pratica de programação, estou desatualizado quanto às tecnologias atuais e o pior é que não tenho orientador para desenvolver este trabalho.

Procurei este fórum porque java é a linguagem que tenho mais familiaridade, é muito indicada para este tipo de aplicação e há uma grande oferta de material.

A ajuda que eu peço a vocês é quanto a me informar quais tecnologias seriam mais indicadas para realizar este trabalho, o que estudar (indicando livros se for possível) , que passos vocês acreditam que eu deveria seguir e talz…

Gostaria de lembrar a vocês que utilizo a IDE Netbeans e o banco de dados que tenho mais familiaridade é o MySql…

Portanto é isso gente, se alguém puder me ajudar ficaria muito grato e incluiria até o nome nas notas de agradecimento do trabalho… hehe

Boa tarde Thiago.
Bem vamos lá…sobre tecnologia como é um sistema simples como você mesmo disse seria legal você utilizar o que tem de mais avançado no mercado, mas acredito que o tempo não seja algo que você tenha sobrando para estudar tudo o que se tem hoje em dia no mercado, mesmo por que você deve ter um prazo para sua entrega.

Eu já trabalhei com Struts 1 e 2, mas atualmente estou trabalhando com Spring como framework MVC e achei muito interessante, principalmente a parte de Injeção de Dependência, sem falar que o ciclo de vida do Spring é bem tranquilo de se aprender, acho que vale a pena você usar o Spring como MVC.
Já na parte de persistência tenho usado o Hibernate/JPA acho que hoje a grande maioria das empresas e desenvolvedores estão utilizando Hibernate/JPA na camada de persistência juntamente com o Java 1.5, pois com o uso dos Generic é possível a criação de classes de persistência genéricas, o que rende uma boa produtividade no desenvolvimento.

Então aconselho você a utilizar Spring com Hibernate/JPA, agora servidor de aplicação vai ser necessário que você decida, pois se for apenas um trabalho acadêmico sem a finalidade de colocar esse sistema para rodar, você pode usar o Tomcat mesmo, pois é muito simples de se usar, agora se for algo em que você queira colocar em produção ai já aconselho você a usar um servidor de aplicação parrudo, Weblogic ( que gosto muito ), WebSphere, JBoss ( nunca trabalhei, mas muita gente fala muito bem ).

Espero ter ajudado

Rodrigo,

Muito obrigado pela ajuda cara… Já comecei a pesquisar sobre a sua proposta… Vlw msm…

Quanto ao trabalho ele não é apenas acadêmico, a empresa irá por ele para rodar…
O sistema terá cerca de 6 mil lançamentos mensais, e terá no máximo 10 usuários operando o sistema simultaneamente… Será que os servidores de aplicação Tomcat ou Glassfish comporta esse fluxo?

Novamente agradeço pela ajuda…

Olha Thiago, aqui onde trabalho atualmente temos algumas aplicações que rodam no TOMCAT, as vezes da alguns problemas mas até que funciona, eu em particular não acho muuuuitoooo confiável o TOMCAT em produção, isso é apenas uma opnião particular, o Glassfish eu nunca trabalhei, mas a grande maioria acho que prefere ele do que o TOMCAT.

Acredito que para esse fluxo e quantidade de usuários que você falou o TOMCAT aguente o tranco, mas nunca que esqueça que sistemas em geral começa de um jeito e termina de outro, ou seja, o cliente sempre pede um fusca e espera ou vira uma ferrari, fica ai a dica…
[]s

1)Aplicação web
Escolha um framework MVC com recursos AJAX. Eu indico o JSF - http://fernandofranzini.wordpress.com/2011/09/14/referencia-javaserver-faces-2/

2) Precisaríamos dos requisitos completos para elaborar uma arquitetura, mas como vc ja falou…10 usuário simultâneos…
Vc não deve usar um JEE completo. Indico Tomcat mesmo…não vai nem fazer cocegas kkkk

Diferente de alguns aqui no GUJ, eu uso tomcat em produção para uma aplicação com 6 mil usuários habilitados, media de 600 sessões simultâneas e não tenho nenhum tipo de problema kkkkkk…nunca vi um servidor tão , simples, enxuto, funcionar tão bem…
Como venho falado h anos aqui ano forum…não existe container ruim…existe container improprio, mal configurado ou aplicação mal arquiteturada.

Para aplicações SIMPLES sem muita complexidade ou muitos recursos tecnológicos o TOMCAT funciona bem mesmo, mas para quem quer usar usar uma arquitetura ou recursos mais AVANÇADOS como EJBs, DI entre outras ele realmente é inapropriado, por isso é fundamental ter todos os requisitos do sistema, para poder ter uma boa definição do que será utilizado.

Esse é problema rodrigo…o pessoal em geral não sabe como identificar as complexidades e aplicar cada recursos JEE 6…
Agora mesmo estou ajudando um camarada no forum que esta subindo um projeto JSF dentro do glashfish sem necessidade nenhuma e esta pedindo ajuda pela lentidão…

Esse é problema rodrigo…o pessoal em geral não sabe como identificar as complexidades e aplicar cada recursos JEE 6…
Agora mesmo estou ajudando um camarada no forum que esta subindo um projeto JSF dentro do glashfish sem necessidade nenhuma e esta pedindo ajuda pela lentidão…[/quote]

Pois é, a velha mania de não saber o que usar, apenas usar por usar ou usar por moda, ai a pessoa não sabe utilizar corretamente a tecnologia e fica falando que não presta, é justamente o que acontece com o hibernate/jpa, tem muita gente que tem dificuldade em montar os relacionamentos OR e na hora de usar o hibernate ou jpa apanham e criticam um monte

Obrigado mais uma vez Rodrigo!!

Fernando, obrigado pela sua contribuição… foi de grande valor!

Essa discussão influenciará diretamente nas escolhas que farei para a concepção do sistema… Vlw!