2010-11-01 8 views
6

Hola, estoy aprendiendo C# y solo he pensado en una buena idea. Teniendo en cuenta que un juego era bastante simple. Digamos, una nueva versión de un clásico juego de estilo de entrada de texto, un juego de C# podría portarse en teoría a todas las plataformas que mencioné anteriormente, con poco o ningún cambio en el código fuente original, ¿correcto?Un juego de C# para gobernarlos a todos (iOS, Android, WP7, W7, Mac OS X y XBOX)

Obviamente, la interfaz de usuario tendría que ser modificada, ¡y dudo mucho que un juego realmente pueda sobrevivir en cada una de esas plataformas!

Pero, aunque C# es realmente pesado en MS, a través de diferentes métodos, eso podría funcionar, ¿no? O, ¿tendría que cambiar la fuente de C# a Objective-C? ¿Android incluso tiene un idioma oficial que admiten como Apple y MS?

Esto es una pregunta extraña, pero si esto es cierto, entonces C# es realmente un buen lenguaje multiuso a pesar de que está ampliamente basado y respaldado por MS.

+4

Principalmente es un flujo de trabajo, podría usar C#/XNA para hacer un juego de Windows/Xbox/WP7 y probablemente use C# a través de Mono/MonoTouch para hacer una implementación de OS X/iOS. Android no tiene una implementación mono adecuada en este momento para apoyar esto. Esto no pretende ser desalentador, también MS ha dado el lenguaje C# a la comunidad. Http://www.microsoft.com/interop/cp/default.mspx –

+0

Puede enviar esto como respuesta, pero sí , He estado investigando y, de lo contrario, hubiera pensado en Android. – Qcom

+0

ios-> iphone –

Respuesta

11

decidí publicar una causa respuesta pensé en una algunas cosas más relevantes para decir.

Primero en responder a sus preguntas: Sí, funcionaría. No, no tendrías que ingresar a Objective-C. Las aplicaciones de Android a menudo usan Java.

Y un poco más de fondo ...

que estoy escuchando cosas buenas sobre MonoTouch y MonoDroid para el desarrollo multiplataforma usando .Net, C#.

Ya has aceptado que tendrás que manejar las capas de IU específicamente para cada plataforma, por lo que estás en el camino correcto.

Es importante destacar que, el 9 de septiembre, Apple relajó sus directrices que anteriormente impedían que las aplicaciones creadas con Monotouch se lanzaran al mercado.

Statement by Apple on App Store Review Guidelines

En particular, se están relajando todas las restricciones a las herramientas de desarrollo utilizados para crear aplicaciones iOS, siempre y cuando las aplicaciones resultantes no descargar ningún código . Esto debería darles a los desarrolladores la flexibilidad que desean, mientras que preserva la seguridad que necesitamos.

También de interés, desde el blog de Craig Dunn ...

