Bienvenido al Curso

1

Introducción al curso básico de algoritmos y estructuras de datos

Introducción a los algoritmos

2

¿Qué entiende una computadora?

3

Lenguajes de programación

4

Estructuras de datos

5

¿Qué es un algoritmo?

6

Metodología para la construcción de un algoritmo

7

Variables y tipos de datos

8

User defined data types

9

Instalando Ubuntu Bash en Windows

10

Creando nuestro user defined data type

11

Abstract Data Types básicos: Lists, Stacks, Queues

12

Explicación gráfica Data Types básicos

13

Glosario de funciones para Abstract Data Types

14

Clases y objetos

15

Creando tu primera Queue: Arrays

16

Creando tu primera Queue: implementación.

17

Creando tu primera Queue: implementar la función enQueue

18

Creando tu primera Queue: implementar la función deQueue

19

Creando tu primera Queue: main code

Algoritmos de ordenamiento

20

Algoritmos de ordenamiento

21

Bubble sort

22

Bubble sort: implementación

23

Bubble sort: main code

24

Insertion sort

25

Desafío: implementa un algoritmo de ordenamiento

Recursividad

26

Recursividad

27

La función Factorial, calculando el factorial recursivamente

28

Manejo de cadenas de caracteres

29

Arte: Generando arte recursivo

Divide and conquer y programación dinámica

30

Divide and Conquer (divide y vencerás)

31

Qué es la programación dinámica (divide y vencerás v2.0)

32

MergeSort

33

Desafío: Buscar el algortimo más rápido de sort

34

Implementando QuickSort con Python

35

Implementando QuickSort con Python: main code

Algoritmos 'Greedy'

36

Qué son los Greedy Algorithm

37

Ejercicio de programación greedy

38

Ejercio de programación greedy: main code

Grafos y árboles

39

Grafos y sus aplicaciones

40

Árboles

¿Cómo comparar Algoritmos?

41

Cómo comparar algoritmos y ritmo de crecimiento

¿Qué sigue?

42

Cierre del curso y siguientes pasos

No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Aprovecha el precio especial.

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

13 Días
18 Hrs
35 Min
59 Seg

Clases y objetos

14/42
Recursos

Aportes 75

Preguntas 3

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

CLASES Y OBJETOS
Con la programación orientada a objetos podemos hacer una abstracción de cualquier cosa que queramos crear, por ejemplo, un vídeo juego de fútbol, y esta se llamara CLASE la cual se compone de dos cosas: ATRIBUTOS Y MÉTODOS.
ATRIBUTOS: son todas las propiedades que corresponden al jugador
MÉTODOS: son todas las acciones que tiene que hacer el jugador
QUE ES UN OBJETO: es la base de la programación orientada a objetos, los objetos son las instancias de la clase, eso quiere decir que la clase será el molde del objeto, o sea que con la clase que es el molde del jugador, podemos crear muchos jugadores diferentes.
HERENCIA: esto nos ayudara a crear nuevas clases a partir de otra clase, las clases pueden tener características parecidas entre sí.
ENCAPSULAMIENTO: puede significar esconder algo, por ejemplo, si en el vídeo juego queremos esconder la velocidad con la que corre un jugador para que los otros jugadores no puedan verla.
POLIMORFISMO: significa muchas formas. También es una base importante de la programación y lista de objetos, por ejemplo, el entrenador puede enviarle un msj a un jugador y este saldría al campo a jugar y a realizar lo que entendió del mensaje

Programación Orientada a Objetos
- Atributos: Variables
- Métodos: Funciones de una clase

Objeto: Instancia de una clase
Clase: Molde de un objeto

Herencia: Crear otra clase a partir de otra
Encapsulación: Esconder algo (variables privadas o protegidas)
Polimorfismo: Una clase puede tomar muchas formas

El curso de POO que hace la profe Anahí es de verdad pero bueniiiiiisimo, usa 4 lenguajes distintos y usa para explicar todo a Uber, de verdad muy muy recomendado.

Hace tiempo hice un tutorial sobre POO, explicando paso a paso lo pueden encontrar aqui:
https://platzi.com/tutoriales/1545-c-plus-plus/6352-que-es-la-programacion-orientada-objetos-como-entenderla-sin-morir-en-el-intento/

Class: Son abstracciones de codigo complejas, que se utilizan para definir o crear objetos, lo que quiere decir que una clase es basicamente un model donde, tendran dos caracteristicas en programacion las cuales son:


  • Atributos: Seran las caracteristicas del objeto, como por ejemplo puede ser un atributo el color de cabello de una persona, su nombre, edad, peso.

  • Metodos: Los metodos seran las acciones que este objeto puede realizar como por ejemplo, pensar, caminar, escribir, reir.


Objeto: Un objeto en programacion lo podemos definir como en la vida real por ejemplo nuestro telefono es un objeto que tiene atributos, los cuales son su marca, color, tamaño, etc etc, y sus metodos son, llamar, acceso a internet, camara, etc etc…


