Pregunta

Recientemente he estado trabajando con Python utilizando Komodo Edit y otros editores más simples, pero ahora estoy haciendo un proyecto que se realizará en C # utilizando VS 08. Agradecería cualquier consejo sobre cómo ser productivo en esa plataforma tan rápido. como sea posible.

¿Fue útil?

Solución

En cuanto a ser competente con C # recomendaría altamente Programación C # y C # en profundidad .

Para Visual Studio, comience a buscar mucho en el IDE, juegue, familiarícese con él. Comience con proyectos simples y explore todos los aspectos diferentes. Obtenga información sobre cómo optimizar Visual Studio y familiarícese con algunos de los excelentes atajos de teclado / funciones ocultas del IDE.

Definitivamente realice cada una de las siguientes acciones al menos una vez:

Proyectos:

  • Crea una aplicación de consola simple (por ejemplo, hola mundo)
  • Cree una biblioteca de clases (.dll administrada) y úsela desde otra aplicación que cree
  • Crear una aplicación de Windows simple
  • Crear una aplicación web asp.net simple

Debugging:

  • Depurar una aplicación de línea de comandos
  • Familiarícese con: los puntos de interrupción, los locales y las ventanas de vigilancia, pasar, entrar, salir, continuar, detener la depuración
  • Cree una aplicación de línea de comandos que use una función en una biblioteca de clases. Almacene la dll y el archivo de símbolos (.pdb) para la biblioteca, pero elimine el código fuente, depúrelo a través de la aplicación a medida que ingresa a la biblioteca
  • Depurar en un servicio web
  • Aprenda a usar ILDasm e ILAsm

Línea de comando:

  • Familiarícese con el entorno de línea de comandos de Visual Studio
  • Construir usando solo la línea de comando
  • Depurar desde la línea de comandos usando devenv.exe / debugexe
  • Use ILDasm / ILAsm desde la línea de comandos para desensamblar una aplicación simple en .IL, reensamble en un archivo con un nombre diferente, pruebe para ver si todavía funciona

Pruebas :

  • Crear pruebas unitarias (haga clic con el botón derecho en un método, seleccione la opción para crear una prueba)
  • Aprenda cómo: ejecutar todas las pruebas unitarias, ejecutar todas las pruebas unitarias en el depurador, volver a ejecutar las pruebas unitarias fallidas, ver detalles sobre las fallas de las pruebas, ejecutar un subconjunto de pruebas unitarias
  • Aprenda a recopilar estadísticas de cobertura de códigos para sus pruebas

Control de fuente:

  • Aprenda a interactuar con el sistema de control de origen de su elección mientras desarrolla con VS

Refactoring et al:

  • Familiarícese con todas las refactorizaciones incorporadas (especialmente el método de renombrar y extraer)
  • Use " Ir a definición "
  • Use " Buscar todas las referencias "
  • Use " Buscar en archivos " (ctrl-shift-F)

IDE & amp; Atajos de teclado:

  • Aprenda a usar bien el diseñador para la web y las formas de ganar
  • Familiarícese con la ventana del Explorador de soluciones
  • Experimente con diferentes diseños de ventanas hasta que encuentre uno con el que se sienta cómodo, siga experimentando más tarde para ver si sigue siendo la mejor opción
  • Aprenda los entresijos de la inteligencia, utilícelo en su beneficio tanto como sea posible
  • Aprende el método abreviado de teclado para todo lo que haces

Otros consejos

Me concentraría personalmente en aprender primero las partes centrales de C # y .NET. Para mí, eso significaría escribir aplicaciones de consola (en lugar de Windows Forms) para experimentar con el lenguaje y aspectos importantes como IO. Cuando esté satisfecho con los cimientos, pase a cualquier periférico tecnología (WinForms, WPF, ASP.NET, WCF, etc.) que necesita para su proyecto.

En términos de libros, puedo recomendar ambos C # 3.0 en una cáscara de nuez y C # 2008 acelerado . Los enlaces son a mis reseñas de los libros. Ambas cubren las bibliotecas de language + core.  Para empezar, no me preocuparía demasiado el uso de LINQ: siéntase cómodo con el resto del idioma, especialmente con los delegados y los genéricos, antes de abordar LINQ. En ese momento, recomiendo a fondo recomendar jugar con LINQ to Objects por un tiempo antes de comenzar a usar LINQ to SQL o Entity Framework. (Por otro lado, si necesita usar XML, iría directamente a LINQ to XML: es una API XML completa, no solo un proveedor de LINQ. Es mucho mejor que la API DOM normal).

  

