lunes, 4 de mayo de 2020

La Programación Estructurada.

La programación estructurada surgió en la década de 1945, es considerar como un paradigma de programación (un estilo de desarrollo de programas), orientado a mejorar la claridad, calidad y tiempo de desarrollo de un programa de computadora recurriendo únicamente a subrutinas y tres estructuras básicas: secuencia, selección (if y switch) e iteración (bucles for y while).

Acá tenemos la imagen de un código de ejemplo de cómo sería un programa bajo el paradigma de programación estructurada:












Así como también un vídeo en la plataforma de YouTube, donde se nota de forma un poco más gráfica y formal el concepto de la programación estructurada:

Por último, si deseas profundizar más acerca de este tema, te dejo el enlace de la página, de donde se ha obtenido esta información:


La Programación Orientada a Objetos (POO)

La programación orientada a objetos(POO) fue popularizada en la década de 1990, es un paradigma de programación que viene a innovar la forma de obtener resultados. Los objetos manipulan los datos de entrada para la obtención de datos de salida específicos, donde cada objeto ofrece una funcionalidad especial. Está centrado Principalmente en las técnicas del sexenio (período de seis años) como lo son: herencia, cohesión, abstracción, polimorfismo, acoplamiento y encapsulamiento. Las cuáles serán definidas y analizadas próximamente en el presente apartado.

Acá tenemos las imágenes de un código de ejemplo de cómo sería un programa bajo el paradigma de programación orientada a objetos.













Así como también un vídeo en la plataforma de YouTube donde se nota de forma un poco más gráfica y formal el concepto de la programación Orientada a Objetos:


Por último, si deseas profundizar más acerca de este tema, te dejo el enlace de la página, de donde he sacado esta información:


La Programación Orientada a Eventos

La Programación orientada a eventos nace en el año 2013, es un paradigma de programación en el que tanto la estructura como la ejecución de los programas van determinados por los sucesos que ocurran en el sistema, definidos por el usuario o que ellos mismos provoquen. Un ejemplo claro lo tenemos en los sistemas de programación Lexico y Visual Basic, en los que a cada elemento del programa (objetos, controles, etcétera) se le asignan una serie de eventos que generará dicho elemento, como la pulsación de un botón del ratón sobre él o el redibujado del control. La programación dirigida por eventos es la base de lo que llamamos interfaz de usuario, aunque puede emplearse también para desarrollar interfaces entre componentes de Software o módulos del núcleo.

Aquí un vídeo en la plataforma de YouTube donde se nota de forma un poco más gráfica y formal el concepto de la programación Orientada a Eventos.


Así como también el complemento de la información:

Complejidad, encapsulamiento, objetos, métodos, clases, agregación, polimorfismo, herencia. mensajes en objetos.

A continuación, definiremos brevemente y de manera sencilla, de forma que se comprendan con exactitud uno a uno los conceptos claves de las técnicas utilizadas en la POO:

-> Complejidad: representa la cantidad de recursos (temporales) que necesita un algoritmo para resolver un problema y por tanto permite determinar la eficiencia de dicho algoritmo.

En este video se explica un poco más claro el concepto de complejidad:

Si deseas profundizar un poco más te dejare el link de la información más ampliada:


-> Encapsulamiento: Consiste en el ocultamiento del estado, es decir, de los datos miembro de un objeto de manera que solo se pueda cambiar mediante las operaciones definidas para ese objeto. Como bien sabemos, cada objeto está aislado del exterior, para ello el aislamiento protege a los datos asociados de un objeto contra su modificación por quien no tenga derecho a acceder a ellos, eliminando efectos secundarios e interacciones que pudieran ser perjudiciales a lo largo de la ejecución del programa.

Acá unos screenshots de un proceso de encapsulamiento en java:


En este video se explica un poco más claro el concepto de encapsulamiento, además de explicar cómo realizar el procedimiento de encapsulado paso a paso, en el lenguaje JAVA:

Si deseas profundizar un poco más te dejare el link de la información más ampliada:



-> Objetos: un objeto es una cosa que consta de un estado y de un comportamiento, que a su vez constan respectivamente de datos almacenados y de tareas realizables durante el tiempo de ejecución. Este puede ser creado instanciando (la particularización, realización específica u ocurrencia de una determinada clase o entidad) una clase, como ocurre en la programación orientada a objetos, o mediante escritura directa de código y la replicación de otros objetos.

Acá unos screenshots de un proceso de la creación de un objeto en java:


En este video se explica un poco más claro el concepto de los objetos, además de explicar cómo realizar o crear un objeto, en el lenguaje JAVA:


Si deseas profundizar un poco más te dejare el link de la información más ampliada:


-> Métodos: Consiste en una subrutina cuyo código es definido en una clase y puede pertenecer tanto a una clase, como es el caso de los métodos de clase o estáticos, como a un objeto, como es el caso de los métodos de instancia. La diferencia entre una función y un método es que este último, al estar asociado con un objeto o clase en particular, puede acceder y modificar los datos privados del objeto correspondiente de forma tal que sea consistente con el comportamiento deseado para el mismo.

Acá unos screenshots de un proceso de la creación de un método en java:



En este video se explica un poco más claro el concepto de los métodos, además de explicar cómo realizar o crear un método, en el lenguaje JAVA:


Si deseas profundizar un poco más te dejare el link de la información más ampliada:



·         -> Clases: Una clase es una plantilla para la creación de objetos de datos según un modelo predefinido. Estás son utilizadas para representar entidades o conceptos, tal cual como lo hacen los sustantivos en el lenguaje. Conocemos que cada clase es un modelo que define un conjunto de variables (estado de la clase) y métodos apropiados para operar con dichos datos (el comportamiento de la clase). Cada objeto creado a partir de la clase se denomina instancia de la clase. Dentro de los principales elementos de una clase, encontramos: los campos de datos (almacenan el estado de la clase por medio de variables, estructuras de datos e incluso otras clases) y los métodos/funciones que como se dijo anteriormente son los que nos ayudan a manipular los datos.

Acá unos screenshots de un proceso de la creación de una clase en java:



En este video se explica un poco más claro el concepto de las clases, además de explicar cómo realizar o crear una clase, en el lenguaje JAVA:

Si deseas profundizar un poco más te dejare el link de la información más ampliada:

-> Agregación: La agregación es un tipo de asociación que indica que una clase es parte de otra clase (composición débil). Los componentes pueden ser compartidos por varios compuestos (de la misma asociación de agregación o de varias asociaciones de agregación distintas). La destrucción del compuesto no conlleva la destrucción de los componentes. Habitualmente se da con mayor frecuencia que la composición (forma fuerte de composición donde la vida de la clase contenida debe coincidir con la vida de la clase contenedor).

Si deseas profundizar un poco más te dejare el link de la información más ampliada, en la cual se encuentra un excelente ensayo sobre la agregación y la composición, tanto en la programación como en uml:


-> Polimorfismo: El polimorfismo se refiere a la propiedad por la que es posible enviar mensajes sintácticamente iguales a objetos de tipos distintos. Cumpliéndose como requisito único por parte de los objetos que se utilizan de manera polimórfica es saber responder al mensaje que se les envía. La apariencia del código puede variar dependiendo del lenguaje que se utilice, más allá de las obvias diferencias sintácticas.

En este video se explica un poco más claro el concepto del polimorfismo, además de explicar cómo realizarlo, en el lenguaje JAVA:

Si deseas profundizar un poco más te dejare el link de la información más ampliada:

-> Herencia: la herencia es, después de la agregación o composición, el mecanismo más utilizado para alcanzar algunos de los objetivos más preciados en el desarrollo de software como lo son la reutilización y la extensibilidad. A través de ella, los diseñadores pueden crear nuevas clases partiendo de una clase o de una jerarquía de clases preexistente (ya comprobadas y verificadas) evitando con ello el rediseño, la modificación y verificación de la parte ya implementada. La herencia facilita la creación de objetos a partir de otros ya existentes e implica que una subclase obtiene todo el comportamiento (métodos) y eventualmente los atributos (variables) de su superclase.

En este video se explica un poco más claro el concepto de la herencia, además de explicar cómo realizarla, en el lenguaje JAVA:

Si deseas profundizar un poco más te dejare el link de la información más ampliada:


Acá dejare un video donde se explica a detalles cada uno de los conceptos anteriormente mencionados:

Entorno De Desarrollo Integrado IDE

 ¿Qué es un IDE?

    Sus siglas IDE dan significado a (Integrated Development Environment) que a su vez en español significan (entorno de desarrollo integrado), una vez que ya sabemos el significado de sus siglas pasamos a definir lo que es un entorno de desarrollo integrado, definido de una forma simple, es una aplicación informática que proporciona servicios integrales para facilitarle al desarrollador o programador el desarrollo de software. Normalmente, un IDE consiste de un editor de código fuente, herramientas de construcción automáticas y un depurador. La mayoría de los IDE tienen auto-completado inteligente de código (IntelliSense). Algunos IDE contienen un compilador, un intérprete, o ambos.
    
     Aquí te dejare una lista de los IDE más populares, con una pequeña reseña y su respectivo link de descarga:

    1. Visual Studio Code: es un potente editor de código disponible para Windows, macOS y Linux. Lanzado en 2015 por Microsoft, VS Code está optimizado para construir y depurar aplicaciones web y de nube modernas. Además, cuenta con soporte, nativo y por medios de complementos, para un gran número de lenguajes de programación, como JavaScript, TypeScrip, Node.js, C++, C#, Java, Python, PHP, Go. .NET, entre otros.

Acá el link de la página oficial de visual studio code.

2. Visual Studio: Visual Studio es un IDE para desarrollar interfaces gráficas de usuario (GUI), formularios de Windows, juegos, servicios y aplicaciones web. Desde la versión 2017, este IDE propiedad de Microsoft y disponible para Windows y Mac, permite desarrollar, por medio de sus herramientas, aplicaciones para Windows, Linux, macOS, Android y iOS.

Acá el link de la página oficial de visual studio:

3. Sublime Text: es un software propietario para escribir código, disponible para Windows, Mac y Linux. Además, destaca por su kit de herramientas, su interfaz de usuario, sus potentes funciones y su increíble rendimiento.

Acá el link de la página oficial de Sublime Text:

4. Eclipse: es una plataforma de código abierto utilizada para desarrollar aplicaciones en Java, C / C ++, Python, PERL, Ruby y otros lenguajes. Gracias a las herramientas de desarrollo Java (JDT), que proporcionan una serie de características sofisticadas, Eclipse puede ser usado como un IDE para Java.

Acá el link de la página oficial de Eclipse:

5. Atom: es un editor de código multiplataforma (anteriormente un IDE), con integraciones de Git y GitHub. Al igual que la mayoría de los otros editores de texto configurables, Atom permite a los usuarios instalar paquetes y temas de terceros para personalizar las características y el aspecto del editor.

Acá el link de la página oficial de Atom:

-------------------------------------------------------------------------------------------------------
Acá encuentras un video en el cual se comparan, un IDE y un editor de código.

en este enlace puedes encontrar un video en el que se explica que es un IDE

Aquí está el link si quieres información adicional de los IDE:



Interfaz Gráfica De Usuario (GUI)

¿Qué es una GUI?
Sus siglas vienen del inglés (graphical user interface) que a su vez en español significa interfaz gráfica de usuario, este es un programa informático que actúa de interfaz de usuario, utilizando un conjunto de imágenes y objetos gráficos para representar la información y acciones disponibles en la interfaz. Su principal uso, consiste en proporcionar un entorno visual sencillo para permitir la comunicación con el sistema operativo de una máquina o computador. Es necesario resaltar que, en el contexto del proceso de interacción persona-computadora, la interfaz gráfica de usuario es el artefacto tecnológico de un sistema interactivo que posibilita, a través del uso y la representación del lenguaje visual, una interacción amigable con un sistema informático.

Si deseas profundizar un poco más te dejare el link de la información más ampliada:

Acá dejare dos enlaces que conducen a videos que hablan acerca las GUI donde se explica a detalle y de una forma más visual el concepto anterior:


  ->Fundamentos e importancia de un Buen Diseño de GUI, formularios, elementos, métodos.

Para realizar un buen diseño de GUI hay que tener en cuenta 9 principios fundamentales, como lo son:

1. Comunicación Visual Efectiva para Interfaces Gráficas de Usuario:
El uso de tipografía, símbolos, color y otros gráficos estáticos y dinámicos son comúnmente usados para expresar hechos, conceptos y emociones. Esto compone un diseño gráfico sistemático orientado a la información que ayuda a la gente a comprender información compleja. La comunicación visual efectiva para este sistema se basa en algunos principios básicos de diseño gráfico.

2. Consideraciones de Diseño:
Existen tres factores que pueden considerarse para el diseño de una interfaz de usuario correcta: factores de desarrollo, factores de viabilidad y factores de aceptación.
Los factores de desarrollo ayudan a mejorar la comunicación visual. Esto incluye toolkits y librerías de componentes, soportes para un rápido prototipado, y adaptabilidad.
Los factores de viabilidad tienen en cuenta factores humanos y expresan una fuerte identidad visual. Esto incluye: habilidades humanas, la identidad del producto, un claro modelo conceptual, y múltiples representaciones. Como factores de aceptación están la política de la corporación, los mercados internacionales, y la documentación y entrenamiento.

