Iniciar sesión

Ver la versión completa : Programación de videojuegos



El Peasso
28/05/2008, 15:49
Hola a todos, soy un programador de profesión el cual está investigando ultimamente como andar programando algún que otro juego. Me han hablado de este sitio y me he decidido a darme un paseito por aqui, pedir un poco de ayuda y a ser posible que todos compartamos conocimientos.
También quiero pedir disculpas, porque aunque es un foro de programación... no tiene que ver con la GP2X, si no con el Framework XNA, pero como no he encontrado ningún tema que hable de XNA en este sitio, pues he decidido postearlo aqui. Espero que no os moleste y si os molesta... me mandais callar :)
Please, decidme si puedo seguir posteando aquí o si no, en cual puedo poner este post.

Gracias a toos de antemano. Y si esto va bien y sigue adelante, voy a empezar a repartir unas cañas a diestro y siniestro (ahi está el soborno) :brindis:

pakoito
28/05/2008, 15:55
Yo lo metería en la sección PC, esto es ayuda a la programación para la consola. Respecto a XNA, usa la búsqueda porque en un tema ya lo hablamos y sacamos las webs mas jugosas.

Un saludo y POR FAVOR quédate en la comunidad. Te reiras un poco ;)

El Peasso
28/05/2008, 16:12
Muchas gracias, ahora mismo me voy corriendo a la sección de PC, a postear de nuevo sobre este tema. Si tuviera los conocimientos necesarios de C/C++ para programar para esta consolita igual me animaba a hacer algo, pero todos mis conocimientos de programación se basan en... el maligno... C#.

Muchas gracias, de nuevo.:D

juanvvc
28/05/2008, 18:34
Bueno, C++ no es muy diferente a C# sin recolector de basuras. Eso sí, las librerías que estarás usando en C# no se parecen en nada a las que se usan en juegos, ya sean de Gp2x o PC. Excepto XNA, claro, que no conocía para nada.

Bienvenido a la comunidad, siempre es un gusto conocer a gente amable :)

Para buscar XNA lo mejor es usar Google porque el servicio de búsqueda de esta página no admite palabras de tres letras. En Google, escribe "site:gp32spain.com XNA"

DarkDijkstra
28/05/2008, 18:49
Hombre, yo creo que C# y C++ sí son muy diferentes no tanto en su sintaxis sino en la manera de programar.

C++ aun teniendo funcionalidades de orientación a objetos, no emplea por ejemplo una clase "Object" padre para todas las clases (en general no tiene una jerarquía de clases como Java o C#) y por ejemplo está orientado al uso de plantillas (que resuelven esa "carencia" en tiempo de compilación) mientras que C# usa esa jerarquía (igual que Java) para apoyarse en muchísimas cosas, sin ir más lejos para los contenedores de datos.

En C#, aun habiendo punteros y tal su uso es casi blasfemo, y en general cosas como serializar objetos para escribirlos en disco no se llevan, el hacer castings a byte* tipo C++ y tal nunca se ve...

Vamos, que es muy muy diferente programar en C++ y en C#

(mi opinión, vamos)

ah, y saludos, Peasso !! ; )

El Peasso
28/05/2008, 19:10
Por lo que mis maltrechas neuronas me dejan recordar sobre C... recuerdo que era más enrevesado que C#. Y desde que dejé C, no recuerdo haber usado un puntero en la vida...

Bueno, ya he abierto mi tema de programación en XNA :D Si quereis echarle un vistazo y ya de paso... ejem... este... echar un cable...

http://www.gp32spain.com/foros/showthread.php?t=55515

juanvvc
28/05/2008, 19:23
Se nota que yo vengo de Unix y estoy más acostumbrado a C/C++... y Python y Java. Con C# solo he programado para PocketPC, y entonces me pareció más parecido a C++ que a Java. Pero seguramente fueron prejuicios míos :D Al final acabé desarrollando en C++ y Python, que trabajaba más rápido porque ya los conocía y porque la .NETv2 compact de entonces estaba muy mal documentada.

DarkDijkstra
28/05/2008, 21:33
C++ y Python... tu eres de los míos !! :brindis:

