Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Orientar lo poco que se a video juegos

Iniciado por Yotes, 19 de Mayo de 2009, 09:46:42 PM

« anterior - próximo »

davur

Ha quedado muy claro, Yotes, y eres extremadamente caballeroso (y me parece genial, por supuesto). En cualquier caso, la decisión es la correcta, y te ahorrará disgustos innecesarios.

Sólo lo decía para minarle un poco el ego al chico.

Hans

#61
Cita de: davur en 23 de Mayo de 2009, 05:52:10 PM
Excelente decisión, Yotes. Ignorar las barbaridades recomendadas por Hans es la decisión más inteligente que podías haber tomado.


Yo la tengo más grande mami!!! Vete a por teta, niñato mental. Todavía resuenan las risas de mis compañeros al leerte. En cuanto a minar el ego está jodido con un vasco, nos merendamos trolls repletos de razones absurdas como tú cada día.

fjfnaranjo

Creo que nuestra probabilidad de empezar a comparar los lenguajes de programación con Hitler o los nazis esta peligrosamente tendiendo a 1.  ;)

http://es.wikipedia.org/wiki/Ley_de_Godwin
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Hans

Lo dudo. Si tuviera que contar las veces que me he enfrentado a personajillos como éste sin tener que recurrir a lo que dice esa ley el universo se quedaría pequeño xD

davur

#64
Pues deberias haber cogido algo de experiencia. Porque no has sido capaz de contrarrestar ninguno de los argumentos que te he dado con un mínimo de lógica, conocimiento y solvencia técnica, y tus respuestas han sido de corte verdulero y salivante. De chavalín subidito, vamos.

Pero oye, la vida sigue, supéralo.

Hans

#65
Cita de: davurSoñando espero al hombre que yo quiero...

¿Has probado con diazepán?

yorch

Yo creo que si Hitler levantara la cabeza, inventaría un lenguaje de programación que fuera judío xDD

[EX3]

Cita de: Gorkin en 24 de Mayo de 2009, 01:52:08 AM
Está claro que si Hitler fuera un lenguaje de programación sería el Visual Basic 6... prometía una nueva era de gloria, pero al final todo eran disgustos XD
Por esto y no por el flame seria capaz de cerrar el hilo, Gorkin, cuidadin cuidadin >:D :P

davur, Hans, dejarlo ya, hombre, que todo el flame sobre C++ ha estado interesante hasta que habeis empezado a pelearos de manera personal, y me da igual si empezo uno u otro. Haya paz, hermanos coders 0:-)

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

Buffon

Siento contestar tan tarde pero básicamente refuerzo los mensajes de prompt.

Si quieres acabar siendo productivo en cualquier ámbito, lo mejor es empezar por C/C++ y darle caña.

[EX3]

Cita de: Gorkin en 25 de Mayo de 2009, 01:03:20 PM
¿Antes o después de curarte con pomada todas las cicatrices que te ha dejado el VB6? >:D
Y me sigue dejando :P En la informatica de gestion ocurre al reves que en los juegos, o sabes VB6.0 o Java o no te comes un rosco xDDDDD

Salu2...
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

Blog | Game Portfolio | LinkedIn | Twitter | Itch.io | Gamejolt

Mars Attacks

Wola, pasaba por aquí y me he encontrado con el flambeado de Moe.

