Pergunta

Recentemente tenho trabalhado com Python usando Komodo Edit e outros editores mais simples, mas agora estou fazendo um projeto que será feito em C# usando VS 08.Eu apreciaria qualquer dica sobre como ser produtivo nessa plataforma o mais rápido possível.

Foi útil?

Solução

Quanto a se tornar proficiente com C# eu recomendo Programação C# e C# em profundidade.

Para o Visual Studio, comece a cutucar muito o IDE, brinque, familiarize -se com ele. Comece com projetos simples e explore todos os aspectos diferentes. Aprender como Otimize o Visual Studio e familiarizar -se com alguns dos grandes Atalhos de teclado / recursos ocultos do IDE.

Definitivamente, faça cada um dos seguintes pelo menos uma vez:

Projetos:

  • Crie um aplicativo de console simples (por exemplo, Hello World)
  • Crie uma biblioteca de classes (gerenciada .dll) e use -a de outro aplicativo que você cria
  • Crie um aplicativo Windows simples
  • Crie um aplicativo Web ASP.NET simples

Depuração:

  • Debug um aplicativo de linha de comando
  • Familiarize -se com: pontos de interrupção, os habitantes locais e assistem ao Windows, pisam, saem, saem, continue, pare de depuração
  • Crie um aplicativo de linha de comando que use uma função em uma biblioteca de classes. Armazene o arquivo de DLL e símbolo (.pdb) para a biblioteca, mas exclua o código -fonte, depra -se através do aplicativo à medida que ele entra na biblioteca
  • Depure em um serviço da web
  • Aprenda a usar ildasm e ilasma

Linha de comando:

  • Familiarize -se com o ambiente da linha de comando do Visual Studio
  • Construir usando apenas a linha de comando
  • Debug da linha de comando usando Devenv.exe /debugexe
  • Use ildasm / ilasm da linha de comando para desmontar um aplicativo simples para .il, remontá -lo a um arquivo denominado de maneira diferente, teste para ver que ele ainda funciona

Teste:

  • Crie testes de unidade (clique com o botão direito do mouse em um método, selecione a opção para criar um teste)
  • Aprenda a: Executar todos os testes de unidade, executar todos os testes de unidade sob o depurador, Rerun falhou nos testes de unidade, veja detalhes sobre falhas de teste, execute um subconjunto de testes de unidade
  • Aprenda a coletar estatísticas de cobertura de código para seus testes

Fonte de controle:

  • Aprenda a interagir com seu sistema de controle de origem de escolha enquanto se desenvolve usando vs

Refatoring et al:

  • Familiarize-se com todos os refatores internos (especialmente renomear e extrair método)
  • Use "Vá para a definição"
  • Use "Encontre todas as referências"
  • Use "Find In Arquivos" (Ctrl-Shift-F)

Atalhos de IDE e teclado:

  • Aprenda a usar bem o designer para web e winforms
  • Familiarize -se com a janela Solution Explorer
  • Experimente diferentes layouts de janela até encontrar um confortável, continue experimentando mais tarde para ver se essa ainda é a melhor escolha
  • Aprenda os meandros do IntelliSense, use -o para sua vantagem o máximo possível
  • Aprenda o atalho do teclado para tudo o que você faz

Outras dicas

Eu pessoalmente me concentraria primeiro em aprender as partes principais do C# e do .NET.Para mim, isso significaria escrever aplicativos de console (em vez de Windows Forms) para experimentar a linguagem e aspectos importantes como IO.Quando estiver satisfeito com os fundamentos, passe para qualquer tecnologia "periférica" ​​(WinForms, WPF, ASP.NET, WCF etc.) necessária para o seu projeto.

Em termos de livros, posso recomendar ambos C# 3.0 em poucas palavras e C# acelerado 2008.Os links são para minhas resenhas dos livros.Ambos cobrem linguagem + bibliotecas principais.Para começar, eu não me preocuparia muito com o LINQ - sinta-se confortável com o resto da linguagem, principalmente delegados e genéricos, antes de abordar o LINQ.Nesse ponto, eu completamente Recomendamos brincar com o LINQ to Objects por um bom tempo antes de começar a usar o LINQ to SQL ou o Entity Framework.(Por outro lado, se você precisar usar XML, eu iria direto para LINQ to XML - é uma API XML completa, não apenas um provedor LINQ.É muito melhor que a API DOM normal.)