Puck2099
28/05/2008, 21:48
C++ y Python... tu eres de los míos !! :brindis:

Ya que estamos... ¿cuál es la gracia de Python? Quiero decir, ¿qué aporta sobre otros lenguajes como C++?

Estoy programando un controlador borroso evolutivo con él y me parece un engorro de lenguaje de narices (y lo de la indentación obligatoria ni te cuento)...

efegea
28/05/2008, 21:59
Python mola mucho

Puck2099
28/05/2008, 22:05
Python mola mucho

¿Por algo en especial o porque es guay?

efegea
28/05/2008, 22:22
Pues no sabría decirte el porqué, pero a mi me gusta mucho. Aunque no lo he usado mucho, pero me parece un lenguaje interesante.

Yo no lo compararía con C++, uno es un lenguaje de scripting y otro compilado, cada cosa para lo que es.

enkonsierto
28/05/2008, 22:22
porque es libre... supongo...

miq01
28/05/2008, 22:30
¿Por algo en especial o porque es guay?
Para parsear es perfecto. Fácil y rápido. Más allá ya no te sé decir porque es para lo único que lo he utilizado.

Pero bueno, como dice Efegea, cada cosa para lo que sirve. Aunque una vez tuve que hacer una práctica que consistía en detectar contornos en imágenes y la hice en Python :D precisamente por lo del parseo.

Puck2099
28/05/2008, 22:53
Para parsear es perfecto. Fácil y rápido. Más allá ya no te sé decir porque es para lo único que lo he utilizado.

Pero bueno, como dice Efegea, cada cosa para lo que sirve. Aunque una vez tuve que hacer una práctica que consistía en detectar contornos en imágenes y la hice en Python :D precisamente por lo del parseo.

Ah, vale, no recordaba lo de que era interpretado (en mi caso cargo los archivos de python en un simulador de robots).

Ahora sí me queda clara su utilidad :)

Foxandxss
28/05/2008, 23:09
Donde hablen de python ahí estoy yo.

A mi me encanta python, para mi una de sus mejores cualidad es su flexibilidad.

No soy un experto programador ni mucho menos, pero me noto más libre usando Python que usando Java, y no, no me refiero a licencias :P

Voy a poner un ejemplo, quizás se pueda hacer igual de facil en otro lado, pero bueno :P

Vamos a imaginar que hago un reproductor de audio, cargo un directorio con muchos ficheros de todo tipo, y tnego una lista de extensiones que son las que maneja mi reproductor, asi que quiero quitar de esa lista los ficheros no validos.

Podría hacerlo de una forma tradicional:



import os

# tambien podemos llamar a una funcion que devuelva la lista :P
ficheros = ["blah.exe", "bleh.mp3", "musica.wav", "manual.pdf"]
extensiones_validas = [".mp3", ".wav"]

audio = []
for i in ficheros:
if os.path.splitext(i)[1] in extensiones_validas:
audio.append(i)

print audio


Esto imprimiria:

['bleh.mp3', 'musica.wav']

Luego tenemos una forma más pythonica y mejor:



import os

# tambien podemos llamar a una funcion que devuelva la lista :P
ficheros = ["blah.exe", "bleh.mp3", "musica.wav", "manual.pdf"]
extensiones_validas = [".mp3", ".wav"]

audio = [v for v in ficheros if os.path.splitext(v)[1] in extensiones_validas]


Imprime lo mismo. Esto es mucho más rapido y aporta más flexibilidad que el ejemplo anterior. En c++ no sé como será, imagino que creando un iterador de un vector y liandola un poco más.

También puedes apartela para hacer generadores de clases, de todo. Es lo bueno de python, puedes hacer todo con el, cualquier cosa. Además, tiene librerias para TODO, no falta de ná.

Yo hago programas en linux (usando GTK+) y luego mi novia los usa en windows sin problemas (previa instalacion de interprete y gtk+ claro).

Yo estoy contentísimo con el, es una delicia y super fácil de programar, usando patrones del GoF si quieres sin problemas.

Un saludo.