En mi caso, comencé con Basic (con el libro "basic para niños" , qué grande Arturito). Me vino bien para aprender los fundamentos de un lenguaje iterativo: una lista básica de órdenes que se ejecutan, sin morralla intermedia.
Luego en la carrera aprendí Pascal, y con éste descubrí el funcionamiento de las cabeceras de funciones y programas, malas prácticas aprendidas con Basic, y un funcionamiento más complejo de los programas.
Más tarde vimos C, que me pareció casi una renomenclatura de Pascal con una cosa demoníaca llamada 'punteros', que al parecer servían para sacar segmentation faults. Con C++ la cosa fue mucho más complicada, y en clase no entendía nada. Realmente aprendí los fundamentos de C++ gracias a este foro, ya que me topé con un tutorial para hacer un juego simple de rol y por fin me enteré de qué iba eso de la herencia y la virtualización.
(También vimos LISP y Prolog, con el que hice un resolutor de sudokus un poco chusquero).
Más tarde, aprendí Java (el infierno de los chorongos infinitos para mi gusto) y Python (todo lo contrario, me pareció un lenguaje simple y limpio).
Unos años después empecé a trabajar en videojuegos con un lenguaje propio de la empresa, similar a C++. Ya se me había olvidado cómo iba lo de la herencia y la virtualización, pero la migración fue fácil.
Y al final, desarrollando para Wii, aprendí C++ más en serio (lo suficiente como para saber que hay verdaderos ninjas sueltos por ahí y que está todo por aprender). Por cierto, afortunadamente Codewarrior no es el compilador (menudo infierno de programa inestable); usando makefiles puedes compilar perfectamente  'a la gcc' con el compilador que trae el SDK de la Wii, y que es al que invoca tanto ahora Codewarrior como antes hacía Radix. De hecho, los conocimientos que adquirí para gcc o g++ en casa o en la carrera me sirvieron por completo para generar el makefile para Wii.

En resumen:
-No hay motivos para descartar un lenguaje en concreto, mientras te sirva para aprender genéricamente el funcionamiento de un programa. Es más importante tener conocimientos profundos de algorítmica; todo lo demás son traducciones. Así que de todos puedes aprender algo, y nada te impide empezar por algo básico que entiendas bien y subir peldaños. Aunque te pueda parecer una pérdida de tiempo, probablemente adelantarás más si empiezas por una base firmemente asentada de los aspectos principales.
-Puedes usar gcc o g++, seguramente antes o después te cruzarás con ellos o con similares.
-Mis posturas sobre los lenguajes son meramente impresiones mías al usarlos, no tienen mayor validez que la de mis gustos, y acepto los que otros puedan haber tenido y sean diferentes.
-Limitado significa que no dispones de la forma de llevar a abo operaciones que sí podrías hacer con otros lenguajes, y lento significa que la ejecución (interpretada o compilada) del algoritmo implementado en ese lenguaje tarda más en realizarse que con su implementación en otro lenguaje. Por lo general, cuanto más limitado y lento sea un lenguaje más se han esmerado en que su productividad sea mayor.
-Con todo el tiempo que lleva el thread, podrías haber aprendido ya Basic y rudimentos de Python. Deja de leer y ponte a la marcha.

Saludetes para todos.

davur

#71
Varios pequeños apuntes.

Cita de: Mars Attacks en 28 de Mayo de 2009, 02:18:27 PM
Unos años después empecé a trabajar en videojuegos con un lenguaje propio de la empresa, similar a C++. Ya se me había olvidado cómo iba lo de la herencia y la virtualización, pero la migración fue fácil.

'Virtualización' es un concepto que no tiene nada que ver con C++.

Cita de: Mars Attacks en 28 de Mayo de 2009, 02:18:27 PM
Y al final, desarrollando para Wii, aprendí C++ más en serio (lo suficiente como para saber que hay verdaderos ninjas sueltos por ahí y que está todo por aprender). Por cierto, afortunadamente Codewarrior no es el compilador (menudo infierno de programa inestable); usando makefiles puedes compilar perfectamente  'a la gcc' con el compilador que trae el SDK de la Wii, y que es al que invoca tanto ahora Codewarrior como antes hacía Radix. De hecho, los conocimientos que adquirí para gcc o g++ en casa o en la carrera me sirvieron por completo para generar el makefile para Wii.

El compilador que trae el SDK de la Wii es el que proporciona Freescale y que se incluye en su conjunto de desarrollo conocido como CodeWarrior, y que, por poder, puedes llamar 'pepito' si quieres (el resto de desarrolladores posiblemente sigamos llamándole CodeWarrior porque, bueno, es así como se llama oficialmente). Pero no es g++ (desafortunadamente para los que trabajamos/hemos trabajado con CodeWarrior).

