Comecei a trabalhar com .net em 2003, atualmente estou revisando os principais conceitos e linguagens desta plataforma.
Estou revendo o Visual Basic.net e estudando o C#.
.Net
25 Respostas
Legal, eu trabalho com ele desde 2008, basicamente no C#.
Trabalhei com C# em 2009, achei algumas coisas interessantes, outras não.
Porém deu para programar igual em Java.
Ou seja sem wizards.
Achei até legalzinho.
Como por exemplo as propriedades de acessos (gest/set):
public string Name { get; set; }
Abs
Eu gosto de vários recursos:
- Extension Methods;
- Lambda;
- LINQ;
- Propriedades;
- Sobrecarga de operadores;
- Delegates;
Acho que só o que não simpatizo muito são as partial classes.
Comecei a trabalhar com .net em 2003, atualmente estou revisando os principais conceitos e linguagens desta plataforma.
Estou revendo o Visual Basic.net e estudando o C#.
Aliás… antes que eu esqueça novamente de perguntar. Qual foi o propósito desse tópico?
tambem não intendi o objetivo do topico! hehe, mais tambem trabalhei com C# durante 1 ano, gostei muito dos recursos da linguagem e principalmente do VS 2010 que na minha opinião é a melhor ferramente RAD atualmente, uma das coisas que mais me chamou a atenção foi a permissão de herança multipla e também os metodos gets e sets que são bem legiveis!
O ponto negativo na minha opinião é que o framework é muito grande, ou seja se eu precisar fazer um sistema para a padaria do vizinho que tem uma maquina ultrapassada como um Pentium 3, tenho que carregar todo o framework para funcionar, mais pra grandes aplicações é muito bom, outro ponto negativo é que é uma linguagem presa a plataforma!
Que permissão de herança múltipla? O C# não permite isso não.
http://blogs.msdn.com/b/csharpfaq/archive/2004/03/07/why-doesn-t-c-support-multiple-inheritance.aspx
Também simpatizo muito com o C#. Atualmente tenho desenvolvido aplicações para desktop e para coletores de dados.
E os recursos da linguagem e do ambiente Visual Studio são bem interessantes
a linguagem em si me parece ter recursos bem legais…
embora eu tenha visto pouco (na epoca vi um pouco do 2.0 e 3.5), lembro que não gostei de algumas coisas na API…
O objetivo é ver se os membros desenvolvem em ambas as plataformas, pois tem pessoas que metem o malho no .net.
Acho importante abrir a cabeça para outras possibilidades.
c# é interessante…o VS também…
Comecei com Java em 2008, o primeiro ano nao gostei muito do ambiente .NET, acho que era porque eu era um java fanboy, sempre ficava comparando Java e .NET, e botando defeito no .NET, mas depois eu comecei a pensar diferente e hoje eu nao tenho nem intencoes de voltar a trabalhar com Java.
//Daniel
Cada plataforma tem características próprias, e solucionam problemas diferentes.
Comecei a trabalhar com C# há mais ou menos 1 ano. Não tive dificuldade de me adaptar e achei a linguagem muito boa. O Visual Studio é simplesmente fantástico, tem um debug muito bom e o framework .net tem muita coisa interessante.
Um fato que eu achei legal foi a introdução de métodos com parâmetros opcionais no C# 4.0.
Não tive uma experiência boa com C# e .Net. Comecei na versão 1.1 e parecia interessante, fora um ou outro bug esquisitao, mas contornável. Quando saiu o primeiro service pack começou a decepção: tiveram métodos que foram alterados, outros simplesmente mudaram a ordem dos parametros (!) e algumas classes sumiram. O mais bizarro: a MS não mudou a versão do assembly nem a data e hora do arquivo(!), o que tornava muito difícil o sistema conseguir tratar a diferença de versão nos clientes.
Deu a maior dor de cabeça forçar os clientes a atualizarem o Service Pack, já que alguns quando faziam, outras soluções .NET paravam de funcionar pelo mesmo motivo.
A segunda decepção veio com o .NET 2.0, que quebrou a compatibilidade do nosso sistema. O componente que usávamos pra acesso a dados foi descontinuado pela MS, por exemplo. Imaginem o trabalho. Como pagávamos (caro) um suporte pra MS, entramos em contato com eles pra saber como migrar a aplicação. A resposta foi “Menu File, opção New Project…”.
Quando fizemos os primeiros testes no .NET 3.0 e vimos que a nossa aplicação pela terceira vez não iria rodar, desistimos. Migramos pra Java e até hoje somos felizes.
Mas de lá pra cá muita coisa pode ter mudado, talvez hoje seja mais seguro o desenvolvimento em .NET
Não tive uma experiência boa com C# e .Net. Comecei na versão 1.1 e parecia interessante, fora um ou outro bug esquisitao, mas contornável. Quando saiu o primeiro service pack começou a decepção: tiveram métodos que foram alterados, outros simplesmente mudaram a ordem dos parametros (!) e algumas classes sumiram. O mais bizarro: a MS não mudou a versão do assembly nem a data e hora do arquivo(!), o que tornava muito difícil o sistema conseguir tratar a diferença de versão nos clientes.Deu a maior dor de cabeça forçar os clientes a atualizarem o Service Pack, já que alguns quando faziam, outras soluções .NET paravam de funcionar pelo mesmo motivo.
A segunda decepção veio com o .NET 2.0, que quebrou a compatibilidade do nosso sistema. O componente que usávamos pra acesso a dados foi descontinuado pela MS, por exemplo. Imaginem o trabalho. Como pagávamos (caro) um suporte pra MS, entramos em contato com eles pra saber como migrar a aplicação. A resposta foi “Menu File, opção New Project…”.
Quando fizemos os primeiros testes no .NET 3.0 e vimos que a nossa aplicação pela terceira vez não iria rodar, desistimos. Migramos pra Java e até hoje somos felizes.
Mas de lá pra cá muita coisa pode ter mudado, talvez hoje seja mais seguro o desenvolvimento em .NET
Nossa Marcos, que chato. Aqui onde eu trabalho já desenvolvemos vários projetos usando C# e nunca tivemos problema. Pelo contrário, o desenvolvimento sempre foi muito mais tranquilo que no Java. Um exemplo é a internacionalização de aplicações. No C# basta eu usar um XML com os os textos da aplicação traduzido nos idiomas desejados que funciona de boa. Outra coisa que eu acho mais fácil é a conexão com banco de dados, sem ter que ficar baixando driver nem correlatos. Além disso isso é feito de forma muito mais intuitiva que no Java.
Realmente C# é uma boa linguagem, e vence de Java quando programando para windows.
A plataforma .net dá ferramentas que facilitam e muito o desenvolvimento de sistemas. O Visual Studio é o IDE mais produtivo se comparado com os demais.
Estou buscando projetos na plataforma .net com o objetivo de voltar a desenvolver na mesma, pois acho muito produtiva.
Oi,
Adoro .Net, VB.Net e C#… 
O objetivo é ver se os membros desenvolvem em ambas as plataformas, pois tem pessoas que metem o malho no .net.
Acho importante abrir a cabeça para outras possibilidades.
Quem malha .Net provavelmente pensa que o mundo se resume a aplicativos web, mas quem programa no ambiente windows fala muito bem de .net. Na verdade java é o forasteiro e sua complexidade e estagnação que são motivos de piadas.
Mas esse sentimento está começando a mudar na medida que java perde terreno para aplicações web que usam linguagens dinâmicas, creio que a tendência é a maioria dessas pessoas mudarem de ambiente (ao invés de mudarem a maneira de criar aplicativos web, ou seja, adotarem linguagens dinâmicas) fazendo com que esse pré-conceito bobo seja superado.
Eu gosto de vários recursos:
- Extension Methods;
- Lambda;
- LINQ;
- Propriedades;
- Sobrecarga de operadores;
- Delegates;
Acho que só o que não simpatizo muito são as partial classes.
Já programei alguns produtos em C#.Net, gostei bastante (não do produto e sim da linguagem), ainda mais que é parecido com java. Só não entendi muito bem a empregabilidade dos Delegates, mas tá valendo. Pra que eu precisaria de um objeto para um método?
Tenho trauma da plataforma da microsoft desde 2001. Quando vi vb6 pela primeira vez.
Vi a primeira versão do .net e não gostei também.
Quando vi java em 2002 minha vida mudou, parei com as drogas e sou feliz.
Velocidade de desenvolvimento depende muito.
Estamos usando jsf2 + primefaces 2 e o negocio ta muito rápido. :thumbup:
t+
Não acho que o forte do .NET seja a IDE, mas o próprio C# é bem interessante, gosto muito da linguagem.
Hoje temos IDEs mais poderosas em termos de coding fora do âmbito C#.
Eles são uma substituição àquelas interfaces que só tem um método dentro, como a interface Runnable, ou a Comparator do Java.
A vantagem deles é que, justamente, não te forçam a precisar de um objeto para um método. Por exemplo, no caso do Comparator, você poderia definir apenas uma função static, e passa-la para o delegate.
Por exemplo, considere o delegate:
Você pode inicializado assim:
Onde funcaoCompare é um método estático. Ou assim:
Onde comparador é uma função da instância. Nesse caso, o delegate sabe que tem que guardar o objeto MeuObjeto junto, pois ele será necessário ao chamar a função de comparação da instância.
Outra vantagem do delegate é que ele só cria dependência quanto a assinatura do método, não quanto à classe que o contém. Por exemplo, se a interface Runnable fosse um delegate
Você poderia disparar uma thread sobre qualquer método, de qualquer objeto que não recebesse parâmetro. Mesmo que fosse uma classe de uma API contida num .jar, e que você não tivesse qualquer controle sobre sua declaração.
Como essa aqui:
//Chama o método pack do JFrame sobre outra thread
//Isso é possível pois o pack tem a assinatura requerida pelo delegate
//Em java, teríamos que criar uma interface, passar o JFrame para ela como parâmetro, implementar
//seu método run, para só então chamar o pack(). Ou então, teríamos que fazer o JFrame implementar runnable,
//o que não é possível pq JFrame é uma classe do Java, não nossa.
new Thread(jframe.pack).start();
Se tudo correr bem, em breve volto a desenvolver em .net (VB e C#)