civantoz
28/05/2008, 23:23
Pues si, python is sexy xD, no lo he usado mucho, mas que nada para hacer bots para webs y chorradas asi ^^! pero es un lenguaje rápido, fácil y para toda la familia, ademas que es verdad que para cualquier chorrada que se te ocurra tienes una libreria implementada :) ademas un punto que me ha gustado mucho es que han portado el interprete los de Nokia para Symbian... mmm a ver si me hago de una tarjeta tipo yoigo con conexion a internet baratuna, por que la de aplicaciones chorras que puedes crear en un plis plas sería impagable xD

Zizti
29/05/2008, 08:10
***** la que se ha liado en un tris!!!!

< - >


Bienvenido a la comunidad, siempre es un gusto conocer a gente amable :)

:quepalmo:

esa es buena!!! Peasso me quedo con tus palabras de que si supieras cómo programarías para la consolita.... darle caña tíos, enseñarle lo que es bueno, lo guapo que es programas para gph... y bueno me callo porque en esta conversación me siento como chiquito de la calzada dándose una vuelta por la torre de babel. :loco:

AOJ
29/05/2008, 10:44
Yo estoy contentísimo con el, es una delicia y super fácil de programar, usando patrones del GoF si quieres sin problemas.


[Ahhh]

Diox hasta en el foro me persiguen los ***** GoF y sus patrones >_<

(es que miércoles tengo examen de diseño, y es la última asignatura que me queda de la carrera ... no hay manera de sacársela).

A nosotros nos lo han hecho implementar en java :)

masteries
29/05/2008, 11:19
Aquí veo que debeis ser casi todos o sino todos de informática...

Yo como soy de industriales pues me decanto por el C y el ensamblador para Z80, 68000, ARM7 y ARM9 que son los micros que sé manejar en ambos lenguajes.

Luego tenemos una especie de BASIC para los robots de ABB, creo que se llama languaje RAPID y es muy facilillo y potente, en tiempo real y esas cosas...

Y para los juegos en GP2X me decanto por el Fenix, dada su gran similitud con C me resulta sencillo y lo de la concurrencia que cosa más grande, facilita tanto la programación... pensarán que si se bastante de C porque no lo uso para los juegos; debido a las experiencias con el mod de Enemy Territory del que soy el segundo al mando de la programación, en el que todo es en C y se ejecuta de forma lineal, sin nada concurrente, ni siquiera el contador de tiempo para los refuerzos y menudo infierno seguir el hilo por las casi 100.000 líneas de código...

El mejor lenguaje que he visto , también concurrente y que se escribe de forma gráfica y no con texto, es el lenguaje GRAFCET para la programación de autómatas; también se pueden programar en lenguaje de contactos, pero no es tan fácil ni tan potente como el anterior.

Foxandxss
29/05/2008, 13:02
AOJ, nada que un GoF o un "Head first: Design patterns" no solucione, no?. De hecho es bastante f&#225;cil implementar patrones en Java, ya que es parecidillo a C++ y no te costar&#225; implementarlo desde la implementacion en c++ (que es la que sale en el GoF).

Un saludo.

bufalo_1973
29/05/2008, 21:49
Una salvajada que se me acaba de pasar por la cabeza: &#191;Se podr&#237;a portar Mono a la GP2X?

Foxandxss
30/05/2008, 00:03
Demasiado salvajada dir&#237;a yo.

Ser&#237;a algo parecido a portar java supongo yo. La cosa es que mono no es taan querido, la gente odia mucho C# por venir de MS, y eso hace que mono no sea muy acogido.

y si, mono++ :)

Un saludo.

El Peasso
30/05/2008, 08:52
Pues direis lo que querais de MS por haber hecho C#... Pero a mi C# me gusta

Ñuño Martínez
30/05/2008, 10:01
Demasiado salvajada diría yo.

Sería algo parecido a portar java supongo yo. La cosa es que mono no es taan querido, la gente odia mucho C# por venir de MS, y eso hace que mono no sea muy acogido.

y si, mono++ :)

Un saludo.


Pues direis lo que querais de MS por haber hecho C#... Pero a mi C# me gusta C# no me gusta, pero no por ser de M$ sino por ser el parche de un parche que no me gusta nada. Y aunque no fuera un parche me recuerda demasiado a Java, el cual me gusta casi tanto como C++ (Por cierto, y en serio, ¿qué grandes diferencias tiene C# respecto a Java, aparte de la biblioteca de clases? Porque yo no le he visto ninguna :confused:).

