¿C # es bueno para el desarrollo web de back-end?

Gracias por el A2A!

Diría que C # es un buen lenguaje adicional para el desarrollo web de back-end.

La mayoría de las empresas que se están desarrollando en el espacio web comenzarán con un lenguaje más dinámico: PHP, Ruby, Python o JavaScript son los principales actores allí. Esos lenguajes tienden a ser más fáciles de crear características además del ritmo que es común para las empresas más jóvenes o para aquellas en las que la web no es el foco principal.

Por lo general, solo las empresas exitosas en el espacio web o las grandes empresas en general contratan equipos de desarrollo más grandes que se darán cuenta (y serán capaces de utilizar) los beneficios de los lenguajes de nivel inferior.

En particular, C # tiene una variedad de características increíbles integradas en el lenguaje que hacen que sea genial pasar de lenguajes dinámicos (en comparación con, por ejemplo, Java). Además, permite a los desarrolladores aprovechar el marco .NET de Microsoft, que viene con muchas ventajas a expensas del bloqueo del proveedor. En muchos casos, para cuando vale la pena investigar los beneficios de un lenguaje de nivel inferior, la compañía a menudo está cerca de un proveedor de la nube de todos modos; si ese proveedor es Azure de Microsoft, no hay razón para .NET (y, por extensión, C #) no sería Una elección convincente.

Dicho esto, sería cauteloso al convertirlo en el primer idioma de back-end que se aprende suponiendo que no tenga experiencia previa.

Primero y ante todo, no olvidemos que “Desarrollo de back-end” es un término vago. Puede significar

  • Corriente principal:
  • RPC API + DB. Diga REST + SQL DB.
  • O Web-sockets + documento orientado a DB.
  • No convencional
    • Big data
    • Alta carga
    • Alta disponibilidad
    • Aprendizaje automático
    • Un montón de subprocesos múltiples

    Si estamos hablando de la corriente principal, entonces hay una diferencia muy pequeña entre C # y cualquier otro lenguaje convencional. La elección entre decir C # y Java es más sobre estilo que argumento técnico.

    Si estamos hablando de manera no convencional, la ecuación se vuelve mucho más complicada. PL es una de las variables, pero no la principal. El peso principal asociado con la elección de PL generalmente se trata de cuánto cuesta contratar desarrolladores que lo conocen.

    En pocas palabras, no hay una respuesta simple al rompecabezas multidimensional que realmente es la elección de la plataforma de desarrollo de back-end, pero C # es definitivamente uno de los grandes jugadores en el campo.

    Ahora bien, cuando hacía la pregunta que tenía en mente algo como “C # es mejor que Ruby porque es más rápido, seguramente debería contar para el desarrollo del back-end”, debo decir que generalmente no importa.

    Si estaba pensando en OOP vs funcional, mire C # 7. Apuesto a que C # 8 será aún más funcional.

    Si estuviera pensando que cosas como la función async \ await es importante, estaría de acuerdo.

    ¿F # es mejor? Tal vez. Especialmente si no te importa lo difícil que es contratar un equipo de desarrolladores de F #

    ¿Es mejor el óxido? Seguro. Si tiene tiempo y dinero para desarrollar la mitad de la pila y un buen IDE para ello.

    ¿Es mejor Scala? Para algunas tareas donde hay una biblioteca java que es mejor que la que está disponible en .net. A nivel de idioma, diría que están a la par.

    C # es bastante adecuado para el desarrollo web. Pero de todos modos, la respuesta a su pregunta es que depende. Depende de características tales como portabilidad, rendimiento, etc. ¿Qué es un sistema operativo que está instalado en la máquina que desea utilizar como servidor? Depende de tu equipo. ¿Están familiarizados con C #? Por lo tanto, estas son algunas preguntas que debe responder antes de tomar una decisión.

    Por ejemplo, en C # puede usar la tecnología ASP.Net para crear aplicaciones web, pero requiere el sistema operativo Windows en la máquina host. Existe una solución para C # (aplicación ASP.Net) que podría ejecutarse en sistemas operativos Linux llamada .Net Core, pero esta solución no es madura y puede causar muchos problemas. Python sería más preferible en este caso.

    Espero haber respondido tu pregunta.

    C # contra SQLServer es sólido como una roca para una API REST. Sin embargo, no soy un gran admirador de los servicios en la nube de Microsoft (por ejemplo, Heroku, Amazon o GCP están disponibles en Heroku, Amazon o GCP, pero tengo conocimiento de que ninguno de ellos admite Asp.net). También es una advertencia justa si es un producto de inicio, rodar con Microsoft podría generar cierto nerviosismo con los posibles inversores porque no es una opción popular, pero si tiene un equipo cómodo produciendo usando WebApi en C #, tiene sentido quedarse con él. El problema para mí con Microsoft es alojar sus servicios y su base de datos. Para mí, usar Azure Cloud de Microsoft (al menos a partir de 2014-15) agrega una cosa más que puede romperse (inexplicablemente) y sin mucho soporte, por lo que parece construir una plataforma en un castillo de naipes . Si rodara con un backend de Microsoft, evitaría Azure y me aseguraría de tener a alguien en mi equipo experto en administrar servidores web y de base de datos de la vieja escuela con acceso VPN completo a los servidores. Espero que te sea útil.

    C # tiene .NET Framework de Microsoft, que proporciona mucha más seguridad que los lenguajes de código abierto como Java. También obtendrá inteligencia con Visual Studio.

    También puede evitar la ingeniería inversa de su código a través de la ofuscación.

    Sí, tiene todas las últimas tecnologías en. Marco de red para construir servicios web relajantes para back-end, he trabajado con servicios web, servicios WCF, wcf rest Api ‘s, Asp. Net web api, servicios web de Azure (último) donde puede implementar fácilmente, probar los servicios que crea. Según su requisito, elija uno. Net ofrece seguridad, autorización basada en roles, para servicios web, desarrollo en. Net es fácil.

    C # y .NET están centrados en Windows, por lo que si está contento de permanecer en el universo de Microsoft, entonces sí, C # es bueno para el desarrollo web de back-end. De lo contrario, mira Java.

    ¡Absolutamente!

    ¡Puede usar micro servicios, CQRS o simplemente una simple separación de tres capas!

    ¡C # hace uso de la arquitectura de múltiples núcleos, tiene muchas API que puede usar y un gran marco en el que puede comenzar …!