Agradecería cualquier consejo sobre cómo   obtener productivo en esa plataforma como   lo más rápido posible.

Experiencia práctica mi amigo. Comience usándolo tan pronto como sea posible para ser productivo lo más pronto posible .

Algunas recomendaciones obvias son:

  • crear acceso directo \ macros \ plantillas para acciones frecuentes. Forzar usted mismo usa atajos en lugar de hacer clic en los menús
  • instale ReSharper - in te dará un aumento de productividad del 1000% (si tienes un par de dólares para comprarlo)

Y no dude en consultar el manual desde el momento a tiempo :)

Elija un proyecto de Python que haya completado en el pasado y conviértalo manualmente a C #. Así es como he aprendido todos los idiomas que conozco actualmente (a excepción del ensamblado x86).

Considere usar IronPython para ayudar a cerrar la brecha. Puede hacer referencia a los ensamblados .NET a través de IronPython, así como crear ensamblados .NET para hacer referencia a partir de C #.

Además, manténgase muy lejos de los libros de ¡Aprenda C # en 21 días! ... Casi nunca están a la altura de las expectativas y, por lo general, son más perjudiciales que bien.

Consigue un excelente libro y comienza a leer. Tengo Pro C # 2008 y la plataforma .NET 3.5 .

Ya que tienes un proyecto en el que trabajar, eso también debería ser de gran ayuda.

Miro el movimiento de Python a C # como un paso hacia abajo en la escalera evolutiva. Espere una experiencia mucho más detallada (por ejemplo, declaraciones de variables y propiedades de clase).

Mantenga un ojo en IronPython : le ayudará a tener la sensación de .NET usando un lenguaje familiar La naturaleza dinámica de Python hace que verificar el comportamiento de .NET sea mucho más rápido que verificar ideas en C #. Puede usar IronPython directamente desde Visual Studio con IronPython Studio .

Transición de Python a C #

Por lo general, aprende el siguiente idioma comparando sus características con los idiomas que ya conoce. Como está familiarizado con Python, lea algunas comparaciones de Python / C # como " Perspectiva de un programador de Python en C # " y " ¿C # 3.0 gana los lenguajes dinámicos en su propio juego? " . El delta entre C # 3.5 y Python no es tan grande.

Haz pequeños mini proyectos. Algo de la parte superior de mi cabeza.

1) Hello world
2) Console
3) GUI     diseño
4) Proyecto de juguete

Te harán subir más rápido a la velocidad que leyendo un tutorial. Toma una cerveza y diviértete.

Microsoft tiene una buena plataforma de aprendizaje para esto:

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

Recomiendo echar un vistazo a la sección " ¿Cómo " serie de videos.

Consideraría esto dependiente de algunas cosas. Por ejemplo, ¿usas el teclado más que el ratón? Si es así obtendría aprendiendo atajos VS. ¿Sabes C # en absoluto? Leer algunos libros Sé que esto es vago, pero es una pregunta un tanto vaga.

Practique, practique, practique, gane experiencia, sea productivo.

Para cada herramienta, sistema, idioma o lo que sea, la forma más rápida de ser productivo es (al menos para mí) entender el trasfondo en lugar de comenzar desde el mundo de hola seguido del tropiezo de un comando al siguiente que usted cree. necesita.

Así que compre un buen libro (por ejemplo, Microsoft Press) o vaya a Microsoft MSDN y Technet y lea todo lo que pueda de fondo. Las cosas detalladas (en el libro o en Internet) pueden ser referidas más adelante.

Además, para aumentar la productividad, únase a listas de correo, IRC, grupos de usuarios, etc. para obtener conocimiento sobre los problemas cotidianos de otros, utilizando la misma herramienta, sistema, idioma, lo que sea.

Luego, después de una semana o dos, comienza la programación.

Lo sé, eso no es lo que uno quiere hacer al comenzar con un nuevo idioma. Pero para mí, este apporach funciona mejor, los últimos años.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top