De todas formas, también se puede programar para Mono/.NET con otros lenguajes, como el Object Pascal, el cual me gusta bastante más que cualquiera de los antes mencionados.

Zheo
12/06/2008, 09:46
Yo tengo ganas de aprender Python por el tema de aprender un lenguaje de script. Python tiene muchas aplicaciones, por ejemplo para videojuegos, sobre todo por el tema de los bindings con C++, as&#237; el c&#243;digo que requiere rapidez es nativo y lo que no lo metes interpretado en python, incluso cambi&#225;ndolo en tiempo de ejecuci&#243;n, pero todo integrado.
Sin embargo y aunque no lo he tocado mucho, el tema de la indentaci&#243;n para definir &#225;mbitos me parece una mierda por mucho que a sus defensores se les haga el culo pepsi-cola con ello.


C# no me gusta, pero no por ser de M$ sino por ser el parche de un parche que no me gusta nada. Y aunque no fuera un parche me recuerda demasiado a Java, el cual me gusta casi tanto como C++ (Por cierto, y en serio, &#191;qu&#233; grandes diferencias tiene C# respecto a Java, aparte de la biblioteca de clases? Porque yo no le he visto ninguna :confused:).
Casi nada. C# es un lenguaje. Java es un lenguaje. Es la plataforma (.NET, J2SE / J2EE respectivamente ) lo que los hace realmente &#250;tiles, y tambi&#233;n el hecho de que dicha plataforma tenga unos ciclos de revisi&#243;n a a&#241;os luz de otros lenguajes, lo que tambi&#233;n aumenta la competencia entre ellos (.net 2.0 saca generics? Java tambi&#233;n). Por ejemplo C++, pese a que es mi favorito, tiene unos ciclos de revisi&#243;n terriblemente lentos, &#191;cu&#225;nto hace que esperamos por una nueva versi&#243;n del est&#225;ndar? Ahora en la TR1 podremos ver cosas como shared smart_pointers (que existe en boost desde hace milenios y de hecho la TR1 los ha cogido de Boost)
La excusa de crear un est&#225;ndar que no limite la velocidad del lenguaje en ninguna plataforma no creo que justifique que se tarden m&#225;s de 10 a&#241;os en sacar un nuevo paper...

Y sobre tu pregunta, C# tiene ciertas construcciones del lenguaje como delegados y eventos, que java no tiene. Eso no quita que no se puedan implementar por supuesto. dotNET 3.0 y 3.5 incluye lambda expresiones (algo parecido creo que va a tener o tiene java) y LINQ, que me parece que java a&#250;n no tiene nada del estilo.

Para finalizar a mi los programas visuales escritos en c# me parecen m&#225;s "responsivos" que los de Java.


De todas formas, tambi&#233;n se puede programar para Mono/.NET con otros lenguajes, como el Object Pascal, el cual me gusta bastante m&#225;s que cualquiera de los antes mencionados.
Pues a mi el object pascal si que me parece un parche enorme. Adem&#225;s es un lenguaje demasiado orientado al aprendizaje (se creo como lenguaje sencillo de aprender). Por ejemplo definir los &#225;mbitos en bloques begin end y cosas as&#237; me recuerdan a Visual Basic: hay que escribir demasiado para cuatro pijadas y lo hace poco legible.
Como nota curiosa C# fue dise&#241;ado por al menos uno de la responsables de turbo pascal entre otros.
http://en.wikipedia.org/wiki/Anders_Hejlsberg

Sin embargo lo chulo de la plataforma .NET es definir como est&#225;ndar la Common Language Infraestrucure, lo que permite que cualquier lenguaje soporte .NET, produciendo un compilador que se adhiera a la definici&#243;n de CIL. Adem&#225;s eso tambi&#233;n te permite acceder a la biblioteca de clases de .NET o mezclar lenguajes en proyectos. Por eso puedes usar la sintaxis de Object Pascal bajo .NET. o el propio Java, python, smalltalk o muchos m&#225;s (http://www.dotnetlanguages.net/DNL/Resources.aspx)

xzakox
12/06/2008, 10:13
Para gustos colores, es lo de siempre, a mi C# me parece interesante, no deja de ser la apuesta de m$ para competir con java, pero han aprovechao para cambiar algunas cosas de java de las que la gente se quejaba, y se han currao una libreria bastante completa (si, soy yo hablando bien de algo de microsoft, increible!!!). De todas maneras es lo de siempre, no me pondria a programar una aplicacion base del sistema en C#, usaría C, igual que no usaría C para una aplicación web, cada herramienta tiene una utilidad, y fuera de sus ámbitos no son comparables.
Respecto a scripting, aunque conozco python, al final de decanté por ruby. Todavía es más minoritario que python ya que empezó a pillar fama más tarde, pero ha demostrado su capacidad y flexibilidad en cosas como el framework ruby on rails (que luego se ha copiado en otras implementaciones en pyhton... php....). Me gusta más su estilo con los bloques que el uso de los tabuladores en python(que puede ser una buena idea para aprender como se dice, no lo niego), y su estilo de orientación a objetos a lo smalltalk me parece muy limpia.
Pero como comento son gustos mios, los dos son muy similares y no hay grandes diferencias como para elegir uno sobre otro... solo gustos personales.
Un saludo.

<modo troll>
Pero vamos RUBY ES MEJOR
</modo troll>

:D:D:D:D

Ñuño Martínez
12/06/2008, 10:21
Gracias, me ha quedado claro que C# es un lenguaje muy pijo. ;):p:D No te molestes, lo que pasa es que he tenido un par de experiencias muy traum&#225;ticas con Java y C++, y ahora todo lo que me suene a "parche/extensi&#243;n de C" suele no gustarme (aunque &#250;ltimamente le estoy echando un ojo a Objective C y tiene buena pinta, tal vez porque "la parte orientada a objetos" la han adaptado de Small-Talk en lugar de "invent&#225;rsela").


Para finalizar a mi los programas visuales escritos en c# me parecen m&#225;s "responsivos" que los de Java. &#191;Qu&#233; quieres decir con "me parecen m&#225;s responsivos (http://www.rae2.es/responsivo)"? No lo entiendo... &#191;M&#225;s pertenecientes o relativos a la respuesta? :confused:


Pues a mi el object pascal si que me parece un parche enorme. Adem&#225;s es un lenguaje demasiado orientado al aprendizaje (se creo como lenguaje sencillo de aprender). Por ejemplo definir los &#225;mbitos en bloques begin end y cosas as&#237; me recuerdan a Visual Basic: hay que escribir demasiado para cuatro pijadas y lo hace poco legible. Pues chico, es casi como leer la descripci&#243;n de un algoritmo en ingl&#233;s, lo cual es m&#225;s legible que lo cr&#237;ptico que es C (y derivados). Pero bueno, sobre gustos no hay nada escrito, si te es dif&#237;cil, te es dif&#237;cil.

