starter management enabled actuator java .net linux mono

java - management - spring boot actuator security



¿Por qué usar Mono? (13)

¿en una palabra? Multiplataforma

¿Cuáles son los principales beneficios de usar Mono sobre Java (o cualquier otro lenguaje / tiempo de ejecución "libre" o compatible con Linux)?

Mono siempre estará detrás de los últimos desarrollos en .NET framework, ¿por qué querría usar Mono sobre otro lenguaje / framework tradicional de código abierto (Java)?

EDITAR: Al igual que alguien mencionado a continuación, supongo que la pregunta raíz es, ¿por qué querrías usar .NET en la plataforma Linux?


A algunas personas les gusta C # mejor que Java. Además, considere que C # es un lenguaje estándar ISO, mientras que Java no lo es. ¿Tal vez quiera ejecutar código ASP.NET en un servidor Linux? Hay muchas razones, de verdad.


Creo que se trata de preferencia personal. Me siento cómodo con c #, y quiero desarrollar aplicaciones que pueda ejecutar en mi computadora portátil Ubuntu o mi computadora portátil Vista. Por lo tanto, uso mono. Si estuviera más cómodo con Java, probablemente sea eso lo que usaría.

Solo mis 2 centavos.


Dado que Microsoft envía cambios al estándar ISO C # antes de que los hagan, en teoría, Mono no NECESITA rastrear .NET. En realidad, el gran presupuesto antiguo de MS llega primero a la línea de meta.


La respuesta es bastante obvia: porque quiere usar .Net en Linux.

Por supuesto, esto plantea la pregunta (que creo que es realmente a lo que te refieres): ¿por qué querrías usar .Net en Linux (a través de Java)?

Muchas razones:

  • Código común entre su servidor y, por ejemplo, una aplicación WPF o Winforms;
  • Uso de un lenguaje .Net particular, como F #;
  • Características del lenguaje que no están en Java (cierres, sobrecarga del operador, clases parciales, genéricos de tiempo de ejecución, indexadores, delegados, LINQ, tipos de var, etc, etc.);
  • Tus habilidades o las de tu equipo ya están en C #;
  • etc.

Personalmente, tengo más confianza en la plataforma Linux como servidor, pero quiero usar C # como lenguaje de programa.


Trabajé para una empresa cuyo producto principal fue escrito en ASP.NET. Se dieron cuenta de que probablemente podrían aumentar su cuota de mercado si pudieran hacer que su producto se ejecutara en servidores Linux. Esto, por supuesto, sería bastante difícil si no fuera por Mono. Me dieron la tarea de pasar algún tiempo viendo cuánto (si alguno) de su código se ejecutaría bajo Mono. Esto habría sido hace aproximadamente 2 años, la mayoría compilados, pero el apoyo de Mono a los genéricos en ese momento dejaba poco que desear. Creo que ha madurado desde entonces, pero parte del código ni siquiera se analizará. El código también hizo uso de p / invoke un poco para llamar al código nativo, por lo que hizo las cosas un poco interesantes también. Sin embargo, fue divertido intentar hacerlo funcionar.


¿Cómo es que nadie ha mencionado que Linux es gratis?



He usado mono como un compilador cruzado, en efecto. Agregué algunas líneas "ejecutivas" a un archivo existente de compilación java / ant para llamar a mono como el compilador, por lo que hubo un único proceso de compilación de línea de comando completo.

Tuve que escribir una capa de envoltura de C # alrededor de un código de PC que tenía que usar nuestra base de código de java-on-linux, pero no me atreví a exigir que se iniciara Visual Studio (en una computadora separada) solo para comprobarlo. fuera y proceso de construcción.


Cualquiera que use Mono se enfrenta al peligro de la patente de software de Microsoft.

Es por eso que no solo debe evitarse Mono para nuevas aplicaciones sino también C # en primer lugar.

La migración a Mono solo tiene sentido si ya te has quedado con Windows y quieres escapar.

Por qué el software libre no debería depender de Mono o C #


Como todos dicen, "ejecutar C # en Linux" o "ser multiplataforma" o lo que sea.

La razón por la que estoy interesado en Mono, y aún no me he convencido de tocarlo, es la posibilidad de aprovechar todas las ventajas que ofrece .Net que Java no ofrece. Básicamente, su pregunta se reduce a una comparación Java vs. .Net, y no voy a comenzar a recorrer un millón de puntos de comparación entre ellos (en Google encontrará decenas de comparaciones de J2EE vs. ASP.NET, que es una parte, y Java vs. C #, que es otra).

Pero, ¿cuál es la gran diferencia entre .Net y Java? Tiene que ver con la fuerza monolítica detrás de .Net (Microsoft y Novell está tratando de traducir eso a otras plataformas) o el enfoque de múltiples proveedores de Java. Solo el proceso de elegir un servidor de aplicaciones puede ser suficiente para que algunas personas elijan Mono.

¿Qué le ofrece un gran proveedor monolítico como Microsoft que Java parece no tener:

  1. Documentación centralizada (fue "Documentación increíblemente buena, todo en un solo lugar", pero varias personas me han dicho que estoy equivocado)
  2. No es necesario realizar elecciones de plataformas individuales (p. Ej., ASP.NET o ASP.NET, no servlets + JSP + JSTL? + Axis)
  3. Otra cosa que estoy olvidando

Y luego están las otras diferencias masivas: Java es un lenguaje único y Mono (creo) puede ejecutar código compilado CLR desde una variedad de idiomas.


Mono está atrasado en algunas cosas, pero muy por delante en otras. Por ejemplo, Mono admite SSE y compilación completa antes de tiempo: integrada. Por otro lado ... a Mono le tomará algún tiempo implementar todas las novedades en la próxima versión de .net ... por ejemplo ... las bibliotecas paralelas bastante extensas.