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 »

Hans

#30
Pues debes de tener el culo al rojo vivo xD

Hans

CitarJava es un lenguaje de programación orientado a objetos desarrollado por Sun Microsystems a principios de los años 90. El lenguaje en sí mismo toma mucha de su sintaxis de C y C++, pero tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores, como la manipulación directa de punteros o memoria.

http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_Java


CitarC# (pronunciado "ci sharp") es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO.

Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma.NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (entre ellos Delphi).

http://es.wikipedia.org/wiki/C_sharp



Yo no invento. Java es un lenguaje creado para simplificar la vida a la gente que no tiene ni idea cuando buscan aprender a programar. Y C# es el Java de M$. Si aprendes C++ (que nadie dice que sea la panacea, tiene cosas que merecen tortura de lo mal pensadas que están) aprendes todos los demás. La analogía más fácil es "si aprendes a conducir un Ferrari sabrás conducir un Ford Fiesta".

Vicente

Cita de: Hans en 22 de Mayo de 2009, 02:44:46 PM
Yo no invento. Java es un lenguaje creado para simplificar la vida a la gente que no tiene ni idea cuando buscan aprender a programar. Y C# es el Java de M$. Si aprendes C++ (que nadie dice que sea la panacea, tiene cosas que merecen tortura de lo mal pensadas que están) aprendes todos los demás. La analogía más fácil es "si aprendes a conducir un Ferrari sabrás conducir un Ford Fiesta".

Un apunte: el Java de Microsoft se llama J++ o J# :p

Hans

¿Eso no estaba abandonado? Además salió años después de C#.

davur

A partir de esto:

- Java tiene un modelo de objetos más simple y elimina herramientas de bajo nivel, que suelen inducir a muchos errores.

deducir esto otro:

- Java es un lenguaje creado para simplificar la vida a la gente que no tiene ni idea cuando buscan aprender a programar.

indica que tu lógica es muy obtusa.

Cita de: Hans en 22 de Mayo de 2009, 02:44:46 PM
Si aprendes C++ (que nadie dice que sea la panacea, tiene cosas que merecen tortura de lo mal pensadas que están) aprendes todos los demás. La analogía más fácil es "si aprendes a conducir un Ferrari sabrás conducir un Ford Fiesta".

Salvo que la analogía es incorrecta.

Es rotundamente falso que C++ te otorgue mágicamente una mayor base para aprender otros lenguajes. Y esto se suele confundir con la sensación de alivio al pasar de C++ a un lenguaje más placentero.

¿Crees que ser un experto en C++ te va a dar una mayor ventaja a la hora de aprender un lenguaje radicalmente diferente en su concepción como Lisp o Haskell?


Yotes, al final tomarás la decisión que personalmente consideres más adecuada. Ten en cuenta que limitarse al dominio de un único lenguaje (el que sea) no es beneficioso ni útil. Plantéate dominar dos, tres, cuatro lenguajes muy diferentes entre sí. Tener la mente abierta a maneras diferentes de pensar nunca es perder el tiempo. En este mismo hilo puedes ver lo que pasa cuando alguien se cierra en banda.

Y teniendo en cuenta eso, no empieces con C++. ¿Por qué este empeño en no hacerlo? Porque C++ es especialmente bueno en esconder los problemas que realmente son importantes cuando uno empieza. Aprende los fundamentos, la manera de razonar sobre problemas y expresar soluciones en código en un lenguaje accesible, que sea gentil con tus errores, que te permita ciclos rápidos de editar/comprobar resultados y que no te desespere con detalles complejos e innecesarios en este punto.

Hans

¿Pero qué hablas de Lisp aquí? Estamos hablando de juegos y en juego o usas C++ o te comes una mierda. Y no hay más. No líes al chaval con tonterías, por favor.

Vicente

Cita de: Hans en 22 de Mayo de 2009, 04:36:04 PM
¿Pero qué hablas de Lisp aquí? Estamos hablando de juegos y en juego o usas C++ o te comes una mierda. Y no hay más. No líes al chaval con tonterías, por favor.

Saber Lisp ayuda bastante a entender C# 3.0 :p