3. El Lenguaje Visible:
El Lenguaje Visible se refiere a todas las técnicas gráficas usadas para comunicar el mensaje o contexto. Esto incluye:

– Disposición o Layout: formatos, proporciones, y mallas (grids); organización: ya sea 2D y 3D.

– Tipografía: selección de tipos de letra y estilos, incluyendo la anchura fija y variable.

– Color y Textura: color, textura y luminancia aportan información compleja y realidad pictorial.

– Imágenes: signos, iconos y símbolos, desde lo fotográficamente real a lo abstracto.

– Animación: un display dinámico o cinético: muy importante en la utilización de imágenes relacionadas con el vídeo.

– Secuenciamiento: el aproximamiento total del secuenciamiento visual al secuenciamiento lógico.

– Sonido: abstracto, vocal, concreto, o musical.

– Identidad Visual: las reglas adicionales y únicas que proporcionan consistencia de conjunto a una interfaz de usuario.

4. Principios del Diseño de interfaces de usuario:
Existen tres principios fundamentales relacionados en el uso del lenguaje visible:

– Organizar: proveer al usuario de una estructura conceptual clara y consistente.

– Economizar: hacer lo máximo con la menor cantidad de elementos.

– Comunicar: ajustar la presentación a las capacidades del usuario.

5. Términos y conceptos relacionados con el color:
Las discusiones sobre el color suelen ser confusas porque científicos, artistas, diseñadores, programadores y profesionales del marketing describen el color de diferentes formas.
Algunas de estas formas difieren del rojo, verde y azul que basan el sistema de color «RGB», familiar para los usuarios de periféricos con tubos de rayos catódicos (CRTs).

Los siguientes términos aclaran conceptos sobre esta manera de entender el color:

- Matiz (Hue) es la composición espectral de longitud de onda que produce percepciones de ser azul, naranja, verde, etc. por ejemplo.

- Valor (Value) es la cantidad relativa de claridad u oscuridad del color en un rango desde el negro al blanco (también llamado intensidad).

- Saturación (Chroma) es la pureza del color en una escala desde el gris a la variante más viva del color percibido.

- Brillo (Brightness) es la cantidad de energía luminosa al crear el color.

6. Principios de diseño del color:
Los tres principios básicos de diseño pueden aplicarse también al color: organización del color, economía del color y comunicación del color.

- Organización del color:
La organización del color influye en la consistencia de la organización. El color debe emplearse para agrupar los ítems relacionados. Debe aplicarse una organización de color consistente tanto a las pantallas, como a la documentación y a los materiales de entrenamiento. Los colores similares infieren similitud en los objetos. Se debe mirar la consistencia al agrupar objetos con el mismo color. Una vez se establece una codificación del color, esta debe ser usada en toda la interfaz gráfica, así como en la documentación y publicaciones relacionadas.

- Economía del color:
El segundo principio del color, la economía del color, sugiere usar un máximo de 5 +/- 2 colores cuando el significado tiene que ser recordado. La idea fundamental es usar color para aumentar la información proporcionada en blanco y negro (por ejemplo, diseñar la interfaz para que funcione bien primero en blanco y negro).

-Comunicación del color:
El énfasis del color sugiere usar fuertes contrastes en valor y tono para centrar la atención del usuario en la información más importante. Cuando demasiadas figuras o campos del fondo compiten por la atención del usuario se produce cierta confusión. La jerarquía de los estados sobre iluminado, neutro e infra iluminado para todas las áreas de la pantalla deben ser cuidadosamente diseñadas para proporcionar la máxima sencillez y claridad.

7. Simbolismo del color:
La importancia del color es comunicar. Los códigos de colores deben respetar el uso profesional y cultural ya existente de determinados colores. Las connotaciones varían fuertemente respecto a los diferentes tipos de usuario, especialmente cuando son de diferentes culturas. Las connotaciones del color deben ser usadas con sumo cuidado.
Por ejemplo: los buzones de correos son azules en Estados Unidos, rojo brillante en Inglaterra y amarillos en Grecia. Si se usa un icono gráfico para representar el correo electrónico, es conveniente adecuar su color al país para mejorar la comunicación.

 8. Combinaciones entre colores:
Cuando pensamos en qué colores debemos emplear en nuestras pantallas debemos reparar en la influencia que un determinado color puede llegar a tener sobre el resto. Los colores provocan sensaciones cuando se abandona su visión y se pasa sin transición a observar otro. Por ejemplo, si estamos viendo el color azul y pasamos a ver un amarillo, éste se verá brillante. Si no se pasa anteriormente por el azul, el amarillo se verá mucho más pálido y mate.
En general, los colores tienen unas propiedades psicológicas que actúan sobre nuestro subconsciente. Existen algunos efectos de la yuxtaposición entre colores que se admiten de forma general. Por ejemplo, el color amarillo, que como hemos dicho es alegre y brillante, pierde toda su fuerza cuando se combina con el blanco. Para rebajar el excesivo dinamismo que evoca el naranja no hay nada como mezclarlo con el blanco. Sin embargo, combinado con el rojo forma un color pardo demasiado denso. El violeta combina muy bien con el rojo, porque da más prestancia a la imagen noble y altiva del violeta, pero si se mezcla con el blanco resulta cursi.

9.Guía de uso del color en el diseño de GUIs. Recomendaciones:

1.- Usar un máximo de cinco, más menos dos colores.
Cuatro colores distintos son apropiados. Permite mayor sitio adicional en la memoria a corto plazo (memoria de trabajo). Los ordenadores pueden proporcionar alrededor de 16 millones de colores, pero los humanos sólo pueden discriminar entre 7,5 millones de colores.

2.- Usar colores centrales y periféricos de forma apropiada.
Usar el color azul para áreas grandes, no para detalles o texto. El azul es apropiado para fondos de transparencias y pantallas. Usar el rojo y el verde para captar la atención es una buena medida, el campo visual se adapta fácilmente a esto.

3.- Usar el mismo color para agrupar elementos relacionados.
La ciencia cognitiva ha avanzado en la noción de preparar y el proceso preatento. En este contexto, puedes preparar al usuario para eventos relacionados usando un código de color común. Un grupo de imágenes sucesivas puede mostrarse para relacionarse usando el mismo color. Colores similares pueden evocar significados similares. Es preciso mantener el color de fondo a no ser que exista una poderosa razón, por el mismo motivo.

4.- Usar un código de formas redundante de la misma manera que el color
Hace la pantalla más impermeable a distorsiones en el color. Los cambios en la claridad del ambiente pueden provocar cambios en el color percibido.

5.- Evitar azul para el texto, líneas finas, y formas pequeñas.
Nuestro sistema visual no está únicamente diseñado para estímulos detallados y precisos en longitudes de onda corta. Sin embargo, el azul es muy aconsejable para el color de fondo, y se percibe de manera idónea en la periferia del campo visual.

6.- Evitar que los colores adyacentes difieran únicamente en la cantidad de azul.
Los límites que difieran únicamente en la cantidad de azul se percibirán distintos.

7.- Evitar el rojo y el verde en la periferia de pantallas de gran escala
Debido a la insensibilidad de la periferia retinal al rojo y al verde, estos colores deben
ser evitados en la periferia en su forma saturada. El amarillo y el azul son buenos
colores periféricos.

Acá dejare una reseña donde se explica a detalle cada uno de los conceptos
anteriormente mencionados:


Acá un video que nos señala como mejorar en el diseño de nuestras interfaces:

Los controles estándar

¿Qué son los controles estándar y como se utilizan?

Realmente son objetos que disponen de sus propias propiedades y métodos, y cuya utilidad es la de facilitarnos el desarrollo de nuestras aplicaciones. Bueno, este intento de definición puede haber quedado bien, pero para que lo tengamos más claro, tener en cuenta que en cualquier aplicación con la que trabajamos estamos rodeados de controles. Quien no ha visto en multitud de programas los botones ACEPTAR y CANCELAR, un cuadro para introducir texto, una lista con datos, etc. Pues todos ellos son controles y no tendremos que preocuparnos por crearlos para nuestras aplicaciones, sino que ya vienen con el paquete de VB, lo único que tendremos que hacer es modificar sus propiedades: tamaño, color, etc. para incorporarlos en nuestras aplicaciones y asociarles el código necesario para que se comporten como esperamos al ejecutar la aplicación.

¿Qué son las propiedades dentro de los controles estándar?

Todos los controles disponen de una serie de propiedades las cuales podemos cambiar al incluirlos en nuestras aplicaciones. Ejemplos de propiedades son el color, el tipo de letra, el nombre, el texto, etc…