ConceptDev (Craig Dunn's blog): MonoTouch meet WindowsPhone7

+0

¡Sí!Sabía que había una declaración hecha por Apple. Necesito encontrar otras aplicaciones creadas usando monotouch y ver si siempre hay retraso. – Qcom

+0

Tendrás razón en cuanto a la política en el lado de Android. El aspecto único de Android es que los desarrolladores pueden hacer lo que queramos, sea bueno o malo. –

1

Puede que sea mejor que se quede con C++, para lo cual iOS y Android tienen soporte nativo.

+0

OK, aunque necesito aprender los conceptos básicos de C# para ASP.NET, así que pensé que sería bueno poder escribir algunos juegos con el mismo lenguaje. – Qcom

4

No soy un experto en el desarrollo del juego, pero aquí mis 2 centavos,

Usted no tiene ningún problema con el desarrollo de juegos en C# dianas todas las plataformas, mono c# se ejecuta con éxito en todos por encima de dicho plaforms incluyendo monodroid - andriod y MonoTouch - iphone.

Pero el problema es específico de las bibliotecas gráficas que va a utilizar. Por ejemplo, las bibliotecas Xbox solo se dirigen a Windows. Pero si te quedas con openGL, puedes resolver el problema.

+0

¡Gracias por los enlaces Mono y la sugerencia OpenGL! – Qcom

+1

Hubiera dicho lo mismo que Ramesh en el contexto de su pregunta. A través de monotouch y monodroid tienes la opción de hacer C# en todas las plataformas que mencionaste. Usted reconoció que tendría que tratar con la capa de interfaz de usuario por separado, por lo que es un hecho. –

+0

Sí, al descargar una aplicación de muestra hecha con monotouch, puedes distinguir al instante casi una construida con monotouch de una aplicación estándar de Object-c. Lamentablemente, – Qcom

6

sobre todo es una quimera, podría utilizar C#/XNA para hacer un/Xbox/WP7 juego de Windows y es probable que el uso de C# a través de Mono/MonoTouch para hacer una aplicación OS X/IOS. Android no tiene una implementación mono adecuada en este momento para apoyar esto.

Esto no es en absoluto la intención de ser desalentador, también MS ha dado el lenguaje C# para la comunidad por lo que es positivo ..

http://www.microsoft.com/interop/cp/default.mspx

+0

No hay desaliento tomado, ¡gracias por la publicación! – Qcom

1

No hay razón para necesidad C#, después de todo, se puede utilizar para el desarrollo Vb.net ASP.net:) (no es broma, es un lenguaje mejor, especialmente teniendo en cuenta el soporte xml incorporado que tiene VB)

Sin embargo, para el desarrollo móvil, creo que vas por el camino equivocado para el desarrollo multiplataforma. Para esto, siempre obtendrá el 80% de la cobertura, el último 20% será un dolor. Por ejemplo, si eliges C#, obtendrás Windows y XBox, pero no Playstation y un iPhone muy pobre.

Por lo tanto, necesita el demoninador común más bajo, y probablemente sea C++. Puedes poner una GUI de Qt en la parte superior (con el excelente QML que posiblemente sea la mejor tecnología de interfaz de usuario en este momento), y eso se ejecutará en la mayoría de las plataformas, incluido Android. Pero no WinPhone7. C++ sigue siendo una buena opción para todas las plataformas, ya que incluso Windows lo ejecutará (C++/CLI) y de todos modos hay un puente fácil entre el objetivo C y C++. Su mejor opción es probablemente ir por esa ruta (y un lote de desarrollo de juegos se realiza en C++ de todos modos, por lo que no es un esfuerzo desperdiciado).

Sin embargo, es probable que nunca obtenga una base de código única que funcione lo suficientemente bien en todas las plataformas. Sin embargo, tal vez javascript sería lo último, ya que MS 'Bob Muglia has said ya no se están enfocando en Silverlight, prefiriendo HTML5 + javascript para el trabajo multiplataforma.

+0

Bueno, puedes usar VB.net pero hay mucho más soporte para C#, y como he dicho, al menos podría desarrollar un fuerte antecesor para XBOX, Windows y WP7. Agradezco su respuesta, pero no estoy totalmente de acuerdo con usted. Por supuesto, hay mejores opciones, pero podría funcionar. – Qcom

+2

Merece la pena ver la historia de html5 + javascript ... incluso si es solo para la capa de interfaz de usuario, incluso podría ser la solución para hacer que la capa de interfaz de usuario sea una plataforma cruzada, pero sigue siendo un plan para el futuro. Aún puede elegir qué usar para implementar lo que esté debajo del capó (y en su servidor si corresponde). –

+1

Con respecto a la confusión en torno a Silverlight y BobMu en la actualidad, la declaración de SteveB también vale la pena mirar. http://www.microsoft.com/presspass/press/2010/nov10/11-01Statement.mspx La interpretación de la comunidad parece un poco turbia en este momento, puede tomar un poco de tiempo para que la imagen se aclare. –