De todas formas, de nuevo como a Prompt: este chico quiere aprender, y para aprender a hacer juegos vale casi cualquier cosa.

davur

Cita de: Vicente en 22 de Mayo de 2009, 04:46:40 PM
Cita de: Hans en 22 de Mayo de 2009, 04:36:04 PM
¿Pero qué hablas de Lisp aquí? Estamos hablando de juegos y en juego o usas C++ o te comes una mierda. Y no hay más. No líes al chaval con tonterías, por favor.

Saber Lisp ayuda bastante a entender C# 3.0 :p

De todas formas, de nuevo como a Prompt: este chico quiere aprender, y para aprender a hacer juegos vale casi cualquier cosa.

Jejeje estás en lo cierto, Vicente. :)

Y también es bueno apuntar, y lo digo por el alterable, que saber leer también ayuda a entender.

Hans

#38
Cita de: Vicente en 22 de Mayo de 2009, 04:46:40 PM
Cita de: Hans en 22 de Mayo de 2009, 04:36:04 PM
¿Pero qué hablas de Lisp aquí? Estamos hablando de juegos y en juego o usas C++ o te comes una mierda. Y no hay más. No líes al chaval con tonterías, por favor.

Saber Lisp ayuda bastante a entender C# 3.0 :p

De todas formas, de nuevo como a Prompt: este chico quiere aprender, y para aprender a hacer juegos vale casi cualquier cosa.


Nadie dice lo contrario, ¿ pero te sirve en algo real a la hora de hacer juegos? Lo dudo. El chaval quiere hacer juegos.

fjfnaranjo

Me apetece intervenir.

Yo se C, C++, Java (en ninguno me consideraría experto pero si domino gran parte de sus características) y C# (estoy empezando xD), aparte de otros muchos lenguajes no mencionados en el post.

Yo se programar juegos, al menos lo principal, en C++ y usando programación orientada a objetos, como te exigirán en la mayoría de los puestos de desarrollo de juegos que no sean para móvil (los cuales, efectivamente, se desarrollan en una versión ligera de Java, concretamente, J2ME).

Yo no aprendí a programar juegos en C, ni en C++, ni en Java ni en C#. Lo hice con "DIV Games Studio", un pequeño conjunto de aplicaciones para crear juegos para los MSDOS. Al poco tiempo, me harte del DIV, porque no me dejaba hacer muchas cosas, y aprendí a hacer juegos con Blitz3D.

No aprendí programación orientada a objetos hasta que no empecé con el desarrollo web, la cual la aprendí a muy duras penas usando PHP y Java.

Hace relativamente poco, un par de años más o menos, cuando me propuse empezar a hacer cosillas en C++ todo fue extremadamente sencillo. Ya tenía las bases de OOP gracias a Java y PHP, y las bases de videojuegos gracias a Blitz3D, además, había desarrollado algunas cosas en C++. Fue cuestión de unir mucha experiencia de muchos sitios diferentes, poniéndolo todo en conjunto.

Pero estoy seguro de que no habría pasado a Blitz3D si no fuera por lo que me divertía con mis resultados en DIV.

Así que basándome en mi experiencia personal, y desoyendo a los demás, te recomiendo que empieces con algo que te resulte cómodo, pero que te vayas retando a ti mismo con cosas cada vez más difíciles. Y no aprendas sólo a hacer juegos, aprende también a programar en general, y programación orientada a objetos, e inglés, por dios, mucho inglés.

Suerte y bienvenido  ;)
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Vicente

Cita de: Hans en 22 de Mayo de 2009, 05:06:01 PM
Nadie dice lo contrario, ¿ pero te sirve en algo real a la hora de hacer juegos? Lo dudo. El chaval quiere hacer juegos.

Si te refieres al Lisp, está claro que saber programación funcional no es lo más interesante a la hora de hacer videojuegos. Pero si sabe Java, que es perfectamente válido para aprender las bases, ¿porque liarle con C++ también?

En este foro hay gente que hace juegos en Flash, otros que viven o han vivido de hacer juegos en J2ME, gente preparando juegos en Unity para el iPhone y Mac,... C++ está de pm, pero no es ni mucho menos la única salida que hay en el mundillo.

[EX3]