¿Qué son los Métodos dentro de los controles estándar?

Son procedimientos asociados a los controles, es decir, rutinas ya establecidas que podemos invocar desde nuestras aplicaciones para que se realice alguna operación sobre el control. Por ejemplo, el control List View (la lista de archivos que aparece en el explorador de Windows) dispone del método order que te ordena los datos aparecidos en la lista.

 ¿Qué son los eventos dentro de los controles estándar?

Son acciones que pueden ser motivadas por el propio usuario o por mismo sistema operativo. Ejemplos pueden ser el movimiento del ratón o hacer click sobre su botón. En Visual Basic digamos que se utiliza la programación orientada a eventos, lo cual es una de las diferencias más importantes respecto a la programación lineal de MS DOS. No necesitamos detectar cuando se ha producido un evento determinado, Windows lo detecta automáticamente. Los eventos ya están definidos, son bastantes y cada control cuenta con los suyos propios, aunque son muy parecidos. Lo único que tendremos que hacer es asociar el código necesario al evento que necesitemos tratar.

Acá dejare una reseña donde se explica a detalle cada uno de los conceptos anteriormente mencionados:

Así como también un video que nos habla acerca de los controles estándar:

Fundamentos de la Programación Orientada A Objetos

-> Conceptos Básicos:

Existen cuatro conceptos fundamentales dentro de la Programación Orientada a Objetos que se relacionan entre sí y que nos permitirán tener las riendas de nuestro código:

1.- Abstracción: proceso mental de extracción de las características esenciales de algo, ignorando los detalles superfluos.

2.-Encapsulación: proceso por el que se ocultan los detalles del soporte de las características esenciales de una abstracción.

3.-Modularización: proceso de descomposición de un sistema en un conjunto de módulos o piezas independientes y cohesivos (con significado propio). Lo adecuado es conseguir los mínimos acoplamientos.

4.-Jerarquización: proceso de estructuración por el que se produce una organización (jerarquía) de un conjunto de elementos en grados o niveles de responsabilidad, incumbencia o composición entre otros.

Si entiendes esos cuatro conceptos entenderás el porqué de la programación orientada a objetos y, consecuentemente, serás un mejor programador. Obviamente, en el vídeo Luis los explica mucho mejor, con ejemplos interesantes para ser capaces de entenderlo perfectamente. Además, lo hace de una manera muy divertida, como comprobarás y nos anima a todos a tomarnos en serio nuestra profesión.

->Estructuras de control selectivas:
Con este tipo de secuencia se toman decisiones lógicas. Con éstas se evalúa una condición y en función del resultado de la misma se realiza una opción u otra.  La condición puede resultar verdadera o falsa, así es como se decide si la condición se ejecuta o no.
Las condiciones se especifican utilizando expresiones lógicas y relacionales.
Existen tres tipos de estructuras de selección.

1.-Simple
Se ejecuta una acción si la condición es verdadera, si la condición es falsa pasa por alto la condición. Se utiliza la estructura if (condición) en este tipo de secuencia.

 2.-Bicondicional
La ejecución de la acción de esta secuencia depende del valor de esta. La acción de diferente en cada valor. Se utiliza la estructura if (condicion) else en este tipo de secuencia.

3.-Condición múltiple
Depende del valor de una expresión la acción que se ejecutará, pero en esta secuencia se decidirá entre diferentes acciones. Se utiliza la estructura switch (expresion) en esta secuencia.

->Estructuras de Control repetitivas:
Repiten una secuencia de instrucciones un número determinado de veces, en tanto cierta condición se mantenga verdadera.

Esta secuencia proporciona 3 tipos de estructuras repetitivas:

- While: Permite que se repita cierta acción en cuanto la condición evaluada sea verdadera y en el momento en que la condición sea falsa saldrá del ciclo y continuara con la siguiente instrucción.

- For:   La estructura de repetición ‘for’ maneja de manera automática todos los detalles de la repetición controlada por contador.       

-Do while: El funcionamiento de la estructura es similar a while, la diferencia es que la condición se evalúa al final de la estructura.

Así que en esta estructura se ejecuta por lo menor una sola vez la(s) sentencia(s).

NOTA: En las estructuras selectivas y en las estructuras repetitivas se utilizan expresiones lógicas y relacionales.

Acá esta un link que complementa la información:

Así como un video donde habla un poco más acerca de la POO y sus principios y fundamentos: