Ver la Versión Completa : Como empiezo a programar en android desde 0
ederoierra
23/10/11, 16:10:48
He estado buscando libros de android en español para programar y los unicos libros de android que encuentro estan en ingles y los que estan en castellano son de pago y no los encuentro para descargar gratis.Ya tengo la sdk de android instalada he puetso la api 4.0
y el eclipse asi que ya lo tengo todo listo.necesito algun libro o algo .mi objetivo es programar pequeños juegos
un saludo:osvaisacagar:
pmaicas
23/10/11, 18:41:04
Pero sabes programar en java ?
ederoierra
23/10/11, 18:43:45
No se programar en java se un poco de c pero la programacion de java normal no es la misma que la de android no?ya se que en android se programa en java pero no sera con cosas distintas
salu2
ederoierra
23/10/11, 18:44:54
no se java se un poco de c pero el java de android no es el mismo del ordenador no sera con cosas cambiadas no?
salu2 espero respuestas
iliberis
23/10/11, 20:13:44
Es el mismo lenguaje. Otra cosa son las librerías y los objetos visuales. Pero lo que es algoritmos, son 100% los mismos. Primero debieras tener un nivel básico de Java, ya que cualquier manual de Android da por supuesto que sabes Java y no se entretenienen en explicar estructuras ni metodología. Esos conceptos, de forma abstracta, son los mismos en cualquier lenguaje. Los manuales de Android, tanto en Ingles como en Español, se limitan a describir los objetos y su uso, pero NINGUNO te enseña a programar.
Por otro lado, el tema juegos es mucho más dificil de lo que parece. En mi opinión, intentas pasar de 0 a 100 de golpe. Los juegos son, tradicionalmente, lo más complicado de la programación, y requieren el manejo de otras técnicas además de la programación. Según el tipo de juego, hasta física de partículas (evidentemente, no es lo normal, pero se da en muchos casos).
Los juegos son aplicaciones que, de entrada, requieren de una optimización de recursos muy compleja, y se programan "a pelo". En otras palabras, sin usar los objetos de entorno gráfico. Sencillamente, se "dibuja" y se calcula todo lo que se ve en la pantalla. Ya que sabes algo de C, mejor aprende a usar el NDK, porque le vas a sacar mucho más partido que a Java, y te va a permitir trabajar a bajo nivel. Ya que no le vas a sacar partido a la librería de objetos (que es, precisamente, lo que hace de la programación en Java/Android algo cómodo), no necesitas Java.
En respuesta a tu pregunta original, si quieres aprender desde 0, debes empezar con Java básico. Después aprender BIEN como funciona Android "por dentro" (será necesario para los juegos un gran dominio de los conceptos internos), luego Android en Java... y, por ultimo, cuando hayas pasado de 0 a 95, ya te podrás plantear los juegos y el NDK, aprovechando todos los conocimientos adquiridos anteriormente.
pmaicas
24/10/11, 11:10:35
El lenguaje es java, pero solo el lenguaje propiamente dicho, no las librerías que se usan (el API). Te aconsejo que te cojas un libro de java o un tutorial, aprende el lenguaje haciendo programas tipo consola para no perder el tiempo con el API de otros entornos. La sintaxis es parecida a C/C++, es programacion orientada a objetos (si solo sabes C esto te parecerá raro).
seasonsend
24/10/11, 15:39:12
Totalmente de acuerdo con iliberis (http://www.htcmania.com/member.php?u=124187).
No sabría por donde empezar, lo que me parece evidente es que empezar por los juegos es una batalla perdida de antemano.
En algún sitio leí que todo programador ha de dominar uno o dos lenguajes de programación y unas nociones básicas de programación web... Yo en mi caso te aconsejaría que aprendieses bien, muy bien, algún lenguaje orientado a objetos y una vez seas capaz de pensar en este sentido podrás plantearte retos cada vez más relevantes.
Por poner un ejemplo, los Beatles al principio eran músicos mediocres y fuerón aprendiendo con el tiempo. La técnica se aprende, lo que creaban esos tios no. Por tanto si tienes creatividad y ganas de hacer algo busca las herramientas para llevarlo a cabo.
Saludos,
ederoierra
24/10/11, 20:30:08
Hos pongo esta pagina que encontre que son unos videos cursos para aprender aprogramar videojuegos sencillos son 15 o 16 cursos para ir cogiendo manejo os pongo
la pag:http://www.illasaron.com/html/content/01-curso-desarrollo-aplicaciones-android-configurar-entorno-de-desarrollo
Yo no pretendo aprender aprogramar juego de golpe del tiro quiero primero hacer una app sencilla y luego ir subiendo pero me quiero ir enterando como va esto de programar en los juegos porque hay una cosa que no entiendo yo imagianos que tengo los sprites y quiero que aprezcan en pantalla yo no los puedo arrastrar para que parezca en pantalla como lo tengo que poner a ojo no se si me entendeis me refiero que para hacer una scenario de un juego que lo tengo que hacer sin mirarar como me va quedando el juego todo a ojo
salu2 espero repuestas gracias
iliberis
24/10/11, 21:15:03
Precisamente ahi esta uno de los problemas de los juegos... el hacer todo "a ojo"... pero, más que asi, se usa una combinación entre lenguajes de programación, fisica y matematicas.
Luego el lenguaje apropiado... Java NO TIENE ninguna funcion ni nada parecido para mover sprites. Y, por otro lado, usando API olvidate de que eso se vea medianamente fluido, a no ser que tengas un telefono con 10 o 12 nucleos a 10000Mhz cada uno... y aun asi, no ira muy bien. Por eso se hace a bajo nivel. Al prescindir del API puedes conseguir mas velocidad... y eso hay que hacerlo optimizando los algoritmos. La optimización de algoritmos es un 10% de programación y un 90% de matematicas. Cualquiera que haya estudiado informatica sabe que la asignatura de Algoritmia contiene apenas nociones de programación.
Desgraciadamente, los escenarios y esas cosas se hacen todos "a ojo", y con algoritmos matematicos. Si acaso el escenario se suele usar un bitmap... pero el tema de los sprites es otra historia.
Lo dicho... la programación de videojuegos, aun a nivel básico, es una de las disciplinas más duras de la programación. Por eso hay ofertas de trabajo tan bien pagadas y no encuentran programadores a pesar de que somos miles.
Empieza primero por lo básico, porque es lo más importante, y después, poco a poco y con años de dedicación, podrás dedicarte a esto sin mayor problema. Es un tema, además, apasionante como pocos.
FordPrefect
25/10/11, 10:48:51
Hola,
Según el tipo de juego, hasta física de partículas (evidentemente, no es lo normal, pero se da en muchos casos).
Vamos a dejarlo en sistemas de partículas y mecánica de sólidos, que la física de partículas es otra cosa.
En cualquier caso se agradece la explicación porque por foro pasa mucha gente, pero mucho me temo que intentar que un HOYGAN entienda esas cosas es tiempo perdido.
Si usa las mayúsculas, los espacios y los signos de puntuación en C o en Java como escribe en castellano, no pasará de
sub mein(
{.
ederoierra
25/10/11, 13:38:48
que no utilice la api te refieres a la sdk de android para hacer juegos no?
Entonces que tipo de programa debo usar para desrrollar juego he visto uno llamado unity 3d .Yo lo que pretendo es hacer un juego en 2d algo sencillo con movimiento del personaje adelante atras que salte y poco mas y que avance por un escenario saludos
gracias por vuerstras repeustas
iliberis
25/10/11, 20:40:27
Vamos a dejarlo en sistemas de partículas y mecánica de sólidos, que la física de partículas es otra cosa.
Bueno... yo lo más que he hecho es aventuras gráficas con algún intérprete específico, asi que ni colisiones, ni efectos, ni nada de nada... todo muy sencillo. No he profundizado nunca en juegos, porque es un tema realmente para una élite. Siempre se ha dicho que el que programa un juego, programa cualquier cosa. No es realmente asi, pero la cosa no va muy lejos de la realidad.
que no utilice la api te refieres a la sdk de android para hacer juegos no?
Nop... es mas bien que no utiices nada aparte del lenguaje Java. Vamos, programas en consola y poco más, lo justo para aprender a programar en Java antes de meterte en el verdadero infierno de Android.
Entonces que tipo de programa debo usar para desrrollar juego he visto uno llamado unity 3d .Yo lo que pretendo es hacer un juego en 2d algo sencillo con movimiento del personaje adelante atras que salte y poco mas y que avance por un escenario saludos
"Programa" como que ninguno. Deberás usar una API especializada en juegos, que de todas formas no te dará buen rendimiento y requiere buen conocimiento de Java. Por otro lado, te facilitará enormemente la programación de un juego... pero si buscas algo que te haga el juego casi que el solito... mejor que no lo intentes.
MaGaRCaN
26/10/11, 13:43:26
Si todos los manuales de programación empiezan por un "Hello World" por algo será...
pmaicas
26/10/11, 15:45:33
Si todos los manuales de programación empiezan por un "Hello World" por algo será...
Esto me recuerda al que quería aprender desde cero y lo primero que hizo fue pagar la cuota del market para descubrir luego que 'no era tan facil'.
ederoierra
26/10/11, 16:10:08
Si ya consegui crear un hello world ya se que es muy dificil diseñar un juego y que no hay ningun programa que te lo haga solo ,que es complicado y que hay que ir haciendolo poco a poco. que api me recomendarias para el diseño de juegos.he visto una llamada corona sdk pero usa lua un lenguaje no muy potente.
¿que api me recomendariais?
salu2 y gracias
MaGaRCaN
26/10/11, 19:18:58
http://www.andengine.org/
-Gratuíta
-Sencilla
-Potente
-Enfocada a 2D
ederoierra
26/10/11, 21:01:00
si ya habia oido hablar de and engine, pero una duda que nunca consiguo entender and engine es un motor grafico con el podre ver lo que hago quiero decir no tendre que hacerlo tdo a ojo,es que en unity lo puedes hacer viendo los modelos 3d y lo que quieras y ves lo que estas haciendo pero al programar desde eclipse un juego digamos yo no veo lo que hago lo tengo que hacer por decirlo de alguna manera a ojo si le añado al eclipse el and engine cambiaria esto lo podria hacer el juego viendo lo que hago , y mas importante podre crear juegos de gran calidad me refiero que si es un motor con el que supongamos que podria hacer un juego de tanta caldiad como el angry birds(ya se que es mucho decir para un tio que solo ha hecho un hello world)
saludos muchisimas gracias
lesdayan
28/10/11, 21:03:04
hola disculpen pero nose talves los mas metidos en el tema me puedan ayudar...
to tengo un programilla q lo ise para los terminales con OS Windows Mobile 6.5 y ahora me gustaria pasarlo al Android...
y pues me gustaria saber como hacer esto tendria q hacer una base o es q tengo q estructurar mi programilla desde CERO para que trabaje en terminales con Android...
edito... ^^
mi programilla esta hecho totalmente en visual basic
MaGaRCaN
29/10/11, 21:07:44
hola disculpen pero nose talves los mas metidos en el tema me puedan ayudar...
to tengo un programilla q lo ise para los terminales con OS Windows Mobile 6.5 y ahora me gustaria pasarlo al Android...
y pues me gustaria saber como hacer esto tendria q hacer una base o es q tengo q estructurar mi programilla desde CERO para que trabaje en terminales con Android...
edito... ^^
mi programilla esta hecho totalmente en visual basic
Si lo tienes hecho en visual basic, la mejor opción es utilizar Basic4Android. Portar un programa de vb6.0 a b4a es prácticamente inmediato ;)
iliberis
30/10/11, 21:30:03
Si... salvo que si es para WM, estará hecho en .NET, que no tiene nada que ver. Además, son sistemas distintos. La unica opción es Mono (que vale más o menos 400€). Y, aún asi, dos inconvenientes:
1- El runtime "pesa" lo suyo
2- Aun asi, no se puede portar directamente. Habria que adaptar gran parte del programa.
Yo lo que haría, coincidendo más o menos con lo que comenta Magarcan, es hacer otra vez la aplicación "casi" desde cero, pero en Basic4Android para reutilizar los conocimientos de VB que se puedan tener. Porque lo que es el codigo, no vale ni el 30%... solo los algoritmos.
future21
03/11/11, 11:32:25
Hombre de buena fe, como dicen los compañeros necesitas primero los conocimientos básicos de Android. Mira, si ya sabes C, programar en java es pan comido. Pero una casa no se empieza por el tejado. De todas formas, ánimo y suerte.
Enviado desde mi GT-I9001 usando Tapatalk
repellado
12/01/12, 22:13:57
yo para empezar a entender un poco android tuve que leerme y hacer los ejercicios de un manual de java, el manual de deitel, muy bueno por cierto, ahora ando haciendo pruevas con android pero estoy buscando algo en castellano y en pdf para descargar
timonoj
13/01/12, 04:14:06
Bueeeno. Yo también soy informático, he tenido mi temporada de programación y tal. NO soy ningún crack, y en android ando bien verde (ando aprendiendo ahora).
Aunque en cierta medida estoy de acuerdo con la mayoría de las opiniones vertidas aquí, vengo a añadir un punto de disensión: Aunque la teoría dice que lo suyo es aprender por los cimientos (y en principio sería la mejor manera), también hay programadores enfocados a videojuegos que han empezado de otras formas, utilizando la casa ya hecha, haciendo pequeñas modificaciones sin entender casi nada de lo que hacen, y luego ir aprendiendo más cosas: Ejemplo: modders de videojuegos. Empiezan haciendo unas texturillas, modelan algunos NPC, cosas simples, y luego se meten en scripting de eventos, y cosas así, hasta que acaban aprendiendo a picar código de verdaditas. Es otro modo de aprender, pero bueno (lo uso de ejemplo, yo no sé programar videojuegos, pero he leído de peña que ha seguido ese tipo de trayectoria).
Respecto a Android, prueba a escuchar a edu4java:
http://www.youtube.com/watch?v=kZYWqL0kaAM&feature=relmfu
BocataDeChoped
13/01/12, 13:04:51
No se puede empezar la casa por el tejado. Si quieres programar en Android necesitas java, necesitas entender los conceptos la programación orientada a objetos y necesitas un nivel de comprensión profundo de como se gestionan los rescursos en Android/Java. Los tutoriales son muy fáciles de seguir porque te proveen el código fuente para que lo pruebes pero de ahí a escribir tu propio código hay un buen salto. No se puede pretender correr antes de saber andar.
Mira te voy a poner mi experiencia y no te aconsejo que empieces un juego como te han dicho es poco programación y mucha física y matemáticas. Yo quería empezar en Android y cogí con mi amigo que se iba a encargar de los gráficos y yo de la lógica cuando empece a recopilar información y veía que se quedaba corto se dejaban muchas cosas en el aire y hasta que llegue a un libro de programación de Android en inglés (No me era un problema) y hasta que vi la complejidad que lleva y todo y al final cancele ese proyecto.
Hemos empezado con algo "fácil" que es un programa recordatorio para los estudios (Vamos a mejorar para que se comprare con una app de iOS, es que le origen de ese programa tiene un poco de historia) y nos hemos puesto en serio (mi amigo con los gráficos y yo programando) y cuando terminemos este proyecto(su v. 1.0) haremos un juego de nyan cat (si va en serio) porque ya tendre algo de soltura y usare un framework y así aprender a usar el giroescopio y pasar un buen rato programando :D.
En conclusión, la gente normalmente cuando quiere empezar a programar quieren hacer un juego y no saben que es una de las partes de la programación mas complicadas porque ya es matemáticas y física y la gente normalmente es tan cabezona que se empeña, empiezan no lo consiguen y se frustan que empiezan a pensar que la programación no es lo suyo. Pues empieza con alguna aplicación por muy tonta que sea pero empieza y luego ves mejorando, cuando hagas un proyecto serio y todo es cuando deberías pagar la tasa para poder publicar en el market.
vBulletin® v3.8.1, Copyright ©2000-2026, Jelsoft Enterprises Ltd.