Array
(
)

Java ou .net? e com que banco?

Alex Mazur
   - 30 jan 2010

Olá pessoal!

Eu estou com uma dúvida, e resolve-lá é de vital importância, por isso eu preciso da ajuda de meus colegas, com respostas diretas e claras:

Estou para iniciar o desenvolvimento de um projeto de software, fui incumbido de gerenciar tal missão, iniciei minhas pesquisas... este projeto é de um software comercial, que visa ter de pequenos a grandes clientes, para isso eu tenho um bom prazo e para iniciar devo levantar uma previa de como será desenvolvido e os recursos necessários...
Este software deverá rodar na web, tendo uma boa aparência, ótimos recursos (relatórios, agilidade, ferramentas, como se fosse desenvolvidos para desktop), devemos nos atentar muito a performance e segurança na rede. O Cliente poderá optar por versão web... ou desktop (usando na própria rede da empresa).

Acho que vcs conseguiram entender +- meu problema... ou melhor ainda não entenderam, por que o pior eh que eu não tenho nenhum conhecimento de desenvolver aplicações web...

então pessoal... o que vcs puderem indicar de material livro, eu agradeço muito

e gostaria de uma outra opinião... para desenvolver... seria melhor utilizar java ou .net com visual studio... sql server? ou postgree? ou ainda vcs acham melhor outra linguagem com outro banco?

Aguardo ansioso pelas respostas

Michaell Dantas
   - 31 jan 2010

Caro Alex,

  Sou o Michael  e ja estudo o desenvolvimento para web e desktop a uns 4 anos e vou lhe dizer com toda certeza do mundo !!! Use .NET e o Banco SQL SERVER... Esta plataforma te traz muitas ferramentas para que vc tenha performance e segurança na sua aplicação. Além disso, como o seu cliente pode optar por web ou destktop, você pode criar um modelo de desenvolvimento dentro do visual studio que vai facilitar isso pra vc. Além de possibilitar tambem visualizar sua aplicação em dispositivos mobile. Sem falar na facilidade e rapidez que terá, pois com a versão 2010 do Visual Studio, ficou muito facil desenvolver tanto em equipe como sozinho. Então, recomendo com toda certeza o .NET.     Ta dada minha sugestão !!!!   Abraços !!!   Michaell Dantas
Desenvolvedor .NET michaell.dantas@gmail.com
Twiter: @michaelldantas

Alex Mazur
   - 31 jan 2010

Olá Michaell!

Muito obrigado pela sua sincera resposta, resposta que me pende mais a usar mesmo o visual studio.

eu peço aos demais que também deixem sua opinião
Obrigado!

Netasper
   - 03 fev 2010

Alex...

De uma olhada neste artigo e tire suas proprias conclusões. Abraços

  "Sem fanatismo , sem paixões , sem preconceitos , sem puxar a sardinha pra brasa de ninguém... Afinal o nosso negócio é o cliente..."

 

As plataformas .NET e J2EE possuem o foco para o mercado de aplicações corporativas e para Web Services. Estarei fazendo uma rápida comparação onde tentarei mostrar as vantagens e desvantagens de ambos os frameworks.

 

A plataforma

 

J2EE é centrado na linguagem Java e é multplataforma ; .NET é centrado na plataforma Windows mas você pode usar diversas linguagens (VB.NET , C# , J# , Cobol ,etc...).

 

Todos os componentes que são distribuídos no framework J2EE (EJB , Servlets) são escritos em Java e a JVM somente pode ser usada com Java

 

O framework .NET esta baseado no CLR que permite o desenvolvimento em qualquer linguagem que for suportado pelas ferramentas Microsoft.

 

No J2EE você esta restrito a linguagem Java ; no .NET você esta restrito a plataforma Windows.

 

Considere os custos de manutenção , treinamento e padronização.

 

A Estratégia

 

J2EE é basicamente uma série de padrões ; .NET é um produto da estratégia Microsoft baseado na evolução do Visual Studio 6.0.

 

Por trás do padrão J2EE a Sun procurou reunir as maiores empresas de software afim de adaptar a interface J2EE. Estou falando de BEA , IBM e Oracle. .NET é um esforço quase que isolado da Microsoft para atingir o mercado de Web Services compartilhados.

 

Compatibilidade e Legado

 

É muito fácil a interligação com o código legado através da nova arquitetura JCA - Java Connector Architeture. .NET também oferece uma boa integração com o legado seu Server 2000 mas possui limitações de conectividade para selecionar sistemas.

 

Quanto a compatibilidade , a atualização do código VB 6.0 para VB.NET ,  apresenta sérios obstáculos devido a introdução dos novos conceitos de orientação a objeto ao VB.NET.

 

Interface de desenvolvimento rápida

 

Tanto J2EE como .NET oferecem ferramentas RAD. Mas a plataforma .NET possui uma melhor integração e um melhor IDE do que os vários frameworks disponíveis para Java.


Portabilidade

 

O JRE esta disponível para qualquer plataforma - Win32 , Unix , Mainframe , o que facilita muito a portabilidade das aplicações J2EE.
 

Quanto a plataforma .NET existe um esforço da Microsoft e da comunidade ( leia-se projeto MONO , SharpDevolp , etc..) em oferecer meios para que as aplicações .NET rodem em outras plataforma que não o Windows.

 

Minha experiência é muito positiva quanto a migração do código Java do Windows para OS/400. Quase nenhuma alteração foi necessária.

 

Suporte a Web Services

 

J2EE permite a colaboração eBusiness e Web Services através do JAXP (Java API para XML Parsing). Outras API´s estão sendo desenvolvidas para os Web Services.
 

.NET também suporta Web Services que estão sendo aperfeiçoados nas novas versões da plataforma. (A Microsoft ainda esta atrelada ao framework BizTalk com extensões propriedades do SOAP)

 

Neste quesito ambas ainda estão procurando se firmar neste segmento.


Vejamos a seguir uma comparação resumida quanto as tecnologias disponíveis em cada plataforma:

 

Serviços e características equivalentes:

 

Serviço .NET J2EE
GUI - Interface com o usuário WinForms SWING e  AWT
Web GUI - interface Web ASP.NET JSP - Java Server Pages
Web Scripting - Script Web ISAPI, HttpHandler, HttpModule Servlet, Filter
Server Side Business Logic Component Serviced Component (COM+) EJB Session Beans
Server side Data component Serviced Component (COM+) with DB Logic EJB BMP Entity Beans
Server Side Data Component Object Spaces EJB CMP Entity Beans
Naming ADSI JNDI
Invocação Remota .NET Remoting RMI or RMI-IIOP
Acesso aos Dados ADO.NET JDBC
Messaging MSMQ JMS
Transactions COM+ or MTS JTA
Browser Code ActiveX Applets
Security COM + Security Context JAAS
Protocolos Distribuídos DCOM RMI/IIOP
Servidores Web IIS Apache ,NES , IIS, etc...

 

Arquitetura N-camadas

 

Serviço .NET J2EE
Camada de apresentação ASP.NET (code behind) JSP (Beans e Tags)
Camada de lógica de negócios .NET Enterprise Service EJB - Enterprise Java Beans
Camada de acesso aos dados ADO.NET JDO/JDBC

 

Principais diferenças:

 

Diferenças .NET J2EE
Portabilidade Windows (por enquanto...) Várias Plataformas
Independência da linguagem Várias linguagens Java
Independência de fornecedor Microsoft Padrão
Componentes COM + Managed Components EJB
Maturidade 1 ano 5 anos
IDE Visual Studio .NET Vários
Camada de apresentação Web Forms Java Server Faces
Escalabilidade Em apreciação Em consolidação
Desempenho Otimização plataforma Otimização linguagem
SOAP suporta em adaptação
Preço comercial depende

 

 

 

 

Lex
   - 03 fev 2010

  NetAsper, valeu amigão! mto obrigado pela resposta! e que resposta, otima resposta!

bm, eu deixo em aberto o post para caso alguem mais queira se manifestar...
por enquanto mto obrigado a todos!

Eleuterio Gonzalez
   - 15 fev 2010

Acredito que o visual studio seria a melhor estrategia pois atende web e desktop, quanto ao BD o POSTGRE e ilimitado ou seja o limite e seu espaço em HD e é FREE.

Carlos Mazzi
   - 09 jun 2010

Eu voto pra Java web. com MySQL Server....