Y pensar que muchos de los programadores de C++ actuales empezaron con el BASIC del Spectrum o el Commodore64 antes inclusive que con C... vaya guerra mas tonta con los dichosos lenguajes :D (palabras dichas por un programador de Visual Basic 6.0  :..)

Si C++ fuera el camino recto en la programacion todos los novatos en las carreras, cursos y masters de programacion empezarian directamente a aprender a programar desde 0 en C/C++ cuando en verdad se usan lenguajes como Modula2, Pascal, Eiffel y otras "aberraciones" que nadie en su sano jucio usaria para el dia a dia pero que sin embargo son sencillos para coger facilmente los fundamentos y las base comunes de la programacion en cualquier lenguaje.

Si vas a dedicarte a lo profesional, para trabajar de ello, lanzate a C++, pero si vas hacerlo por puro hobbie, usa lo que mas comodidad te de, ya que, total, se trata que disfrutes con lo que haces, y a mi personalmente, por hobbie prefiero mil veces mi bien conocido y aborrecido Visual Basic 6.0 o C#, que todavia no domino tanto como me gustaria, que el complejo y meticuloso C++, con el que ya tuve amargas experiencias y con el que tardare en reconciliarme mucho tiempo.

Salu2...

P.D.: Aqui otro ex-usuario de Div Game Studio :D
José Miguel Sánchez Fernández
.NET Developer | Game Programmer | Unity Developer

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

Hans

#42
Cita de: Vicente en 22 de Mayo de 2009, 09:08:35 PM
Cita de: Hans en 22 de Mayo de 2009, 05:06:01 PM
Nadie dice lo contrario, ¿ pero te sirve en algo real a la hora de hacer juegos? Lo dudo. El chaval quiere hacer juegos.

Si te refieres al Lisp, está claro que saber programación funcional no es lo más interesante a la hora de hacer videojuegos. Pero si sabe Java, que es perfectamente válido para aprender las bases, ¿porque liarle con C++ también?

En este foro hay gente que hace juegos en Flash, otros que viven o han vivido de hacer juegos en J2ME, gente preparando juegos en Unity para el iPhone y Mac,... C++ está de pm, pero no es ni mucho menos la única salida que hay en el mundillo.


Sabes muy bien que eso ya lo sé, sino no estaría ahora mismo con C# y con Java al mismo tiempo. Pero lo más requerido es C++ y lo más complicado tb es C++ y por eso mi recomendación es C++, y no por otro cosa. Para mi es más cómodo trabajar con C# por su compilador y su ide (en C++ estoy obligado  a usar Codeblocks para mantener la multiplataformidad Linux/Windows) y no sólo es lo más lento del planeta compilando, además indica malamente la mayoría de errores. Adaptarse a tan pocos recursos y a tener que buscarte la vida en google es lo que diferencia a C++, ese handicap extra que hace que los demás parezcan lenguajes simples y lo que hace que realmente se aprenda. Repito lo mismo que ya he dicho, C++ es un Ferrari, muy difícil de conducir pero cuando sabes no hay quien te alcance, los demás son Ford Fiestas, lentos y limitados pero al alcance de cualquiera por muy poco precio.

Si te lo dan casi todo hecho (caso C# con XNA) aprendes cero patatero, cosa que está muy bien si quieres "simplemente" hacer un juego, no si quieres aprender de verdad a base de pegarte contra una pared. He leído de gente que empezó con div, luego se pasó a no sé qué y luego a no sé cuánto y me parece bien pero así se tardan años en aprender, porque vas de menos a más lentamente, mientras que empezando por el más te costará ver resultados al principio pero alcanzarás la meta mucho antes. Yo empecé con Ada y POO directamente y aún siendo muy parecido a C/C++ me supuso una pérdida de tiempo brutal e innecesaria.

davur

Cita de: Hans en 23 de Mayo de 2009, 10:21:03 AM
Repito lo mismo que ya he dicho, C++ es un Ferrari, muy difícil de conducir pero cuando sabes no hay quien te alcance, los demás son Ford Fiestas, lentos y limitados pero al alcance de cualquiera por muy poco precio.

Yo repito que eso es rotundamente falso.

Hans

Sí, lo repites pero no dices el por qué.






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.