En cuanto que es "demasiado orientado al aprendizaje", pues depende. Hay mucha gente (yo inclu&#237;do) que piensa que es el mejor lenguaje para seg&#250;n qu&#233; cosas (http://delphi.wikia.com/wiki/Good_Quality_Applications_Built_With_Delphi), pero aqu&#237; entramos otra vez en el enfarragoso mundo de las preferencias personales, as&#237; mejor no discutirlo.

Zheo
12/06/2008, 11:16
Gracias, me ha quedado claro que C# es un lenguaje muy pijo. ;):p:D No te molestes, lo que pasa es que he tenido un par de experiencias muy traumáticas con Java y C++, y ahora todo lo que me suene a "parche/extensión de C" suele no gustarme (aunque últimamente le estoy echando un ojo a Objective C y tiene buena pinta, tal vez porque "la parte orientada a objetos" la han adaptado de Small-Talk en lugar de "inventársela").
Emh, no se la inventaron :P
http://en.wikipedia.org/wiki/Simula

Lo que no entiendo es qué tiene que ver C++ con Java aparte de que comparten cierta sintaxis y el modelo de orientación a objetos, que comparte con object pascal. Experiencias traumáticas con C++ todavía lo puedo entender, pero con Java ? Qué pasó? (morbo morbo :P)

Objective-C si que tiene una pinta interesante. Me encanta el préstamo que se tomaron de smalltalk al poder introducir en los mensajes el nombre del parámetro porque lo hace MUY legible:
[logObject CreateEntry: "Hola mundo!" flushFile: true]


¿Qué quieres decir con "me parecen más responsivos (http://www.rae2.es/responsivo)"? No lo entiendo... ¿Más pertenecientes o relativos a la respuesta? :confused:
Mejor respuesta (responsiveness) Pero es sólo una impresión, así que como si no hubiera dicho nada.


Pues chico, es casi como leer la descripción de un algoritmo en inglés, lo cual es más legible que lo críptico que es C (y derivados). Pero bueno, sobre gustos no hay nada escrito, si te es difícil, te es difícil.
A mi la cantidad de palabras clave que tienen esos lenguajes me abruma y me aporta información que no necesito.
Es como todo, el lenguaje matemático es dificil, pero una vez conocido no vas a volver al lenguaje natural para definir un conjunto por ejemplo.


En cuanto que es "demasiado orientado al aprendizaje", pues depende. Hay mucha gente (yo incluído) que piensa que es el mejor lenguaje para según qué cosas (http://delphi.wikia.com/wiki/Good_Quality_Applications_Built_With_Delphi), pero aquí entramos otra vez en el enfarragoso mundo de las preferencias personales, así mejor no discutirlo.
Es que una cosa no tiene nada que ver con la otra. Que un lenguaje sea sencillo de aprender o que este preparado para eso no significa que no sea potente ni que no sea elegante.

Ñuño Martínez
12/06/2008, 12:20
Parece que estamos de acuerdo en muchas cosas. Lo del Simula no ten&#237;a ni idea. Tomo nota para retractarme donde proceda.


Experiencias traum&#225;ticas con C++ todav&#237;a lo puedo entender, pero con Java ? Qu&#233; pas&#243;? (morbo morbo :P)Un l&#237;o con los constructores y los contenedores que no veas, aparte de otros problemas menores. Aunque creo que se debi&#243; a que mi trauma con el C++ estaba todav&#237;a reciente (con este termin&#233; tan harto que me hice mi propio juego de contenedores, y ni por esas termin&#233; contento). Afortunadamente cancelaron el proyecto y me despidieron (con indemnizaci&#243;n, eso s&#237;) porque fueron tres meses de pesadilla [Ahhh]. De hecho temo el trimestre en el que me toque utilizarlo en la UNED, pero habr&#225; que aguantarse. Eso s&#237;, como me obliguen a hacer un proyecto de fin de carrera en Java, C# o C++, quemo la central.

Foxandxss
12/06/2008, 21:05
Si eres el Zheo de eol, aprender python te costar&#225; 0, :)

Yo ahora estoy apriendiendo C++, dicen que es el m&#225;s complicado, pero quiero darle una oportunidad y a ver si puedo sacarle jugo (con los a&#241;os :P)

Zheo
02/07/2008, 22:25
Si eres el Zheo de eol, aprender python te costará 0, :)
Lo soy. :)


Yo ahora estoy apriendiendo C++, dicen que es el más complicado, pero quiero darle una oportunidad y a ver si puedo sacarle jugo (con los años :P)
c++ mola, aunque cuesta cogerle el truco. ;)

Otaking
11/07/2008, 09:27
C++ no es nada complicado, si de verdad te quieres complicar la vida, ponte con Java xDDD.

Igualmente Foxandxss creo que te irá bien aprender C++, para mi se podria decir que es la base de cualquier otro lenguaje, cuando lo aprendas, no te costará aprender nada mas

Foxandxss
11/07/2008, 11:23
C++ no es nada complicado, si de verdad te quieres complicar la vida, ponte con Java xDDD.

Igualmente Foxandxss creo que te irá bien aprender C++, para mi se podria decir que es la base de cualquier otro lenguaje, cuando lo aprendas, no te costará aprender nada mas


