¿Por qué debería aprender C #?

En breve:

  • Es fácil de aprender , en comparación con otros lenguajes como C, C ++ y Assembly. El tiempo de ejecución trata automáticamente con un montón de cosas que el programador tiene que tratar en otros idiomas y, por lo tanto, facilita la programación. Los programadores avanzados aún pueden usar estas funciones manualmente si es necesario.
  • Es versátil Puede crear aplicaciones móviles, aplicaciones de línea de comandos de escritorio, aplicaciones GUI de escritorio, sitios web, etc.
  • Interactúa bien con otros productos de Microsoft , incluido el sistema operativo Windows, Microsoft SQL Server, IIS, Active Directory, aplicaciones de Microsoft Office, etc.
  • .NET Framework , en el que reside el lenguaje, contiene una gran cantidad de bibliotecas capaces de hacer casi cualquier cosa. El código que necesita escribir es mínimo: el resto ya está implementado en las bibliotecas.
  • A pesar de la idea errónea común, el código C # puede ejecutarse en cualquier plataforma , siempre que haya un CLR compatible. Esto es gracias a la compilación Just-In-Time que traduce el código CIL a código de máquina solo en tiempo de ejecución, y no antes como con otros lenguajes como C, C ++ y Assembly.
  • Es seguro Debido a que el código se ejecuta a través del CLR y no directamente por el procesador, el código es mucho menos vulnerable a muchos problemas de seguridad que sufren otros lenguajes, como la corrupción de la memoria.
  • Es popular en el mundo , sin duda encontrará soluciones a cualquier pregunta.
  • Es moderno y constantemente actualizado y mantenido . Hasta abril de 2017, la última versión estable de C # es C # 7.0 que se lanzó en marzo de 2017.
  • Es compatible con el potente IDE de Visual Studio . Incluso vale la pena usarlo para otros lenguajes como Python, C ++, Visual Basic e incluso JavaScript.

oh mi 🙂 no es una palabra positiva para C # 🙂
Esta será una respuesta sesgada, pero vas y lees otras respuestas para equilibrarla.
Para mí, C # sigue siendo el mejor lenguaje de la tienda. Período. ¡Cómelo, el universo!
¿Por qué?
Principalmente por cómo defino “mejor”. Rezo en silencio para que la gente pueda definir “mejor” de manera similar, así que déjame continuar.
1) académico vs práctico: este es un eje en el que C # late, digamos Haskel o Clojure
2) más cerca del metal frente al modelo mental más fácil: es por eso que es mejor que Rust o, por ejemplo, D para mí. No estoy escribiendo sistemas operativos o navegadores.
3) herramientas excelentes: F # es mejor lenguaje, pero C # es aún mejor en herramientas. Tanto es así que también estoy comenzando mi próximo proyecto en C #. Estoy seguro de que algún día las herramientas para F # serán lo suficientemente buenas.
4) seguridad de tipo: uno definitivamente necesita saber los idiomas sin verificaciones de tipo de tiempo de compilación, pero bueno, tan agradable como esos cuando su programa tiene <1000 líneas de código y <3 meses en desarrollo, lo horrible que son una vez que es > 5000 líneas de código conciso y> 1 año en desarrollo. Por eso no es Ruby, Perl, Python o Php. Me gusta vivir con mis proyectos. No me gusta dejarlos ir antes de reescribirlos un par de veces desde cero en las refactorizaciones 😉
5) Estoy acostumbrado a Windows: así que no a Java. Además, todo el camino C # ha estado por delante. En este momento, Java no tiene async / wait, por ejemplo, y realmente no puedo imaginar mi vida sin él, ahora que estoy acostumbrado.
6) Realmente no me importa cuán multiplataforma es el lenguaje. Incluso mi teléfono está ejecutando Windows. ¿Y por qué debería hacerlo? Deje que mi empleado decida en qué plataformas quiere que se ejecute su soft. No tengo ninguna opinión al respecto, si bien es fácil encontrar trabajo en C #. Y no piense que no me apasiona la programación y solo lo hago en el trabajo también. Es solo que no encuentro sistemas * nix TAN sorprendentes que debo mojarme los pantalones cada vez que alguien menciona pingüinos.

Entonces, ahora puede repasar esta lista y decidir dónde se encuentra en esas escalas.

PD: Solo para ser una tarifa: a partir del año pasado, C # es realmente de código abierto y multiplataforma. No mono Hoy ya puede escribir un servidor web con él (corríjame si me equivoco, pero es todo lo que puede hacer con, digamos, Ir).

PPS Por favor, lo que elija, no aprenda C ++. El lenguaje críptico realmente necesita ser dejado solo para morir.

NO hay razón para que aprendas C #. Como porque es un lenguaje propietario que se ejecuta solo en el ecosistema de Microsoft. (Pl. No me hables del proyecto mono).

Mejor opte por lenguajes de plataforma de código abierto y gratuito como C, C ++, Perl, Python, Ruby, Haskell, JavaScript y muchos más para enumerar. No sugiero Java porque sus bibliotecas en tiempo de ejecución son propiedad de Oracle (y también propietarias) y eso requiere una licencia exclusiva de Oracle Inc. (OpenJDK tiene algunas limitaciones). Y esa es la razón por la que Google tuvo problemas para incorporar Java en el sistema Android, ya que Oracle presentó una demanda con respecto a la licencia de Oracle JDK vs OpenJDK.

Debería preferir lenguajes de especificación estándar abiertos para que no obstaculice su desarrollo por demandas judiciales e infracciones de derechos de autor.

