Fecha y hora actual: Lunes 09 Dic 2019 07:23
Índice del Foro

Foros de programación informática, diseño gráfico y Web

En esta comunidad intentaremos dar soporte de programación a todos los niveles, desde principiantes a profesionales de la informática, desarrollo de programas, programación web y mucho más.

¿Cambios de etapasen POO? O Java.

Responder al Tema

Índice del Foro > Programación en general > ¿Cambios de etapasen POO? O Java.

Autor Mensaje
Tachikomaia
Usuario Activo


Registrado: 30 Jul 2011
Mensajes: 158

Mensaje Publicado: Sábado 02 Nov 2013 00:11

Título del mensaje: ¿Cambios de etapasen POO? O Java.

Responder citando

Estoy haciendo el tuto de Chelín pero soy bastante ansioso y el tuto es bastante pausado; cap 9 y aún no sé algunas cosas básicas, como la que estoy preguntando.

Digamos que quiero hacer un programa que conste de varias etapas, algunas de las cuales se repiten dentro de otras.

No estoy acostumbrado a usar funciones, si es que hay entonces por ahora aprendería o usaría varios do while e ifs, pero ese combo no es muy rápido que digamos, es espaguetti creo, y usaría más variables y daría más vueltas que usando goto.

Así que, básicamente quiero saber cómo se pasaría de una etapa a otra, en POO o más especificamente en Java.

Gracias.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Kyshuo Ayame
Moderador Global


Registrado: 07 Ene 2011
Mensajes: 1045

Mensaje Publicado: Sábado 02 Nov 2013 00:59

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

No termino de entender mucho tu pregunta. Sin embargo rescato que no manejar bien funciones a estas alturas es un ancla. Deberías aprender eso y luego lanzarte a la POO ya que allí las operaciones (funciones y procedimientos) son cruciales.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Pico
Usuario Activo


Registrado: 25 Jun 2013
Mensajes: 628

Mensaje Publicado: Sábado 02 Nov 2013 12:55

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Sí, algo bastante complicado al hacer un programa es estructurarlo bien. Estructurarlo mal da origen a muchos problemas de ejecución. Nunca hay que hacer funciones kilométricas, de eso que abres el main y le metes ahí todo, kilómetro y medio, hasta que acabas, sino una función detrás de otra, más vale pasarse que quedarse corto. Y si alguna vez crees que tienes que meter un goto, o estás en un driver modo núcleo prioridad extrema o crees mal y has estructurado peor.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Tachikomaia
Usuario Activo


Registrado: 30 Jul 2011
Mensajes: 158

Mensaje Publicado: Martes 05 Nov 2013 19:22

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Voy a dar un ejemplo a ver si se entiende mejor lo que pido.

Si fuese un juego de batalla naval y programación de la vieja, sería:
// Etapa 1: Cuando se elige respecto al 1er barco.
10. El jugador determina el giro del barco1.
20. Determina la posición del barco1.
30. X = 2.
// Etapa 2: Cuando se elige respecto a otros barcos.
40. Giro del barcoX.
50. Posición del barcoX.
60. Si ocupa un casillero igual al de otro barco, goto 40.
// El paso 10 y 20 podrían quitarse si X fuese 1, pero entonces, cuando X es 1, se haría un if inútilmente. Preferí meter más código en vez de eso.
// ese goto es como un do while o for, lo uso porque me resulta mucho más cómodo. Más o menos como hablar en español en vez de en italiano.
// En esas condiciones, lo ideal sería, regresar al paso 50 en vez de al 40, si eso basta, pero para ver si basta hay que usar un if, cosa que parece menos ideal... De hecho más ideal sería colocar los barcos de modo que no haya que andar verificando si quedaron encima de otro, pero no sé cómo se hace eso.
70. X++
80. Si X < 5, goto 40.
// De nuevo es como un do while o for, no volveré a comentarlo.
// Esto que sigue quizá se puede ahorrar, poniendo una función, pero no sé.
90. X = 1
// Etapa 3: Cuando se elige respecto a barcos rivales.
100. Determinar el giro del barcorivalX.
110. Determinar la posición del barcorivalX.
120. Si ocupa un casillero igual al de otro barco, goto 100.
130. X++
140. Si X < 6, goto 100.
// Etapa 4: Combate.
150. El jugador elige donde atacar.
160. Si en ese sitio hay un barco, pintar esa parte con rojo.

Bueno, me cansé, pero aquí se verifica si ganó, sino le toca a la máqiuona, se usa estrategia que implica no marcar en casilleros ya marcados, se verifica si golpeó barco, en ese caso marca con rojo y se verifica si ganó, sino le toca al jugador y el proceso se repite.

Bueno... ¿Cómo se haría algo como eso, en POO?

¿Con algo así?
Código:
Do while (juego == "on") {
    El jugador determina el giro del barco1.
    Determina la posición del barco1.
    X = 2.
    Do while (X < 6) {
        Barcoencima = true.
        Do while (Barcoencima == true)
            Giro del barcoX.
            Posición del barcoX.
            Si no ocupa un casillero igual al de otro barco {
                Barcoencima = false.
            }
        }
    }
    X = 1
    // Acá es la parte en que se colocan los barcos rivales y el resto del código.
}


En definitiva ¿es con do whiles así a lo loco? ¿no es? ¿cómo es?

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Pico
Usuario Activo


Registrado: 25 Jun 2013
Mensajes: 628

Mensaje Publicado: Martes 05 Nov 2013 21:35

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Pues sí, el segundo ejemplo está mucho mejor que lo primero. Pero no es POO, es simplemente programación estructurada, y no las chapuzas que se hacían en qbasic.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Tachikomaia
Usuario Activo


Registrado: 30 Jul 2011
Mensajes: 158

Mensaje Publicado: Miércoles 06 Nov 2013 00:11

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Sigo sin saber qué es POO -excepto el significado de las siglas-. Seguiré con el curso pero buscaré otro porque está bastante decepcionante/lento el que estaba haciendo.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Kyshuo Ayame
Moderador Global


Registrado: 07 Ene 2011
Mensajes: 1045

Mensaje Publicado: Miércoles 06 Nov 2013 00:22

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Estimado, yo te recomiendo (creo que ya lo he hecho antes) el curso que yo escribo en este foro

http://www.foro.lospillaos.es/curso-gratuito-de-programacion-aprende-desde-0-vt7888.html

No se si te refieres en lo de decepcionante a él, si es así dímelo ya que toda crítica siempre es aceptada y tomada en cuenta.

Para aprender POO necesitas varios conceptos previos que allí se dan. En programación nunca es bueno saltarse temas por apurado o por ansioso. Te recomiendo ir paso a paso.

Verás que es recién en la lección número 40 donde comienzo a hablar de la Teoría de Objetos.

Saludos.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Tachikomaia
Usuario Activo


Registrado: 30 Jul 2011
Mensajes: 158

Mensaje Publicado: Miércoles 06 Nov 2013 00:57

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Kyshuo Ayame escribió:
No se si te refieres en lo de decepcionante a él, si es así dímelo ya que toda crítica siempre es aceptada y tomada en cuenta.
Lo digo por el curso de Chelín en youtube, tú no eres él ¿no? Ese curso está bien, pero preferiría un ejemplo que tenga todas las cosas, e irlas viendo una por una, no crear un video para cada cosa ni ver cómo las va escribiendo...

Respecto a tu curso también creo que está bien pero ya no recuerdo tanto, Pascal además no me gustó, me salteé las etapas y fui directo al de Java pero me pareció complicado, largo de empezar o algo, no recuerdo, no es una critica muy en serio esta, mi critica en realidad era para Chelín pero está bien, no se puede conformar a todo el mundo y se agradece que lo haga gratis.

Sí, ya me habías recomendado empezar desde 0,es la 3era o 4ta vez xD Pero no. Yo simplemente quiero saber algunas cosas, no me interesa saber tanto, es complicarme al cohete. Simplemente estoy preguntando cómo se cambia de etapas ¿es mediante un nuevo do while? ¿es crear otra clase? No creo que sea tan difícil de responder, no veo necesario hacer un curso de Windows, de opciones que ni conozco, cuando simplemente quiero usar Paint. Es una analogía eso.[/quote]

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Kyshuo Ayame
Moderador Global


Registrado: 07 Ene 2011
Mensajes: 1045

Mensaje Publicado: Miércoles 06 Nov 2013 01:48

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Entiendo tu analogía pero digamos que es errónea. Yo creo que una que se acerca más a este caso es querer hacer una imágen con efectos geniales y realizmo utilizando Paint en vez de CorelDraw ¿Me explico?

Básicamente eso es lo que tu quieres lograr. ¿Se puede? Sí. ¿Qué me cuesta más, aprender CorelDraw o lograr mi cometido con Paint? Pues lograrlo con Paint.

En este caso tú haces una pregunta concreta y digamos que más o menos se podría dar una respuesta concreta. El hecho es que eso no te serviría de nada porque el próximo intento inmediato que tengas para avanzar en eso te trancará, y es muy probable que te tranquen las mismas cosas que te trancan ahora (valga la redundancia).

En programación no puedes ir tomando pequeños conocimientos aislados. En algunas cosas sí, pero necesitas una base que tú no tienes y justamente es que debes formarla. Si en mi curso, por ejemplo, fuiste directo a Java pues es normal que te haya parecido complicado, porque la base para verlo la formo antes, con todo lo dado en Pascal y Modula.

Entiendo que el pasaje por cuestiones que no te interesan y que, de momento, te alejan de tu objetivo inmediato te quiten las ganas, pero es el camino a recorrer y te aseguro que tendrás excelentes resultados.

Tanto en mi curso como en mucho más material que hay en la Web verás ciertas metodologías para resolver problemas y herramientas para crear algoritmos complejos. También ciertos aspectos de diseño y demás.

En fin, ese es mi consejo y no me cansaré de dártelo. Espero no molestarte, pero de verdad, mi intención es ayudarte.

Saludos.

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Pico
Usuario Activo


Registrado: 25 Jun 2013
Mensajes: 628

Mensaje Publicado: Miércoles 06 Nov 2013 02:33

Título del mensaje: Re: ¿Cambios de etapasen POO? O Java.

Responder citando

Se puede dar una respuesta rápida. La POO no tiene nada que ver con usar while, if o goto. Se dice que una programación es POO si hace uso objetos. Y aquí debe venir lo difícil, entender que es eso de un objeto. Miras la wikipedia, por ejemplo, y te habla de herencia, polimorfismo, encapsulamiento, abstracción..., y te quedas igual. Creo que lo que quiere decirte Kyshuo Ayame es que tienes que saber bastante más de programación de lo que sabes para entender qué es un objeto y la POO.

Mientras tanto se puede poner un ejemplo. Tú puedes hacer algo con plastilina, como un castillo. Cogerás cachos de plastilina, le darás forma, lo pintarás de colores, y te quedará bien. Pero aquello con lo que lo has hecho, plastilina, es toda igual y siempre la misma. O puedes hacerlo con un tente. Con el tente tienes una serie de objetos (mira, objetos, como en la POO) de muchas formas y colores distintas, cada uno independiente del otro.

Pues esa misma idea es la que lleva a hablar de objetos en programación. La plastilina es el qbasic y el tente la POO. Los objetos son una evolución de las clases. Un objeto es un objeto cuando la clase que lo define cumple una serie de condiciones. Ahí entra lo de la herencia, el polimorfismo, la encapsulación....

Volver arriba
Ver perfil del usuario Enviar mensaje privado
Responder al Tema
Mostrar mensajes anteriores:   
Ir a:  
Todas las horas están en GMT + 2 Horas

Temas relacionados

Tema Autor Foros Respuestas Publicado
El foro no contiene ningún mensaje nuevo

¿Cómo instalar correctamente JDK (Java Develope...

Alfonso Lara Temas generales 2 Martes 07 May 2019 22:09 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Anuncio Cambios importantes

Tesis Temas generales 44 Viernes 21 Sep 2018 10:48 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Ayuda con TestNG Parametrico en java netbeans

baltigo Java 0 Sábado 30 Jun 2018 01:37 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Publicar Aplicación web JAVA en tomcat

Irvin Java Web 1 Viernes 13 Oct 2017 17:54 Ver último mensaje
El foro no contiene ningún mensaje nuevo

Imagen referencial De creación de jtable en apl...

Jensel S.G Java 6 Miércoles 13 Sep 2017 20:06 Ver último mensaje
Panel de Control
No puede crear mensajes, No puede responder temas, No puede editar sus mensajes, No puede borrar sus mensajes, No puede votar en encuestas,