É impressão minha, ou C# é muito mais fácil?

Vai programar em VB … kkkkkkkkk isto que pra rir kkkk

tensoooooooooo

[quote=desiludido][quote=Murilo_Ferreira]
só que isso é POG, e acredito que nunca será implementado em java.[/quote]

Eu ri.[/quote]

Rindo do que iniciante desiludido?

[quote=desiludido][quote=Murilo_Ferreira]
só que isso é POG, e acredito que nunca será implementado em java.[/quote]

Eu ri.[/quote]

Puta merda. Como pode ter tanta merda num tópico só. É galera, vamos para de afirmar aquilo que não se tem certeza.

o var do C# foi criado pra ser usado com LINQ, porque o retorno do LINQ pode não ter um TYPE, isso mesmo, ele pode ser um Anonymous Type e só pode ser recebido pela declaração implicíta var que o compilador cria automático esses TYPES.

O var deve ser evitado (por questões de boas práticas) quando se sabe o tipo, mas tem hora que não tem como saber o TYPE, como disse, usando LINQ.

Na verdade o .NET tb tem Equals metodo implementado em System.Object.
Entao qualquer objeto (incluindo custom objects), tem a implementacao do Equals.

string str1 = "lalal";
string str2 = "lalal";
str1.Equals(str2);

Equals pode ser overriden, para fazer comparacoes do jeito que voce quiser.

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                User user1 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
                User user2 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
                Console.WriteLine(String.Format("Are users the same? {0}", (user1.Equals(user1) ? "yes" : "no")));

                User user3 = new User() { Id = 2, Name = "maria", Email = "maria@test.com" };
                Console.WriteLine(String.Format("Are users the same? {0}", (user1.Equals(user3) ? "yes" : "no")));

                Object dummyObject = new Object();
                Console.WriteLine(String.Format("Are users the same? {0}", (user1.Equals(dummyObject) ? "yes" : "no")));

                Console.ReadKey();

            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                Console.ReadKey();
            }

        }
    }

    public class User
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Email { get; set; }

        public override bool Equals(object obj)
        {
            User user = null;
            if (obj is User)
            {
                user = (User)obj;
            }
            else
            {
                throw new ArgumentException("Only instances of User can be compared");
            }

            return (this.Id == user.Id);
        }

        public override int GetHashCode()
        {
            return base.GetHashCode();
        }

    }
}

O output no terminal vai ser:

Are users the same? yes
Are users the same? no
System.ArgumentException: Only instances of User can be compared
   at ConsoleApplication1.User.Equals(Object obj) in C:\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs:line 48
   at ConsoleApplication1.Program.Main(String[] args) in C:\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs:line 19

Outra coisa legal eh que, se vc tem uma lista de objetos e quer usar LINQ para pegar soh os objetos distintos.
LINQ tem o metodo Distinct que tem um overload que recebe como parametro IEqualityComparer, no caso da classe de exemplo que eu postei, poderiamos ter:

public class UserEqualityComparer : IEqualityComparer<User>
    {
        public bool Equals(User user1, User user2)
        {
            return (user1.Id == user2.Id);
        }

        public int GetHashCode(User obj)
        {
            return base.GetHashCode();
        }
    }

Ai pra pra pegar os items distintos:

User user1 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
User user2 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
User user3 = new User() { Id = 2, Name = "maria", Email = "maria@test.com" };

IList<User> users = new List<User>() { user1, user2, user3 };

var distinctUsers = users.Distinct<User>(new UserEqualityComparer());

foreach (User user in distinctUsers)
{
     Console.WriteLine(user.Name);
}

Vai imprimir os nomes do user1 e user3. Eh um exemplo simples, mas da pra fazer coisas muito mais complexas.

Ainda ta rolando essa discussao qual linguagem eh a melhor???

//Daniel

[quote=windsofhell][quote=Murilo_Ferreira]
Sobre os gets e sets, isso é uma questão de encapsulamento, se você não se preocupa com isso, então declara tudo como public.

Outra coisa, em Java não se compara String com ==, se usa equals.