Resumen: Entonces teniendo una clase de telefonos, podemos crear distintos telefonos que queramos, pero sus atributos y metodos pueden actuar de formas distintas para de esta manera diferenciarlos, como por ejemplo una marca de telefono con otra.


Herencia: Es cuando creamos nuevas clases apartir de otras, como por ejemplo tenemos una clase para crear magos, ahora podemos agarrar esa misma clase y crear otra apartir de esta para crear priest, con esto vamos a tener los mismos atributos y metodos y obviamente pasamos a editarlos para hacer referencia a los priest pero lo importante es que con esto estaremos haciendo herencia entre las clases.


Encapsulamiento: Es un paradigma de la programacion donde ocultamos parametros que no queremos mostrarle a otras personas como por ejemplo, pueden ser stats ocultos de nuestro personaje o puede ser la velocidad de movimiento que tiene cada personaje cuanto puede correr entre otras cosas.


Polimorfismo: Significa trabajar con las mismas clases creadas anteriormente de las herencias pero esta vez cambiarle las acciones, puede ser por ejemplo crear una clasa mago y de ella hacer una herencia para crear una clase mago de fuego, en ella vamos a modificar los metodos haciendo sobre-escritura de metodo mejor conocido como polimorfismo.

Ann es capaz de resumir un semestro en 3 minutos 😮

Polimorfismo: Significa trabajar con las mismas clases creadas anteriormente de las herencias pero esta vez cambiarle las acciones, puede ser por ejemplo crear una clasa mago y de ella hacer una herencia para crear una clase mago de fuego, en ella vamos a modificar los metodos haciendo sobre-escritura de metodo mejor conocido como polimorfismo.

La explicación de @anncode de clases y objetos, nos dejan ganas de aprender todos los lenguajes de programación. y tu cuantos lenguajes de programación haz aprendido?

explicación corta y muy bien explicada el ejemplo ayuda a entener

vamos con toda… me encanta anai

Genial… Que buena explicación!

excelente ilustración para definir el concepto de la poo.

este tipo de explicación realmente ayuda a unificar conceptos y entender la forma de aplicarlos.

me gusta mucho como explica anahi, es muy facil entenderle.

una fomra muy facil de entender clases

Me enamoré 😃

super claro en pocos segundos

Genial!
Retomé varios conceptos.

Clases como estas son muy fáciles de entender. Muchas Gracias.

siento que entiendo pero , aun no practico , comopodria practicar y aprender al mismo tiempo si entender mucho ayuda . algun juego , ejercicio , video , algo ?

Nunca mejor explicado

Esto explica porque los programadores aman los RPGs como WoW o LoL. Todo se trata de clases con atributos que los definen.

No se sabe mucho pero la POO es una aplicacion practica del ALGEBRA LINEAL, lo mismo que hacemos al programar clases y objetos, etc, se hace en matematicas

Una explicación fantástica de POO. Muy ilustrativo.

Buen repaso del curso. Ese curso era para Java, medio se tocan otros lenguajes.

Muy buena síntesis, me gustó la explicación.

  1. Mis apuntes sobre: "Clases y objetos"
    En POO se usan Clases, se compondrá con:
    atributos: propiedades
    métodos: acciones

Objetos: Serán las instancias de la clase.
Herencia: Se crean nuevas clases a partir de otras.
Encapsulamiento: Esconder algo.
Polimorfismo: Muchas formas.

Hace tiempo redacte un artículo sobre POO (Programación Orientada a objetos), la explicación la intento realizar con pokemones, les comparto el link, espero les sea de utilidad

De POO a SOLID explicado con Pokémon

php = etc

Tremenda clase en solo 3 minutos! más clara no podría ser.

  • Las clases de componen de atributos o propiedades y métodos o acciones.
  • Un objeto es la instancia de una clase. La clase es como el molde de un objeto.
  • La herencia nos permite crear nuevas clases a partir de otras.
  • Encapsulamiento, esconder un propiedad de una clase.
  • Polimorfismo es que un método puede ser ejecutado muchas formas dependiendo de la clase.

Chale, me enamore de la profe xd

Me encanto su manera de explicar, lo hace muy didactco. Lo vere al finalizar este xD

Me gusto mucho la forma en que explica el encapsulamiento, creo que ya se que ejemplo dar cuando me pregunten por cosas de POO.

Saludos

Excelente explicación de clases y objetos.

Like

Excelente vídeo, es más fácil comprenderlo con animaciones!

esta genial este video

Buenos conceptos para el curso, excelente.😄

Excelentísimo video

Resume muy bien la idea general de POO

Me encantó el video. Muy grata referencia.

Muy bien resumido.

Muy buena referencia de la Programación Orientada a Objectos. Se agradece la información Extra

Excelente explicación!

Que buen explicación de estos conceptos que a veces nos resultan tan difíciles de entender

Buen video

zaz

Siempre es gratificante ver a Anahí explicando :3

Cuando se realiza la explicacion de esta forma es mucho mas clara entender este tema

Excelente explicación ♥ Motivacional.

explico to muy bien, pero igual es recomendable seguir investigando