Nah, Java ya está complicando mi vida. Es el lenguaje que usamos en la asignatura de programación del modulo (DAI).

All > Java :P.

Un saludo a todos.

Ñuño Martínez
11/07/2008, 11:37
&#191;Que "C++ no es nada complicado"? &#191;La base de "cualquier lenguaje"? Entonces Pascal y LOGO &#191;c&#243;mo son? :loco:

Sigo diciendo que C, C++ y Java son la peor elecci&#243;n para empezar a programar. Es mejor empezar con LOGO, QuickBASIC (nunca Visual) y Pascal (a ser posible en ese orden) y luego pasarte a C, Java y dem&#225;s si lo ves necesario, que va a ser que s&#237;. S&#237;, se tarda m&#225;s en entrar en el "mundo laboral", pero aprendes la base, la abstracci&#243;n y el m&#233;todo mientras que si se empieza con C, Java o similares tienes m&#225;s posibilidades de adquirir un mont&#243;n de malas costumbres y hacer un mont&#243;n de preguntas est&#250;pidas en foros y listas de correo.

Yo nunca he conocido a un buen programador cuyo primer lenguaje aprendido fuera C, C++, Java o similar, mientras que los mejores (y conozco unos cuantos) empezaron todos con LOGO, BASIC (cl&#225;sico o Quick; NO Visual) o Pascal.

Foxandxss
11/07/2008, 14:21
Estoy medio de acuerdo contigo &#209;u&#241;o.

Quiero dejar claro que C++ no es mi primer lenguaje ni por asomo, se programar en python perfectamente :).

Solo quiero C++ para poder hacer cosillas para GP2X y para aprender m&#225;s.

Yo tengo un amigo que aprendi&#243; con C y todav&#237;a no conozco a nadie que sepa m&#225;s que el.

Un saludo.

Zheo
13/07/2008, 11:34
Sigo diciendo que C, C++ y Java son la peor elecci&#243;n para empezar a programar. Es mejor empezar con LOGO, QuickBASIC (nunca Visual) y Pascal (a ser posible en ese orden) y luego pasarte a C, Java y dem&#225;s si lo ves necesario, que va a ser que s&#237;. S&#237;, se tarda m&#225;s en entrar en el "mundo laboral", pero aprendes la base, la abstracci&#243;n y el m&#233;todo mientras que si se empieza con C, Java o similares tienes m&#225;s posibilidades de adquirir un mont&#243;n de malas costumbres y hacer un mont&#243;n de preguntas est&#250;pidas en foros y listas de correo.
No, o sea no. Un programador bueno no se hace en base al primer lenguaje que ha aprendido. Se hace respecto a la base que ha aprendido que no tienes ni por qu&#233; tocar un lenguaje real.
Y de hecho mezclando lenguajes con paradigmas no estructurados con estructurados; interpretados con compilados, etc, lo &#250;nico que haces es liar m&#225;s la madeja. Y no te digo nada de pasar de estructurado a POO si no tienes las cosas claras. Por ejemplo en C++ lo que hac&#237;a mucha gente que ven&#237;a de c era programar en c, pero usando clases (es decir, C con super-structs)


Yo nunca he conocido a un buen programador cuyo primer lenguaje aprendido fuera C, C++, Java o similar, mientras que los mejores (y conozco unos cuantos) empezaron todos con LOGO, BASIC (cl&#225;sico o Quick; NO Visual) o Pascal.
Pues una de dos, o conoces a pocos programadores, o los que conoces no son tan buenos como crees, o simplemente ocurre que los que empezaron con basic, empezaron cuando s&#243;lo hab&#237;a basic y poco m&#225;s, y claro, los cojones se van pelando con el tiempo.

Por que si quieres hablamos de buenos programadores que empezaron con ensamblador... as&#237; sin mariconadas ni ostias ;)

PD: Ahora que tengo un Mac me estoy mirando e objective-C y mola mucho, pero mucho. El &#250;nico problema que le veo es que el paso de mensajes se decide en runtime, y no estoy muy seguro de las implicaciones de rendimiento que eso pueda acarrear, aunque le da una flexibilidad que est&#225; de lujo.