También me gustaría sugerir que elija Perl 6 (consulte la documentación de Perl 6) (que se lanzará en 2015). Es un lenguaje fantástico e impresionante (no está relacionado con Perl5, pero es compatible con versiones anteriores de Perl5). Hay muchas implementaciones de esto. El primero que recuerdo inmediatamente es Rakudo Perl ( http://rakudo.org/ ). Está basado en MoarVM (una VM para NQP y Rakudo Perl 6). Anteriormente se basaba en ParrotVM ( http://parrot.org/languages ).

Perl 6 es un lenguaje a prueba de futuro y sus especificaciones (que tardaron más de 10 años en diseñarse) están diseñadas para servir durante los próximos 100 años. La próxima era sería descansar en Perl 6.

Confía en mí si dominas Perl 6, sobrevivirás durante toda tu vida.

Como la mayoría de la respuesta, la compilaré aquí

  1. El lenguaje más cercano a Java
  2. En Windows, es muy rápido.
  3. Con un marco como Xam * rin puedes desarrollar aplicaciones Apple / Android.
  4. Gran comunidad
  5. No hay dudas sobre la estabilidad.
  6. Puede crear un sitio web con un marco increíble como ASP MVC.
  7. Buen soporte de Microsoft
  8. Muy pronto podrás ejecutarlo en Linux (ahora es de código abierto)

Soy muy abierto a muchos idiomas y también C # pertenece a mi stack, pero está lejos de ser mi idioma favorito. Hablemos de los profesionales:

  • C # es rápido
  • Procedente de lenguajes como Java, es fácil de adaptar
  • Se puede usar para muchos tipos de proyectos diferentes, como aplicaciones de escritorio o servicios web
  • Buen soporte de Microsoft

Pero también hay varias desventajas:

  • Aunque hay proyectos de código abierto que intentan llevar el idioma a otros sistemas operativos para mí, es un idioma exclusivo de Windows (y, por lo tanto, no es un idioma que quiera usar para mis propios proyectos)
  • Otros lenguajes ofrecen más pracmatismo y ayudan al desarrollador a lograr cosas más rápido.

Personalmente prefiero los idiomas independientes de la plataforma. Si quieres aprender C #, siéntete libre. Pero prefiero otros idiomas.

Nadie puede responder esa pregunta por ti.

Si vives cerca de mí (y presumiblemente en otras partes aleatorias del mundo), te mantienes actualizado sobre C # porque las compañías que están contratando tienen trabajo en C #. En otras regiones, hay una mezcla diferente, pero es muy probable que me muera de hambre (o requiera un largo viaje) si me negara a trabajar en C #.

Si desea hacer algo en un sistema de Microsoft, especialmente algo que aprovecha las características de los sistemas operativos, sería negligente trabajar en algo que no sea C #. Me arriesgaré y diré que no hay mejores bibliotecas para interactuar con Windows que las que se incluyen con .NET, lo que significa que ahorrará tiempo con el tipo que insiste en que Java, Ruby o lo que sea sea siempre el mejor lenguaje. .

Si te gusta aprender nuevos idiomas, C # es una posición segura. Tiene muchas características semi-innovadoras, pero es lo suficientemente familiar para la mayoría de los lenguajes tradicionales que no es desagradable, y la forma de pensar sobre las cosas es en su mayoría consistente.

No hay respuestas de por qué deberías aprender algo específico. Eche un vistazo y vea si le interesa. Eche un vistazo a sus publicaciones de trabajo locales y vea si es rentable. Vea si se adapta a su proyecto de mascota. Pero toma la decisión por ti mismo, en lugar de asumir que alguien más sabe lo que es bueno para ti sin conocerte …

Mi sitio web ayuda con todas las mejores fuentes de aprendizaje sobre cualquier tema y ayuda con esta pregunta. Compara los diferentes lenguajes de programación y cómo aprender cada uno. Para C #, su uso principal será para aplicaciones de Microsoft (que obviamente es un gran mercado). Visite el sitio en Programación y Desarrollo y debería obtener mucha ayuda sobre los recursos correctos para buscar.

¿Por qué?

Por qué no?

C # es un lenguaje muy agradable. Es propiedad de Microsoft, pero hay Mono para Unixes que le permite ejecutar código C #.

C # es similar a Java pero ha evolucionado más a partir de él.

Si va a desarrollar para Windows, probablemente C # debe ser su plataforma de elección, dado que es un ciudadano de primera clase en dicha plataforma.

More Interesting

¿Cuáles son las pruebas más importantes que uno debe estudiar en el campo de la informática teórica?

¿Cuáles son los mejores métodos para la gestión de proyectos en un entorno altamente incierto?

¿Cuáles son los temas de actualidad en la investigación de Arquitectura de Computadores?

¿Qué sería si Matrix Chain Multiplication se resuelve mediante el método Greedy?

¿Cómo debo revisar la literatura relevante sobre un tema muy específico sobre el cual no tengo mucho conocimiento?

¿Cómo proceder si tengo la intención de investigar en Ciencias de la Computación pero de una escuela de posgrado promedio donde la investigación es inexistente incluso para los profesores?

¿Qué es el modelo computacional y su relación con la arquitectura informática?

¿Cuál es el contexto de los algoritmos de transmisión en la ciencia de datos?

¿Es una buena idea hablar de aspiraciones de investigación interdisciplinarias en mi Declaración de Propósito?

¿Cuáles son algunos de los mejores libros sobre economía computacional?

¿Cómo puedo obtener una beca para presentar mi trabajo en una conferencia internacional de renombre?

¿En qué problemas están trabajando actualmente los investigadores?

¿Cuál es el mejor lugar para comenzar a prepararse para la investigación en lenguajes de programación?

¿Cuáles son los principales problemas abiertos en la teoría de la complejidad computacional?

¿Cuáles son los mejores trabajos de investigación, blogs u otros escritos perspicaces sobre el ecosistema bitcoin?