¿Cuáles son los lenguajes de programación más utilizados? [cerrado]


24

Cuando tomé mis cursos de Java hace un año, me dijeron que Java se usa principalmente en las compañías de juegos en el extranjero, mientras que C ++ se usa aquí en los EE. UU. ¿En qué idiomas debería centrarme en aprender en profundidad?


3
Yo sospecho que la razón por la que tiene esta respuesta se debía a que el desarrollo móvil - que ha basado en Java sido históricamente - era mucho más grande en Europa que en los EE.UU. (desde teléfonos inteligentes eran mucho más grandes en Europa que en los EE.UU.), y el C ++ - basada estudios de desarrollo de la consola , viceversa. Las "compañías de juegos" son una amplia gama de plataformas, mercados y presupuestos.

Respuestas:


28

Los lenguajes de programación comunes se pueden dividir por "tipo" de desarrollo de juegos.

Los juegos grandes de triple A que están superando los límites de los gráficos generalmente utilizan una mezcla de C y C ++ para la mayoría del proyecto. A menudo, se incluirá un lenguaje de secuencias de comandos, aunque esto no es necesariamente cierto para todos los motores.

El código de juego a menudo se escribe en un lenguaje propietario (UnrealScript), Python, Lua (CryTek, Spark Engine) o, en algunos casos, C # (Los Sims 2). Algunos motores de juegos están comenzando a admitir JavaScript (Unity, etc.).

Los lenguajes de sombreado también se utilizan, por supuesto.

En el ámbito móvil, los iPhones están dominados por el objetivo C, mientras que la mayoría de los otros teléfonos celulares utilizan Java (Android, Brew, etc.).

En cuanto a las empresas independientes o pequeñas, pueden estar utilizando prácticamente cualquier cosa dependiendo de sus plataformas de destino. Por ejemplo, C # es común con los pequeños desarrolladores de Live. Los desarrolladores de Flash obviamente usan ActionScript.

Ahí vas. Espero que ayude.


¡No deje de lado la nueva cosecha de juegos Javascript Canvas / WebGL basados ​​en web que se ejecutan en navegadores web!
ehsanul

Totalmente, tienes razón. Lamentablemente, no hay muchos de esos juegos que se están monetizando. Pero sí, eso sería correcto agregar a la lista.
AA Grapsas

¿A quién llamas poco tiempo?
Spooks