Sobre o ActionListener, ao meu ver é meio que igual.
[/quote]
Na verdade o .NET tb tem Equals metodo implementado em System.Object.
Entao qualquer objeto (incluindo custom objects), tem a implementacao do Equals.

string str1 = "lalal";
string str2 = "lalal";
str1.Equals(str2);

Equals pode ser overriden, para fazer comparacoes do jeito que voce quiser.

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            try
            {
                User user1 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
                User user2 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
                Console.WriteLine(String.Format("Are users the same? {0}", (user1.Equals(user1) ? "yes" : "no")));

                User user3 = new User() { Id = 2, Name = "maria", Email = "maria@test.com" };
                Console.WriteLine(String.Format("Are users the same? {0}", (user1.Equals(user3) ? "yes" : "no")));

                Object dummyObject = new Object();
                Console.WriteLine(String.Format("Are users the same? {0}", (user1.Equals(dummyObject) ? "yes" : "no")));

                Console.ReadKey();

            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                Console.ReadKey();
            }

        }
    }

    public class User
    {
        public int Id { get; set; }
        public string Name { get; set; }
        public string Email { get; set; }

        public override bool Equals(object obj)
        {
            User user = null;
            if (obj is User)
            {
                user = (User)obj;
            }
            else
            {
                throw new ArgumentException("Only instances of User can be compared");
            }

            return (this.Id == user.Id);
        }

        public override int GetHashCode()
        {
            return base.GetHashCode();
        }

    }
}

O output no terminal vai ser:

Are users the same? yes
Are users the same? no
System.ArgumentException: Only instances of User can be compared
   at ConsoleApplication1.User.Equals(Object obj) in C:\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs:line 48
   at ConsoleApplication1.Program.Main(String[] args) in C:\Projects\ConsoleApplication1\ConsoleApplication1\Program.cs:line 19

Outra coisa legal eh que, se vc tem uma lista de objetos e quer usar LINQ para pegar soh os objetos distintos.
LINQ tem o metodo Distinct que tem um overload que recebe como parametro IEqualityComparer, no caso da classe de exemplo que eu postei, poderiamos ter:

public class UserEqualityComparer : IEqualityComparer<User>
    {
        public bool Equals(User user1, User user2)
        {
            return (user1.Id == user2.Id);
        }

        public int GetHashCode(User obj)
        {
            return base.GetHashCode();
        }
    }

Ai pra pra pegar os items distintos:

User user1 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
User user2 = new User() { Id = 1, Name = "joao", Email = "joao@test.com" };
User user3 = new User() { Id = 2, Name = "maria", Email = "maria@test.com" };

IList<User> users = new List<User>() { user1, user2, user3 };

var distinctUsers = users.Distinct<User>(new UserEqualityComparer());

foreach (User user in distinctUsers)
{
     Console.WriteLine(user.Name);
}

Vai imprimir os nomes do user1 e user3. Eh um exemplo simples, mas da pra fazer coisas muito mais complexas.

Ainda ta rolando essa discussao qual linguagem eh a melhor???

//Daniel[/quote]

Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.

Não existe coisa mais ridícula que desenvolvedor que pensa que linguagem e/ou plataforma X ou Y é uma merda só porque ele não gosta.

O cara que trabalha com Delphi, trabalha por uma razão. O cara que trabalha com VB também. Assim como o que programa em Cobol.
As razões podem ser por gosto, oportunidade, falta de opção, necessidade ou muitas outras.

Como desenvolvedores, devemos respeitar estes outros e não depreciar a ferramenta ou o trabalho que eles fazem só porque você julga a sua linguagem melhor que a dele e porque alguém na internet te disse que é muito melhor.

Aprendam uma coisa: não existe bala de prata.
Desenvolvedor que é bom mesmo tem conhecimento de diversas plataformas e linguagens e sabe o que usar na hora certa.

Pro engraçadinho ai em cima que estava falando do VB, eu estou programando em VB.NET exatamente agora. E aí? Isso faz de mim um programador pior?
Acontece que o produto da empresa que eu trabalho atualmente é em VB. Eu preciso desenvolver alguns novos módulos. Eu poderia fazer em C#, poderia utilizar Ruby, poderia fazer tudo com Javascript e HTML5. Mas pra que eu vou fazer isso se a forma mais rápida e eficiente é fazer em VB?