XD

que explicación tan dinámica y explicita

Vaya que explicación más corta y concisa

Un video super claro y divertido!! @anncode has mejorado increible tu forma de enseñar! FELICIDADES!

me gusta que pongan otras dinamicas eso hacia en la universidad jajaja.

Muy bien explicado

Excelente …!

Siempre repito este vídeo para explicar en términos simples la programación orientada a objetos a mis amigos

Qué buena maestra ! Ojalá hiciera muchos más cursos.

que buen video!!!, muy ilustrativo

Dan ganas de no parar de aprender y sobre todo lo relacionado a tecnología y programación… A comernos el mundo latinos!!!

Muy buena introducción al tema

Vi en la sección de preguntas que hay algunas dudas con el polimorfismo asi que quiera compartirles este concepto Bien partamos de esta imagen, desconozco que tanto conocimiento de C tendrán pero si vienes de un lenguaje tipado sera un poco mas fácil de asimilar
![](
En C un puntero char (const char * o char []) es un string es decir contiene letras, pero que son exactamente estas letras, bueno resulta que son números por ejemplo el 97 es ‘a’, sabiendo esto el contenedor que es un (const char * o string) toma estos valores y los interpreta como esta definido su contenedor osea caracteres o letras. Bien asta qui todo claro ¿verdad? ok que pasa si les digo que el numero 1634496360 es lo mismo que decir “hola” me dirán “como eso no es posible usted esta loco no me quiera engañar” y en esencia es verdad 1634496360 es un numero entero (int) y “hola” es un string(const char * o char []) y sus tipos de datos son incompatibles pero resulta que estos datos parten de una base y esa base es el binario es decir (ceros y unos) y el numero binario de 1634496360 es exactamente igual al numero binario en “hola”
![](
En la primera imagen el char arreglo[] puede funcionar como un int o un float, es decir int toma los datos del char arreglo[] y lo interpreta como un int y el proceso es igual con el float. Entonces ¿que es el polimorfismo?
Es la interpretación de datos provenientes de la misma base. Como ultimo ejemplo para dejar claro el concepto ,Tenemos la clase armazón y esta clase contiene un motor y llantas ok, y tenemos las clases moto, carro y tractor bien, bien estas heredan de armazon por que ya saben una moto un carro y un tractor tienen llantas y motor, bien tu puedes hacer tres objetos armazon y convertirlos en una moto en un carro o un tractor ya que estas parte de la misma base, se preguntaran para que sirve esto. En el mundo real manejar muchos objetos puede ser bastante complicado para lo cual tener un solo objeto y convertirlo de acuerdo a nuestras necesidades resulta muy conveniente si tuviéramos un juego donde una humana se transforma a una hechicera y conforme avanza el juego esa hechicera ahora se convierte en una elfa y digamos que elfa y hechicera son tipos de datos incompatibles como haríamos esos cambio pues la respuesta es con polimorfismo, lo que haríamos seria partir de la clase hechicera retroceder a la clase base en este caso humana y de ahi la convertimos a elfa con la ventaja de que conservamos los datos que tenia como humana. Y en escancia eso es el polimorfismo espero les sirva ;D

Imagina que tenemos un videojuego de futbol en el que tenemos que representar a los jugadores de cada equipo, con la POO podemos hacer una abstracción de todo esto, la abstracción se llamara Clase y se compondrá de
Atributos, serán todas las propiedades que corresponderán al jugador
Métodos, todas las acciones que tendrá que hacer ese jugador
Un Objeto es la base de la POO, serán las instancias de la clase, eso quiere decir que la Clase será el molde de nuestro objeto, con las clases podemos crear tantos jugadores como nosotros queramos, cada jugador podrá tener diferentes características.
Hay un concepto muy importante también y es la Herencia, nos ayudara a crear nuevas clases a partir de otras, por ejemplo, necesitaremos crear un Árbitro y un portero.
El encapsulamiento puede significar esconder algo, en nuestro videojuego podemos esconder la velocidad a la que corre alguno de nuestros jugadores
Polimorfismo significa muchas formas, el entrenador podría darle información importante a cada jugador, y cada jugador ejecutara la información interpretada.

POO
Objeto(casa): Instancias(direccion) de la clase
Clase(planos): Abstracción de lo tangible, molde del objeto.
Tiene atributos(propiedades cualitativas) & métodos(acciones)
Herencia: Crea nuevas clases a partir de otras.
Encapsulamiento: Esconder algo.
Polimorfismo: Muchas formas

Genial!!! gracias!!

Muy buena explicación 😄

Me gusta mucho como explica ella 😄

excelente analogia

Una clase es el molde que usaremos para crear tus objetos. Las clases tienen atributos(características) y métodos (acciones).
Para que queden mas claros estos conceptos imaginemos que creamos la clase jugador, a partir de esa clase podríamos crear el objeto Messi.

Espero que les haya servido😁

Ann definitivamente es una de las mejores en Platzi, su capacidad de síntesis y de explicar conceptos muy muy complejos es impresionante.