Red de conocimiento informático - Problemas con los teléfonos móviles - ¿Cuál es el mejor lenguaje para desarrollar en unity3D?

¿Cuál es el mejor lenguaje para desarrollar en unity3D?

Pregunta interesante.

Mira el resumen del webmaster.

Por supuesto, el resultado depende de ti.

En primer lugar, lo que se extrae aquí es InfoQlt;JS?OR?C#?El script inexistente disputagt;

En Unity3D, ¿cuál es mejor, C# o JS?

La pregunta más común es simple: ¿Cuál se ejecuta más eficientemente, un juego u3d escrito en JS o un juego u3d escrito en C#?

La respuesta más común es: ?Definitivamente C#, porque js es dinámico. Ciertamente no es tan bueno como un lenguaje compilado.

La segunda pregunta más común es: ?¿Qué es más rápido y mejor para mí, desarrollar en js o desarrollar en C#?

La segunda respuesta más común es: "js es adecuado para el desarrollo personal, ágil y rápido; c# es adecuado para el desarrollo empresarial, estandarizado y estricto.

Todavía utilizamos la discusión sobre javascript y C# Resolvamos las diferencias entre C# y UnityScript según el orden de esencia y rendimiento. Además, respondamos las dos preguntas anteriores

Las similitudes esenciales

La primera. Parte del artículo menciona que UnityScript y C # son lenguajes al mismo nivel y que también deben pasar por el proceso de transición del código fuente al lenguaje intermedio CIL y finalmente compilarse en un lenguaje local. lo que finalmente se ejecuta es el lenguaje de máquina nativo compilado a partir de CIL. Pero C# es realmente más rápido, entonces, ¿cuál es el problema?

Una posible respuesta, pero no la única, es que UnityScript y C# generan un lenguaje intermedio CIL. de manera diferente.

Esto es muy simple. Al igual que el problema de var mencionado anteriormente, si usa Object para manejar var, inevitablemente conducirá a operaciones frecuentes de boxing y unboxing, lo que tendrá un impacto significativo en la eficiencia.

Entonces, sí, C# es más rápido, pero la razón es que UnityScript implica operaciones frecuentes de boxing y unboxing, lo que genera un código CIL diferente al de C#, no porque UnityScript sea un lenguaje dinámico y no esté compilado.

p>

La realidad es simple

¿Desarrollar en C# o UnityScript? Si no quieres pensar en la eficiencia, solo piensa en la sensación al desarrollar, entonces te diré mi opinión. - valora tu tiempo y mantente alejado de UnityScript

En primer lugar, debemos aclarar algunos hechos:

UnityScript es un lenguaje de terceros, a saber, Boo, que nació. Plataforma .NET. Boo es el lenguaje de terceros de la plataforma. La diferencia entre el llamado lenguaje de terceros y C# es como si eres una persona real o si tu padre es Lao Wang, el vecino. dimensional. El soporte de la comunidad, el mantenimiento del código e incluso la calidad del código CIL compilado pueden variar mucho. Antes de elegir UnityScript, pregúntese si ha oído hablar de Boo. No olvide la relación entre UnityScript y Boo. > Excepto por su apariencia similar, UnityScript y JavaScript no tienen ninguna relación en absoluto. En JavaScript, eres como un pez en el agua, pero si no tienes cuidado en UnityScript, tendrás peligros ocultos y algunos peligros ocultos pueden estar profundamente ocultos. UnityScript también es un lenguaje estático que también requiere compilación, por lo que no estoy seguro de por qué sería rápido para cualquiera elegirlo como lenguaje de desarrollo.

Soporte de complementos. Parece que la mayoría de los complementos están escritos en C#.

Bueno, si no te interesan los tres puntos anteriores, entonces no está mal que eches un vistazo a la actitud oficial.

El equipo oficial de la U3D elaboró ​​un gráfico de proporción de uso del idioma basado en el análisis de datos.

A partir de Unity 5.0, se suspenderá la compatibilidad con la documentación para el lenguaje Bu ya que el uso del lenguaje es esencialmente insignificante. Además, la opción para crear un script Boo desde el menú "Crear?Boo?Script" desaparecerá. La actitud del equipo de U3D hacia Cloth es un buen indicador del futuro de UnityScript, que está estrechamente vinculado a Cloth.

Al mismo tiempo, el equipo de U3D cambiará el enfoque de soporte a C#, lo que significa que la documentación, los ejemplos y el soporte de la comunidad estarán centrados en C#, y la comunidad tendrá la mejor documentación de C# y la más Ejemplos detallados de código C# y el mayor número de participantes en C#.

Gracias a INFOQ por proporcionar el texto original.