Eu apreciaria qualquer dica sobre como se tornar produtivo nessa plataforma o mais rápido possível.

Experiência prática meu amigo. Começar usando isso O mais breve possível para ser produtivo O mais breve possível.

Algumas recomendações óbvias são:

  • Crie modelos de atalho macros para ações frequentes. Força você use atalhos em vez de clicar nos menus
  • Instalar o Resharper - IN dará a você 1000% de impulso de produtividade (se você tiver alguns dólares para comprá -lo)

E não hesite em olhar para manual de tempos em tempos :)

Escolha um projeto Python que você concluiu no passado e converta -o manualmente em C#. Foi assim que aprendi todos os idiomas que conheço atualmente (exceto a Assembléia X86).

Considere usar o IronPython para ajudar a preencher a lacuna - você pode fazer referência aos conjuntos .NET via Ironpython, bem como criar conjuntos .NET para referência a partir de C#.

Além disso, fique muito longe daqueles Aprenda C# em 21 dias! Livros ... eles quase nunca cumprem o hype e geralmente são mais mal do que bem.

Obtenha um excelente livro e comece a ler. Eu tenho Pro C# 2008 e a plataforma .NET 3.5.

Como você tem um projeto para trabalhar isso também deve ajudar muito.

Vejo a mudança do Python para o C# como um degrau na escada evolutiva.Espere uma experiência muito mais detalhada (por exemplo,declarações de variáveis ​​e propriedades de classe).

Ficar de olho em FerroPython - ajudará você a conhecer o .NET usando uma linguagem familiar.A natureza dinâmica do Python torna a verificação do comportamento do .NET muito mais rápida do que a verificação de ideias em C#.Você pode usar FerroPython diretamente do Visual Studio com Estúdio IronPython .

Python para C# transição

Você geralmente aprende o próximo idioma comparando seus recursos com os idiomas que você já conhece. Como você está familiarizado com o Python, leia algumas comparações Python/C# como "A perspectiva de um programador python em C#" e "O C# 3.0 vence os idiomas dinâmicos em seu próprio jogo?". O delta entre C# 3.5 e Python não é tão grande.

Faça pequenos mini projetos. Parte do topo da minha cabeça.

1) Hello World
2) Console
3) Design da GUI
4) Projeto de brinquedo

Eles vão trazer você mais rápido à velocidade do que ler um tutorial. Pegue uma cerveja e divirta -se.

A Microsoft tem uma boa plataforma de aprendizado para isso:

http://msdn.microsoft.com/en-us/vcsharp/aa336766.aspx

Eu recomendo dar uma olhada na série de vídeos "Como faço".

Eu consideraria isso dependente de algumas coisas. Por exemplo, você usa o teclado mais do que o mouse? Nesse caso, eu faria aprendendo vs atalhos. Você conhece C#? Leia alguns livros. Eu sei que isso é vago, mas é uma questão um tanto vaga.

Pratique, pratique, pratique, ganhe experiência, torne -se produtivo.

Para cada ferramenta, sistema, linguagem ou qualquer outra coisa, a maneira mais rápida de se tornar produtiva é (pelo menos para mim) para entender o plano de fundo, em vez de começar do Hello World, seguido de tropeçar de um comando para o próximo que você acha que precisa.

Portanto, compre um bom livro (por exemplo, Microsoft Press) ou vá para Microsoft MSDN e Technet e leia o máximo possível das coisas de fundo. O material detalhado (no livro ou na Internet) pode ser referido posteriormente.

Além disso - para aumentar a produtividade - junte -se a listas de Mailinglists, IRCs, UseGroups etc. para obter conhecimento sobre problemas diários de outras pessoas, usando a mesma ferramenta, sistema, idioma, qualquer que seja.

Então - depois de uma semana ou duas - inicie a programação.

Eu sei, não é isso que se deseja fazer ao começar com um novo idioma. Mas para mim, este Aptorach funciona melhor, nos últimos anos.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top