{"id":5206,"date":"2025-12-18T11:58:23","date_gmt":"2025-12-18T10:58:23","guid":{"rendered":"https:\/\/sutilweb.eu\/?page_id=5206"},"modified":"2025-12-18T11:58:23","modified_gmt":"2025-12-18T10:58:23","slug":"20-programacion-orientada-a-objetos-poo","status":"publish","type":"page","link":"https:\/\/sutilweb.eu\/index.php\/lenguajes\/php\/php-practico\/20-programacion-orientada-a-objetos-poo\/","title":{"rendered":"20. Programaci\u00f3n orientada a objetos (POO)"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Paradigmas de programaci\u00f3n<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Cuando hablamos de programaci\u00f3n, hablamos de resolver un determinado problema utilizando el gran poder de procesamiento que tienen las computadoras, pero al igual que en la vida real, un problema puede ser resuelto de diversas maneras.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">En programaci\u00f3n, la forma en la que planteamos resolver un problema se le conoce como&nbsp;<strong>paradigma<\/strong>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Paradigma procedural<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Hasta este cap\u00edtulo, lo que hemos visto es el&nbsp;<strong>paradigma procedural<\/strong>, que consiste en ejecutar una sentencia tras otra de manera ininterrumpida, la cual se va a ir ejecutando de arriba hacia abajo. Este tipo de paradigma funciona muy bien cuando estamos trabajando con programas muy peque\u00f1os, pero cuando los programas comienzan a ser grandes van a dar muchas dificultades.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">POO<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Para solucionar las dificultades que vienen del paradigma procedural se cre\u00f3 lo que se conoce como&nbsp;<strong>programaci\u00f3n orientada a objetos<\/strong>, este paradigma nos indica que deber\u00edamos dejar de pensar en <strong>funciones<\/strong> y empezar a pensar en objetos, como son los objetos de la vida real. Por ejemplo, dos veh\u00edculos son dos objetos parecidos pero presentan distintas propiedades (color, n\u00famero de puertas, tipo de cristal&#8230;) y distintos m\u00e9todos (tipo de frenado, tipo de aceleraci\u00f3n&#8230;). De manera que cualquier cambio que hagamos en un objeto no tiene porque repercutir en el otro.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Este paradigma plantea que debemos abstraer nuestro c\u00f3digo y tratarlo como si fueran objetos de la vida real. En conclusi\u00f3n nos plantea que cambiemos la forma que tenemos de pensar y siempre tratemos de imaginar nuestro c\u00f3digo como un objeto, por ejm, si necesitamos almacenar la informaci\u00f3n de un usuario pensemos en el usuario como un objeto que tiene una serie de propiedades (nombre, edad, direcci\u00f3n) y m\u00e9todos (iniciar sesi\u00f3n, logearse&#8230;), y dichas propiedades y m\u00e9todos son intr\u00ednsecos a ese objeto.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Clases<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Los objetos se crean a partir de clases, las cuales vienen a ser como una especie de plantilla que va a determinar que un objeto va a tener cierta cantidad de atributos o propiedades y va a tener cierta cantidad de m\u00e9todos.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Algunas propiedades podr\u00edan ser:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Nombre<\/li>\n\n\n\n<li>Apellidos<\/li>\n\n\n\n<li>Correo<\/li>\n\n\n\n<li>Contrase\u00f1a<\/li>\n\n\n\n<li>Premium<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Algunos m\u00e9todos podr\u00edan ser:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Editar perfil<\/li>\n\n\n\n<li>Iniciar sesi\u00f3n<\/li>\n\n\n\n<li>Cerrar sesi\u00f3n<\/li>\n\n\n\n<li>Cambiar de contrase\u00f1a<\/li>\n\n\n\n<li>Pasar a Premium<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">Nosotros crearemos los objetos a partir de esta plantilla, vamos a crear una especie de copia de la clase. Una vez se crea ese objeto se dice que se&nbsp;<strong>ha instanciado una clase<\/strong>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Paradigmas de programaci\u00f3n Cuando hablamos de programaci\u00f3n, hablamos de resolver un determinado problema utilizando el gran poder de procesamiento que tienen las computadoras, pero al igual que en la vida real, un problema puede ser resuelto de diversas maneras. En programaci\u00f3n, la forma en la que planteamos resolver un problema se le conoce como&nbsp;paradigma. Paradigma [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":4518,"menu_order":19,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_uag_custom_page_level_css":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-5206","page","type-page","status-publish","hentry"],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false},"uagb_author_info":{"display_name":"Sutil Web","author_link":"https:\/\/sutilweb.eu\/index.php\/author\/sutilweb\/"},"uagb_comment_info":0,"uagb_excerpt":"Paradigmas de programaci\u00f3n Cuando hablamos de programaci\u00f3n, hablamos de resolver un determinado problema utilizando el gran poder de procesamiento que tienen las computadoras, pero al igual que en la vida real, un problema puede ser resuelto de diversas maneras. En programaci\u00f3n, la forma en la que planteamos resolver un problema se le conoce como&nbsp;paradigma. Paradigma&hellip;","_links":{"self":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/5206","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/comments?post=5206"}],"version-history":[{"count":2,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/5206\/revisions"}],"predecessor-version":[{"id":5208,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/5206\/revisions\/5208"}],"up":[{"embeddable":true,"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/pages\/4518"}],"wp:attachment":[{"href":"https:\/\/sutilweb.eu\/index.php\/wp-json\/wp\/v2\/media?parent=5206"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}