Eu também não sou o maior fã do VB. Mas qual o problema de saber utiliza-lo para resolver os problemas que meu empregador tem? O que eu tenho a perder com isso?

Nos projetos novos aqui, eu prefiro usar C#. No meu tempo livre, estudo Haskell. Mas quando é necessário, eu programo em VB.

Isso me torna pior que você?

[quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel

[quote=windsofhell][quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel[/quote]

Nunca disse que era exclusividade do Java.

Já que você gosta de c#, vai para microsoft.com.

[quote=Murilo_Ferreira][quote=windsofhell][quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel[/quote]

Nunca disse que era exclusividade do Java.

Já que você gosta de c#, vai para microsoft.com.[/quote]

Você está em um tópico sobre C#.
Esse tópico tem 9 páginas e ainda não foi trancado por nenhum moderador. Suponho que não tenha infringido nenhuma regra.
Ou seja, se você quer falar de Java(ou de qualquer outra coisa), e não de C#(que é o assunto do tópico), quem deve vazar daqui é você.
E não ficar enchendo o saco de quem está tentando ter uma discussão sadia e expor seu ponto de vista.

[quote=Murilo_Ferreira][quote=windsofhell][quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel[/quote]

Nunca disse que era exclusividade do Java.

Já que você gosta de c#, vai para microsoft.com.[/quote]

Vai chorar, soh porque eu te ensinei algo hoje??

Claro que disse:

Eu gosto de ambas plataformas, ja ate trabalhei um tempo com Java tb. Soh estou postando sobre .net e c# porque eh o assunto que esta sendo discutido.
Eh errado fazer isso??

Vc achava que Equals era coisa do Java, devia ficar feliz por ter aprendido algo novo, nao ficar bravo. :slight_smile:

Relax man!

//Daniel

[quote=Gabriel][quote=Murilo_Ferreira][quote=windsofhell][quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel[/quote]

Nunca disse que era exclusividade do Java.

Já que você gosta de c#, vai para microsoft.com.[/quote]

Você está em um tópico sobre C#.
Esse tópico tem 9 páginas e ainda não foi trancado por nenhum moderador. Suponho que não tenha infringido nenhuma regra.
Ou seja, se você quer falar de Java(ou de qualquer outra coisa), e não de C#(que é o assunto do tópico), quem deve vazar daqui é você.
E não ficar enchendo o saco de quem está tentando ter uma discussão sadia e expor seu ponto de vista.[/quote]

É por essas e outras que fica cada vez mais complicado de se postar aqui. As pessoas, simplesmente, não sabem argumentar, e são extremamente mal educadas e vazias em suas opiniões.

Em vez de destacar o que as linguagens têm de melhor, suas principais características, seus prós e contras, não… ficam discutindo coisas bestiais infindáveis.

1 - Não se foi abordado a questão da IDE, e sim, da linguagem, mas muitos levam para esse lado;
2 - Nenhuma linguagem é perfeita, há métodos, formas, e estruturas melhores de se aplicada em casos isolados usando uma linguagem em detrimento à outra;
3 - C# é influenciada principalmente pelo Java e C++, evidentemente ela trás algumas melhorias, sobretudo no aspecto core da linguagem, por exemplo, as classes básicas para manipalação de dados, como coleções, listas, etc. É possível fazer manipulação de uma mesma lista onfly, enquanto o Java não permite isso. É possível usar macros para debug, literais podem ser expostas explicitamente nas strings sem problema de controle extra, uso de delegates para invocar métodos, uso do LINQ para pesquisas, consultas em SQL, textos, XML, listas, coleções, etc. Logicamente que há seus contras, por estar “amarrada” à tecnologia MS, digo: seus sistemas, suas aplicações.

É interessante a forma de pensar de alguns aqui:
“Se eu só conheço um jeito de fazer as coisas, não existe outro jeito e o que conheço é o melhor.”

Pra quem pensa dessa forma, eu vou dar uma dica:
Estude OO fora do java e voce vai ter muitas surpresas agradaveis.

Java não tem a única e nem a ‘melhor’ maneira de oferecer suporte a OO.

edit: O mesmo vale para quem é de outras linguagens.

[quote=perdeu][quote]
CAMPEAO2011:
Vai programar em VB … kkkkkkkkk isto que pra rir kkkk
[/quote]
tensoooooooooo[/quote]

bota risos aiiiiiiiiiiiiiiiii e muitossssssssssssss

[quote=Gabriel][quote=Murilo_Ferreira][quote=windsofhell][quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel[/quote]

Nunca disse que era exclusividade do Java.

Já que você gosta de c#, vai para microsoft.com.[/quote]

Você está em um tópico sobre C#.
Esse tópico tem 9 páginas e ainda não foi trancado por nenhum moderador. Suponho que não tenha infringido nenhuma regra.
Ou seja, se você quer falar de Java(ou de qualquer outra coisa), e não de C#(que é o assunto do tópico), quem deve vazar daqui é você.
E não ficar enchendo o saco de quem está tentando ter uma discussão sadia e expor seu ponto de vista.[/quote]

Não me lembro de ter pedido sua opinião!

Se vc não concorda com criticas então porque fez a sua?

[quote=windsofhell][quote=Murilo_Ferreira][quote=windsofhell][quote=Murilo_Ferreira]
Sempre achei que o GUJ fosse um forum de Java, e não de ruindows e .net.[/quote]
Well, alem do topico ser “Assuntos gerais”, esta sendo discutido c#, nao eh mesmo??

Soh quis mostrar que Equals, nao eh exclusidade do Java. :slight_smile:

//Daniel[/quote]

Nunca disse que era exclusividade do Java.

Já que você gosta de c#, vai para microsoft.com.[/quote]

Vai chorar, soh porque eu te ensinei algo hoje??

Claro que disse:

Eu gosto de ambas plataformas, ja ate trabalhei um tempo com Java tb. Soh estou postando sobre .net e c# porque eh o assunto que esta sendo discutido.
Eh errado fazer isso??

Vc achava que Equals era coisa do Java, devia ficar feliz por ter aprendido algo novo, nao ficar bravo. :slight_smile:

Relax man!

//Daniel[/quote]

Só para seu governo, vc não me ensinou nada, também trabalhei com c# um ano e meio, odiei, nunca mais estudei essa plataforma.

Enquanto vc pensava em aprender, eu já trabalha-va com esses ambientes. se vc tivesse lido este tópico inteiro teria lido isso.

E tenho a minha bandeira levantada, sou contra tudo que venha de microsoft.

Só que discordo totalmente de muita coisa escrita aqui sobre .net, quem acha que é bom, tudo bem então.

Tentem abandonar java um ano para trabalhar com .net, depois façam seus comentários.

Nunca fiz um comentário ruim daquilo que não conheço, pelo contrario eu conheço c#, e conheço bem, e não gosto!

O problema e que hoje chega qualquer um aqui no GUJ que não sabe nem o que é um “if” para falar de coisas que nem tem conhecimento.

[quote=Murilo_Ferreira]
Só para seu governo, vc não me ensinou nada, também trabalhei com c# um ano e meio, odiei, nunca mais estudei essa plataforma.

Enquanto vc pensava em aprender, eu já trabalha-va com esses ambientes. se vc tivesse lido este tópico inteiro teria lido isso.

E tenho a minha bandeira levantada, sou contra tudo que venha de microsoft.

Só que discordo totalmente de muita coisa escrita aqui sobre .net, quem acha que é bom, tudo bem então.

Tentem abandonar java um ano para trabalhar com .net, depois façam seus comentários.

Nunca fiz um comentário ruim daquilo que não conheço, pelo contrario eu conheço c#, e conheço bem, e não gosto!

O problema e que hoje chega qualquer um aqui no GUJ que não sabe nem o que é um “if” para falar de coisas que nem tem conhecimento.[/quote]

Conhece tao bem que nao sabia que a classe System.Object do .NET possui a implementacao de Equals???

Se voce trabalhou com .NET e nao gostou eh uma pena e nem vem ao caso, acho que o topico eh para discutir as principais diferencas, qual funcionalidade que o .NET framework tem que poderia ser legal ter no Java.

Eu gosto muito de Java, na real eu trabalhei com Java na area de pesquisa cientifica e na area financeira no Lehman Brothers que investia pesado na Java e que era somente a segunda maior instituicao financeira do mundo. Aprendi muito e tive o prazer de trabalhar com desenvolvedores fora de serie.

Ja faz quatro anos que migrei do Java pra .NET com C# e no inicio eu tinha o mesmo preconceito sobre microsoft, pensei que ia ficar clicando e arrastando web controls. Mas nao eh bem assim, desde quando eu comecei com .NET pra fazer a verdade eu nunca usei o design mode do visual studio, nunca fiz um drag and drop de webcontrols. Pelo contrario, fiquei os primeiros 3 anos trabalhando com backend. Agora eu trabalho com frontend e mesmo assim, nao usamos nada pronto, todos os componentes da UI, sao criados server-side e renderizados em dojo widgets. Dojo, eh um Javascript Framework muito bom por sinal.

Estou trabalhando na area de informatica desde 1998, faca as contas quando tempo na area. E mesmo apos todos esses anos de experiencia eu tenho muita coisa para aprender, com colegas de trabalho, amigos que trabalham com desenvolvimento seja .NET, Java ou qualquer outra coisa, eh essa tambem eh a razao principal que eu continuo a participar do forum, porque eu sempre aprendo alguma coisa nova, seja lendo os topicos ou ajudando alguem ou entrando em topicos como estes porque eh do meu interesse conhecer melhor as novas features do Java, uma vez que eu estou afastado a 4 anos.

Lembre-se, a arrogancia traz somente impedimento para aprender e desenvolver profissionalmente.

Ja que voce conhece tanto .NET ao invez de fazer um comentario do tipo “vai para um forum da microsoft, aqui soh se fala de java e bla bla bla”, exponha os seus motivos, porque voce acha que .NET nao presta, compatilhe o seu conhecimento, talvez se vc ate consiga ajudar alguem que esta pensando mudar de area ou esta querendo tomar uma decisao entre qual plataforma desenvolver.

Faz sentido ou nao??

//Daniel

[quote=acazsouza][quote=desiludido][quote=Murilo_Ferreira]
só que isso é POG, e acredito que nunca será implementado em java.[/quote]

Eu ri.[/quote]

Puta merda. Como pode ter tanta merda num tópico só. É galera, vamos para de afirmar aquilo que não se tem certeza.

o var do C# foi criado pra ser usado com LINQ, porque o retorno do LINQ pode não ter um TYPE, isso mesmo, ele pode ser um Anonymous Type e só pode ser recebido pela declaração implicíta var que o compilador cria automático esses TYPES.

O var deve ser evitado (por questões de boas práticas) quando se sabe o tipo, mas tem hora que não tem como saber o TYPE, como disse, usando LINQ.[/quote]

Se vc não sabe o tipo do dado, então porque não usa Object? ou porque não faz cast?

[quote] windsofhell
Conhece tao bem que nao sabia que a classe System.Object do .NET possui a implementacao de Equals???
[/quote]
Nunca dissse que .net não existe o equlas, não sei o porque vc ainda está nesse assunto.

Veja a besteira que postaram antes.

[quote] windsofhell
Java

ArrayList<Noticia> n = new ArrayList<Noticia>();  
for (Noticia noticia : Noticias)  
   {  
       if (noticia.Autor == "fernando")  
           n.Add(noticia);  
   }  

[/quote]

O cara teve coragem de dizer que esse exemplo está em java, então cade o equals? EM JAVA SE USA EQUALS.
DEU PARA ENTENDER AGORA O QUE ESTOU TENTANDO FALAR DESDE O INICIO?

[quote] windsofhell
Ja faz quatro anos que migrei do Java pra .NET com C# e no inicio eu tinha o mesmo preconceito sobre microsoft, pensei que ia ficar clicando e arrastando web controls. Mas nao eh bem assim, desde quando eu comecei com .NET pra fazer a verdade eu nunca usei o design mode do visual studio, nunca fiz um drag and drop de webcontrols. Pelo contrario, fiquei os primeiros 3 anos trabalhando com backend. Agora eu trabalho com frontend e mesmo assim, nao usamos nada pronto, todos os componentes da UI, sao criados server-side e renderizados em dojo widgets. Dojo, eh um Javascript Framework muito bom por sinal.
[/quote]
O problema é que programadores .net, na maioria dos casos são muito preguiçosos, acham que o visual studio deve agir, pensar e fazer tudo por eles. Só que isso nunca deu certo e nunca vai dar. Na equipe em que eu trabalhei eu era o analista chefe, e tive muita dor de cabeça com esse tipo de programador, pois mesmo em c# sempre tentamos desenvolver de maneira mais OOP possível.

Porém, tem alguns problemas que nós tinhamos.

  1. Tente migrar de database, e já verá alguns problemas.
  2. Tem aplicações winforms que simplesmente se fecham sozinhas, por incompatibilidades com o próprio ruindows.
  3. Ausência de bons frameworks, como se tem java.
  4. Não existe estrutura de pacotes, comum no java.
  5. Tinhamos sérios problemas para testar partes de código, o que é bem fácil em java.
  6. Montar tabelas em winforms, muito problemático, enquanto em java é mais fácil usando tablemodel.
  7. Amarrado ao ruindows.
    Etc…

Alguns dizem que .net é legal porque é nativo do ruindows, tem acesso fácil a tudo (registro e etc…), mas pra que ter acesso a tudo do ruindows?

Outros dizem que .net fácilita a sua vida, arrastando e soltando? vai ver quando precisar atualizar alguma coisa no sistema os problema que arrastar e soltar pode trazer, sem falar que vc mata OOP.

Experimentem sincronizar threads em .net, e verá o quanto é problemático. Depois tenta fazer o mesmo em java, verá o quanto é fácil e funcional.

Experimentem usar sockets em .net, depois faça o mesmo em java e verá a diferença de performance e a facilidade que java tem.

Acho as IDE Netbeans e Eclipse são melhores que visual studio, a facilidade de vc montar a ide da forma que vc quiser, com frameworks, plugins e etc, isso não se tem no visual studio.

Vc tem que usar o visual studio do jeito ele vem, e pronto. E bem esse o conceito microsoft.

No Netbeans por exemplo, eu posso criar vários metodos “main” para testar partes do programa, enquanto o visual studio só pode ter um “main”, se vc criar mais que um, ele já se perde. Ele não suporta vc executar um “main” opcional para testar apenas uma parte do programa.

[quote] windsofhell
Lembre-se, a arrogancia traz somente impedimento para aprender e desenvolver profissionalmente.
[/quote]
Contra ruindows, sempre serei, para que envestir tempo e dinheiro em .net que só funciona em ruindows?
Servidor ruindows está cada vez mais escasso! nem adianta levar o mono na discussão, pois tudo mundo já sabe que não funciona.

Se vc tivesse lido o tópico antes de postar qualquer coisa aqui, teria lido meus comentários anteriores!

Olha uma coisa que o pessoal do .net bate no peito para falar, ah nos não precisamos fazer linhas e linhas de get e set, no c# agente faz assim.

public string Texto{ get; set; } 

Então, onde fica o encapsulamento, e as validações. eu só acho que o pessoal se esquece disso, e tentam desenvolver de maneira mas POG o possível, e querem que o visual studio faça milagres por eles depois, esse é o mal de programadores c#.

Olha mais esse

var texto = "oi pessoal";  

Em que momento da vida acharam que isso é certo?

Outros dizem que c# tem mais performance, até tem sim mas somente no ruindows. Mas se vc tentar aumentar a memória da JVM, já vai ficar melhor que o c#.

Analizando a biblioteca do c#, eu sempre vejo um visual basic copiando a sintaxe Java. apenas isso. Este já é um bom principio para não falar bem de c#.

Então o que vocês acham de ficar investindo tempo e dinheiro estudando um visual basic com sintaxe java, que só roda no ruindows?

Continua…