Sí que es totalmente cierto que en la práctica se suelen utilizar makefiles a pelo para, entre otras cosas, poder utilizar Visual Studio como IDE. Lo cual no tiene nada que ver con el hecho de que tener experiencia con g++, desgraciadamente, poca aplicación directa va a tener en CodeWarrior, por ejemplo (e insisto, desafortunadamente).

Cita de: Mars Attacks en 28 de Mayo de 2009, 02:18:27 PM
-No hay motivos para descartar un lenguaje en concreto, mientras te sirva para aprender genéricamente el funcionamiento de un programa. Es más importante tener conocimientos profundos de algorítmica; todo lo demás son traducciones. Así que de todos puedes aprender algo, y nada te impide empezar por algo básico que entiendas bien y subir peldaños. Aunque te pueda parecer una pérdida de tiempo, probablemente adelantarás más si empiezas por una base firmemente asentada de los aspectos principales.

Sí los hay, por supuesto. El hecho de que ciertos lenguajes (como C++) oscurezcan el entendimiento de los fundamentos, el más importante de ellos y el que se ha recalcado ya varias veces.

Cita de: Mars Attacks en 28 de Mayo de 2009, 02:18:27 PM
-Puedes usar gcc o g++, seguramente antes o después te cruzarás con ellos o con similares.

Si cuando te encuentres con esos otros compiladores asumes que van a generar código como lo hace g++, y más tarde descubras que no es así, tendrás que olvidarte de esas asunciones para el nuevo compilador y aprender los detalles específicos a este.

Siguiendo con el ejemplo de CodeWarrior, este compilador genera en muchas ocasiones un código muy diferente al que generaría g++. Y conocer los detalles de la susodicha generación es vital en desarrollo de videojuegos de consola (y en otros tipos de desarrollo, claro está).

Cita de: Mars Attacks en 28 de Mayo de 2009, 02:18:27 PM
-Limitado significa que no dispones de la forma de llevar a abo operaciones que sí podrías hacer con otros lenguajes, y lento significa que la ejecución (interpretada o compilada) del algoritmo implementado en ese lenguaje tarda más en realizarse que con su implementación en otro lenguaje. Por lo general, cuanto más limitado y lento sea un lenguaje más se han esmerado en que su productividad sea mayor.

Como dije anteriormente, la definición de 'limitado' y de 'lento' es enormemente relativa. Y como dije anteriormente también, un lenguaje no es lento ni rápido per se. Y de ahí que decir que "C++ es rápido" o "Python es lento" no tiene sentido alguno.

Mars Attacks

#72
Aunque "virtualización" tenga otro significado, en este contexto hablo de hacer virtuales funciones. Hacer virtual -> virtualizar. Llamémoslo polisemia.

Sobre lo demás, llama al compilador como quieras. El nombre del fichero es algo así como mgcw_cc.exe (lo digo de memoria y con sueño, seguramente no habré acertado más que el cc.exe final).
Y claro que me ha servido la experiencia en gcc o g++. La estructura del makefile es muy similar, y nos sirvió precisamente para puentear el uso del IDE y no olerlo ni en pintura. No hablo de usar gcc por el código que genera, sino por su filosofía de uso. En general, me refiero a usar un compilador de forma directa, sin IDEs.

Sobre que C++ oscurece los fundamentos... eso ya depende de cómo lo aprenda el que lo aprende. Un lenguaje per se no puede oscurecer ni aclarar nada, de la misma forma que no puede ser lento ni rápido. Se puede aprender C++ con los fundamentos muy claros. A mí me parece que C++ es de los lenguajes más transparentes que hay. Tan transparente, que es fácil volverlo oscurantista. Pero no deja de ser una visión personal. Por mí, usaría Python. Qué listo es el jodío.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.