VISUAL BASIC.NET X JAVA

MARCOSARANTESJ 02/12/2010 11:29:10
#358623
Sou desenvolvedor VB.NET a mais de 2 anos, estudei C# também, mas a 2 anos também, estou com JAVA. Como vi que tinham empresas que tinham LINUX, passei a usar JAVA. Realmente é muito difícil. O que fazemos no Visual Studio com os controles que é muito fácil, no JAVA, temos que extender a classe do controle e implementar a função, sobescrevendo o método padrão para que possamos, por exemplo, zebrar um jTable(que é DataGridView no Visual Studio). Para limitar a qtd de caracteres nos campos, temos que criar uma função. No Visual Studio tudo é mais prático e fazemos isso com uma linha de código ou nas propriedades do controle. A diferença mesmo de JAVA e Visual Studo (VB,C#,C++) é que é totalmente grátis e multiplataforma(Windows,MAC,LINUX e variantes do UNIX). Estou agora programando muito mesmo com JAVA, embora tenha softwares desenvolvidos em VB.NET. Estou mesmo com JAVA porque a performance dele em certo momentos é bem maior, comparado ao C++. O gerador de relatórios iReport não perde para o Crystal Reports e achei até melhor em alguns aspectos. Gostaria do comentário de vocês, de quem usa JAVA ou VB, porque o JAVA é a segunda linguagem mais usada no mundo e só perde para o C. Agora desenvolvo mais em JAVA mesmo para não ter problemas, porque direto, o programa que tenho em VB se corrompe com Vírus ou erro de esistema do Windows, mas ainda não testei para ver se no JAVA não acontece isso, mas vou ver ainda.
LLAIA 02/12/2010 12:09:43
#358627
Resposta escolhida
Como disse em outro tópico, estou estudando Java e estou gostando. Java é um universo imenso com seus frameworks e padrões. Tem horas que vc fica meio perdido no aprendizado. Pra quem quer aprender Java tem que conseguir bom material de estudo e trilhar uma rotina progressiva no aprendizado.

Um dos maiores atrativos dela é ser multi-plataforma, embora pro .Net o Mono parece ter mostrado bons resultados. Tenho pensado muito em Aplicações Web ultimamente (especialmente RIA) e em Ruby on Rails, pois este tem mostrado ser muito interessante e produtivo. Veja só o código que encontrei num TCC feito em Java e outro feito em Ruby para o mesmo procedimento do projeto (criar um tópico) usando o padrão MVC:


Código feito em Java

public ActionForward execute(ActionMapping mapping,  
ActionForm form,
HttpServletRequest request,
HttpServletResponse response) throws
Exception {
TopicoForm topicoForm = (TopicoForm)form;
Topico topico = new Topico();

topico.setTitulo(topicoForm.getTitulo());
topico.setDescricao(topicoForm.getDescricao());

TopicoDAOMysql topicoDao = new TopicoDAOMysql();

try{
topicoDao.adiciona(topico);

}
catch(Exception e){
throw new Exception([Ô]Erro ao adicionar topico [Ô] +e);
}

ActionForward forward = mapping.findForward([Ô]Cadastrado[Ô]);
return forward;
}

public void adiciona (Topico topico) throws Exception{

Connection conn = null;

ConexaoBD conBD = ConexaoBD.getInstancia();


conn = conBD.getConnection();

PreparedStatement pstmt = null;
String sql = [Ô][Ô];
int rowsAfected = 0;

try
{
if (conn == null) throw new Exception([Ô]Conexão não foi estabelecida.[Ô]);

sql = [Ô]insert into Topicos ([Ô] + [Ô] titulo, descricao, data_postagem) [Ô] + [Ô] values((?), (?), now())[Ô];

pstmt = conn.prepareStatement(sql);
pstmt.setString(1,topico.getTitulo());
pstmt.setString(2,topico.getDescricao());

rowsAfected = pstmt.executeUpdate();


if (rowsAfected <= 0) {
throw new Exception([Ô]Erro na inserção do tópico. Por favor, tente novamente.[Ô]);
}
}catch(SQLException se) {
throw new SQLException([Ô]Erro em TopicoDAOMysql.adiciona(): [Ô] + se.getMessage());
}catch (Exception e) {
throw new Exception([Ô]Erro em
TopicoDAOMysql.adiciona(): [Ô] + e.getMessage());
}finally {
if(pstmt != null) pstmt.close();
conBD.returnConnection(conn);
}
}



Agora o código em Ruby

def create 
@topico = Topico.new(params[:topico])
if @topico.save
flash[:notice] = [ô]Topico criado com sucesso.[ô]
redirect_to :action => [ô]list[ô]
else
render :action => [ô]new[ô]
end
end



Impressiona né? Mas o grande lance do Rails é que o Rails apresenta uma série de scripts para geração de códigos e o primeiro que deve ser rodado é o script, que gera uma aplicação em Rails. Esse script prepara todo o esqueleto da aplicação. Depois de rodar esse script, o programador já tem um lugar preparado para colocar os seus códigos. Assim, o programador só tem que se preocupar com a lógica da aplicação. Rails é baseado em duas filosofias. A primeira é conhecida como DRY, do inglês Don’t Repeat Yourself, que significa não se repita. Essa filosofia diz que cada trecho de conhecimento de um sistema deve ser expresso em um único lugar.

Não estou afirmando que um ou outro é melhor, mas acho interessante sempre procurar conhecer o que tem por aí e descobrir.

Esse é o link do TCC de onde tirei esses códigos e textos. http://blog.improveit.com.br/files/comparativo-java-ruby-para-xp.pdf
MARCOSARANTESJ 02/12/2010 15:48:58
#358647
é bem menos código. Tem IDE multiplataforma e parece que o netebans também tem essa linguagem.
Tópico encerrado , respostas não são mais permitidas