Muchos de los juegos móviles mejor clasificados también están escritos en C ++ con un contenedor Objective-C / Java (tanto iOS como Android lo permiten). XNA (C #) es útil para trabajar con Windows Phone 7 así como con el indie mercado en XBox.
Nick Gotch

34

C ++ es la lengua franca de la industria de los juegos de consola. C # se usa bastante para herramientas y tuberías.


16

C ++ es bastante prominente en el mercado actual de juegos. Pensamiento C todavía se usa ampliamente.

Al hacer juegos, su enfoque principal no debe ser el lenguaje sino el producto final. Nunca comience un proyecto pensando "¿Cómo podemos hacer esto en el lenguaje X?" pero "¿Cómo podemos hacer esto de la mejor manera posible?"


99
No es que no esté de acuerdo con usted, pero los lenguajes más comunes son posiblemente los más compatibles y, por lo tanto, es más probable que sean mantenibles que algo más esotérico. Elegir idiomas populares tiene sus beneficios.
Tetrad

3
@Tetrad oh, estoy totalmente de acuerdo. Pero esto a menudo ha llevado a un camino donde algo podría haberse resuelto de una manera mucho más simple con alguna otra herramienta / lenguaje.
Ólafur Waage

Aunque si el lenguaje es más simple, pero ningún desarrollador lo usa, ¿es realmente más simple? Como, muchas cosas son mucho más simples en, por ejemplo, Haskell, Python o Lisp que en C ++. ¿Pero es realmente así?
Jürgen A. Erhard

8

La última fuente es el Índice TIOBE . De acuerdo, no te dirá para qué se usa cada idioma ...


3
El índice TIOBE está lejos de ser confiable. La única razón por la que Delphi está en el número 11 es que la comunidad de Delphi en masa decidió bombardear el índice y avanzar en la tabla.
rtperson

15
¿En serio, los cinco? Eso debe haber tomado un tiempo.
Mike Strobel

-1 que no responde la pregunta.
Klaim

1
@ Mike One murió de ... bueno, no puedo decirte. Es un secreto.
Mateen Ulhaq

He estado buscando un sitio como este durante mucho tiempo, pero no lo sabía. ¡Gracias!
Evorlor

7

Como ya se mencionó, C ++ es esencialmente el lenguaje para aprender; Todas las consolas principales albergan un entorno de desarrollo C ++, para bien o para mal. C # está comenzando a despegar, en los juegos con tecnología XNA, pero a menudo también se usa para el desarrollo de herramientas.

Lua es también uno de los lenguajes de script más utilizados en los juegos; Es útil tener al menos una familiaridad pasajera con él.

A menudo, la cadena de compilación utilizada para compilar el juego contendrá scripts escritos en Python o Perl; es útil estar familiarizado con ellos también (aunque no es un requisito).


4

Es mejor no aprender un idioma, sino aprender diferentes conceptos de programación y cómo aplicarlos en algunos idiomas, marcos y entornos diferentes.


4

No te olvides de PHP. Es muy popular en MMORGP jugado a través del desarrollo WWW. En Polonia fg hay una gran cantidad de MMORPG basados ​​en el motor Vallheru, escritos completamente en PHP.


O, para el caso, solo marcos de desarrollo web en general, ¡buena mención!
Zombies

0

Tal vez no deberías concentrarte en aprender un idioma específico. Deberías cómo desarrollarte.

Ayer, descargué el SDK de iOS y Xcode. Y lo tomé de inmediato e hice un pequeño tetris. Soy un chico as3, y ni siquiera me he molestado en aprender Objective-C. Pero pude hacer un juego simple porque entiendo cómo desarrollarme.

Entonces, mi punto aquí es que tal vez debería pasar más tiempo aprendiendo nuevos conceptos que un idioma específico. O aprenda idiomas X y transfiera su conocimiento a otros idiomas.


0

El desarrollo del juego es una programación de aplicación de forma de juego de pelota diferente.

En el mundo de los juegos se trata de velocidad. Al empujar el sobre con gráficos HD de 1080p, sonido de muestreo alto y nex gen AI, cada último ciclo de procesador cuenta.

Históricamente, C y C ++ han sido los ayunos, pero Java es ahora comparable a C ++ en términos de velocidad en algunas circunstancias.

C ++ le permite un mayor control sobre la arquitectura en la que diseña que cualquier otro lenguaje.

La mayoría de los desarrolladores senior de juegos son muy avanzados, lo que significa que se les enseñó a la vieja escuela, ya que se inventaron y, como tales, son muy competentes en tecnologías antiguas.

Pero la razón más importante por la que el desarrollo de juegos comerciales favorece a C ++ es que se ha utilizado durante más de 15 años en la industria de los juegos y hay literalmente miles de millones de bibliotecas internas y de acceso público para ello. Si lo desea, es probable que alguien lo haya construido en c ++.

Una vez dicho esto, Java se está volviendo cada vez más popular, ya que hace que sea más fácil desarrollarlo en la arquitectura móvil móvil y en constante cambio, pero los juegos innovadores continuarán teniendo su núcleo escrito en c ++ durante algún tiempo.


-1

Objective-C para dispositivos iOS, por supuesto. https://developer.apple.com/library/ios/#referencelibrary/GettingStarted/RoadMapiOS/chapters/Languages.html Y la mayoría de los programas OS X también están codificados en él: https://developer.apple.com/technologies/ mac / cocoa.html


3
No respaldado en absoluto.
doppelgreener

tiobe.com/index.php/content/paperinfo/tpci/index.html lo muestra como # 3. Aunque puede argumentar los méritos del índice tiobe, no hay forma de argumentar que Objective-C no se usa comúnmente.
nevster

Una mejor justificación que la horrible agregación de basura que es Tiobe sería simplemente hacer referencia a la documentación del desarrollador de Apple, que indica que la cadena de herramientas preferencial para el desarrollo de iOS (y OS X) incluye Objective-C ya que la API central completa está expuesta en ese lenguaje .
Josh

Ok - enlaces agregados. Solo puedo imaginar que los votos negativos provienen de enemigos o personas que son bastante ignorantes.
nevster
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.