{"id":8192,"date":"2022-01-26T01:28:58","date_gmt":"2022-01-26T01:28:58","guid":{"rendered":"https:\/\/www.cybermedian.com\/es\/?p=8192"},"modified":"2026-04-20T09:13:21","modified_gmt":"2026-04-20T09:13:21","slug":"que-es-el-principio-abierto-cerrado-ocp","status":"publish","type":"post","link":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/","title":{"rendered":"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)?"},"content":{"rendered":"<div class=\"entry-content clearfix\">\n<section class=\"section section--body section--first\">\n<div class=\"section-content\">\n<div class=\"section-inner sectionLayout--insetColumn\">\n<p id=\"05f0\" class=\"graf graf--p graf-after--h3\">El\u00a0\u00a0<a class=\"markup--anchor markup--p-anchor\" href=\"https:\/\/en.wikipedia.org\/wiki\/Open%E2%80%93closed_principle#:~:text=In%20object%2Doriented%20programming%2C%20the,without%20modifying%20its%20source%20code.\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/en.wikipedia.org\/wiki\/Open%E2%80%93closed_principle#:~:text=In%20object%2Doriented%20programming%2C%20the,without%20modifying%20its%20source%20code.\">Principio Abierto\/Cerrado<\/a>\u00a0\u00a0es el principio de dise\u00f1o m\u00e1s b\u00e1sico en el mundo del desarrollo de software.\u00a0Nos gu\u00eda sobre c\u00f3mo construir un sistema estable y flexible.<\/p>\n<h4 id=\"ef13\" class=\"graf graf--h4 graf-after--p\"><span id=\"Definition\"><strong class=\"markup--strong markup--h4-strong\">Definici\u00f3n:<\/strong><\/span><\/h4>\n<blockquote id=\"bc88\" class=\"graf graf--blockquote graf-after--h4\"><p>Una entidad de software, como clase, m\u00f3dulo y funci\u00f3n, debe estar abierta para la extensi\u00f3n y cerrada para la modificaci\u00f3n.<\/p><\/blockquote>\n<p id=\"8516\" class=\"graf graf--p graf-after--blockquote\">El significado del principio de apertura y cierre es que una entidad de software debe expandirse para lograr el cambio, en lugar de modificar el c\u00f3digo existente para lograr el cambio.<\/p>\n<p id=\"aad3\" class=\"graf graf--p graf-after--p\">El principio de apertura y cierre es un principio que restringe el desarrollo y dise\u00f1o actual para las cosas futuras de la entidad de software.<\/p>\n<p id=\"3cf8\" class=\"graf graf--p graf-after--p\">Nota: El principio de apertura y cierre est\u00e1 abierto para extensi\u00f3n y cerrado para modificaci\u00f3n.\u00a0No significa que no se har\u00e1 ninguna modificaci\u00f3n.\u00a0Los cambios en los m\u00f3dulos de bajo nivel deben combinarse con m\u00f3dulos de alto nivel, de lo contrario, ser\u00e1 un fragmento de c\u00f3digo aislado y sin sentido.<\/p>\n<p id=\"adad\" class=\"graf graf--p graf-after--p\"><strong class=\"markup--strong markup--p-strong\">La importancia del principio de apertura y cierre:<\/strong><\/p>\n<ul class=\"postList\">\n<li id=\"4231\" class=\"graf graf--li graf-after--p\">El impacto de los principios de apertura y cierre en las pruebas<\/li>\n<\/ul>\n<p id=\"dd2a\" class=\"graf graf--p graf-after--li\">El principio de abrir y cerrar es mantener el c\u00f3digo de prueba original a\u00fan capaz de ejecutarse normalmente, solo necesitamos probar el c\u00f3digo extendido.<\/p>\n<ul class=\"postList\">\n<li id=\"e807\" class=\"graf graf--li graf-after--p\">El principio de apertura y cierre puede mejorar la reutilizaci\u00f3n.<\/li>\n<\/ul>\n<p id=\"1236\" class=\"graf graf--p graf-after--li\">En\u00a0\u00a0<a class=\"markup--anchor markup--p-anchor\" href=\"https:\/\/www.techopedia.com\/definition\/21105\/object-oriented-design-ood#:~:text=Object%2Doriented%20design%20%28OOD%29%20is%20the%20process%20of%20using,%28OOP%29%20process%20or%20lifecycle.\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.techopedia.com\/definition\/21105\/object-oriented-design-ood#:~:text=Object%2Doriented%20design%20(OOD)%20is%20the%20process%20of%20using,(OOP)%20process%20or%20lifecycle.\">el dise\u00f1o orientado a objetos<\/a>\u00a0, toda la l\u00f3gica se combina a partir de la l\u00f3gica at\u00f3mica, en lugar de implementar una l\u00f3gica empresarial en una clase de forma independiente.\u00a0Solo de esta manera se puede reutilizar el c\u00f3digo.\u00a0Cuanto menor sea la granularidad, mayor ser\u00e1 la posibilidad de ser reutilizado.<\/p>\n<ul class=\"postList\">\n<li id=\"4999\" class=\"graf graf--li graf-after--p\">El principio abierto y cerrado puede mejorar la mantenibilidad<\/li>\n<li id=\"0c21\" class=\"graf graf--li graf-after--li\">Requisitos de desarrollo orientado a objetos<\/li>\n<\/ul>\n<p id=\"6c46\" class=\"graf graf--p graf-after--li\"><strong class=\"markup--strong markup--p-strong\">C\u00f3mo utilizar el principio de apertura y cierre:<\/strong><\/p>\n<p id=\"3568\" class=\"graf graf--p graf-after--p\"><strong class=\"markup--strong markup--p-strong\">Primero<\/strong>\u00a0, restrinja la extensi\u00f3n a trav\u00e9s de la interfaz o clase abstracta, limite la extensi\u00f3n del l\u00edmite y no permita m\u00e9todos p\u00fablicos que no existen en la interfaz o clase abstracta;<\/p>\n<p id=\"8d58\" class=\"graf graf--p graf-after--p\"><strong class=\"markup--strong markup--p-strong\">En segundo lugar<\/strong>\u00a0, intente utilizar interfaces o clases abstractas para tipos de par\u00e1metros y objetos de referencia en lugar de clases de implementaci\u00f3n;<\/p>\n<p id=\"c031\" class=\"graf graf--p graf-after--p\"><strong class=\"markup--strong markup--p-strong\">Tercero<\/strong>\u00a0, la capa de abstracci\u00f3n debe mantenerse lo m\u00e1s estable posible, una vez que se confirma, no se permite ninguna modificaci\u00f3n.<\/p>\n<p id=\"22c7\" class=\"graf graf--p graf-after--p\">La encapsulaci\u00f3n de cambios tiene dos significados:<\/p>\n<p id=\"cda0\" class=\"graf graf--p graf-after--p\">Primero, encapsule los mismos cambios en una interfaz o clase abstracta;<\/p>\n<p id=\"8a51\" class=\"graf graf--p graf-after--p graf--trailing\">En segundo lugar, encapsule diferentes cambios en diferentes interfaces o clases abstractas.\u00a0Dos cambios diferentes no deben aparecer en la misma interfaz o clase abstracta.<\/p>\n<\/div>\n<\/div>\n<\/section>\n<section class=\"section section--body section--last\">\n<div class=\"section-divider\">\n<hr class=\"section-divider\" \/>\n<\/div>\n<div class=\"section-content\">\n<div class=\"section-inner sectionLayout--insetColumn\">\n<h4 id=\"69e6\" class=\"graf graf--h4 graf--leading\"><span id=\"Examples\">Ejemplos<\/span><\/h4>\n<p id=\"56bf\" class=\"graf graf--p graf-after--h4\">Un ejemplo, abrir y cerrar puertas a mano.<\/p>\n<figure id=\"d3f2\" class=\"graf graf--figure graf-after--p\"><img decoding=\"async\" class=\"graf-image\" src=\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/0wlXaJtn3Bexx9ev7.png\" data-image-id=\"0*wlXaJtn3Bexx9ev7.png\" data-width=\"453\" data-height=\"148\" \/><\/figure>\n<p id=\"c2c2\" class=\"graf graf--p graf-after--figure\">Si hay una nueva demanda, es necesario aumentar la funci\u00f3n de abrir y cerrar el caj\u00f3n a mano.\u00a0Para el c\u00f3digo, debe agregar una clase Caj\u00f3n y modificar la clase Mano al mismo tiempo.<\/p>\n<figure id=\"1d14\" class=\"graf graf--figure graf-after--p\"><img decoding=\"async\" class=\"graf-image\" src=\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/1QXaFJLucsecnatWUuuuH6Q.png\" data-image-id=\"1*QXaFJLucsecnatWUuuuH6Q.png\" data-width=\"781\" data-height=\"500\" data-is-featured=\"true\" \/><\/figure>\n<p id=\"ce83\" class=\"graf graf--p graf-after--figure\">Siguiendo el ejemplo del principio de apertura y cierre de OCP, abrir y cerrar la puerta a mano depende de una interfaz, y la clase de implementaci\u00f3n espec\u00edfica implementa esta interfaz.<\/p>\n<figure id=\"28a1\" class=\"graf graf--figure graf-after--p\"><img decoding=\"async\" class=\"graf-image\" src=\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/1NVWYY0ZYvgMJbnENhw1QKw.png\" data-image-id=\"1*NVWYY0ZYvgMJbnENhw1QKw.png\" data-width=\"800\" data-height=\"461\" \/><\/figure>\n<p id=\"2372\" class=\"graf graf--p graf-after--figure\">Cuando es necesario aumentar la cantidad de manos para abrir y cerrar el refrigerador, la clase de refrigerador implementa esta interfaz sin modificar la interfaz y la clase Hand original.<\/p>\n<figure id=\"6688\" class=\"graf graf--figure graf-after--p\"><img decoding=\"async\" class=\"graf-image\" src=\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/1iR6WQOaVLjFUMy1056vL-w.png\" data-image-id=\"1*iR6WQOaVLjFUMy1056vL-w.png\" data-width=\"946\" data-height=\"464\" \/><\/figure>\n<h4 id=\"246b\" class=\"graf graf--h4 graf-after--figure\"><span id=\"More_Object_Oriented_Resources\">M\u00e1s recursos orientados a objetos<\/span><\/h4>\n<ul class=\"postList\">\n<li id=\"3002\" class=\"graf graf--li graf-after--h4\"><a class=\"markup--anchor markup--li-anchor\" href=\"https:\/\/reflectoring.io\/open-closed-principle-explained\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/reflectoring.io\/open-closed-principle-explained\/\">Explicaci\u00f3n del principio abierto-cerrado<\/a><\/li>\n<li id=\"be77\" class=\"graf graf--li graf-after--li\"><a class=\"markup--anchor markup--li-anchor\" href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/uml-class-diagram-tutorial\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/uml-class-diagram-tutorial\/\">Tutorial de diagrama de clase UML<\/a><\/li>\n<li id=\"d80e\" class=\"graf graf--li graf-after--li\"><a class=\"markup--anchor markup--li-anchor\" href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-class-diagram\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.visual-paradigm.com\/guide\/uml-unified-modeling-language\/what-is-class-diagram\/\">\u00bfQu\u00e9 es el diagrama de clases?<\/a><\/li>\n<li id=\"f4cf\" class=\"graf graf--li graf-after--li\"><a class=\"markup--anchor markup--li-anchor\" href=\"https:\/\/online.visual-paradigm.com\/diagrams\/solutions\/free-class-diagram-tool\/\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/online.visual-paradigm.com\/diagrams\/solutions\/free-class-diagram-tool\/\">Herramienta gratuita de diagrama de clase<\/a><\/li>\n<li id=\"8e66\" class=\"graf graf--li graf-after--li\"><a class=\"markup--anchor markup--li-anchor\" href=\"http:\/\/online%20class%20diagram%20software\/\" target=\"_blank\" rel=\"noopener\" data-href=\"http:\/\/Online Class Diagram Software\">Software de diagrama de clase en l\u00ednea<\/a><\/li>\n<li id=\"1b39\" class=\"graf graf--li graf-after--li graf--trailing\"><a class=\"markup--anchor markup--li-anchor\" href=\"https:\/\/www.google.com\/search?q=uml+visaul+paradigm&amp;sxsrf=AOaemvJcREGG3huPXRdERD5w15PnUrAxuQ%3A1632104970304&amp;ei=CvJHYYfpEai9mAW8u67YAg&amp;oq=uml+visaul+paradigm&amp;gs_lcp=Cgdnd3Mtd2l6EAMyBwgjELACECcyBAgAEA0yBggAEBYQHjIGCAAQFhAeMgYIABAWEB4yBggAEBYQHjIGCAAQFhAeMgYIABAWEB4yBggAEBYQHjIGCAAQFhAeOgQIABBDOg0ILhCxAxDHARDRAxBDOggIABCABBCxAzoFCAAQsQM6DgguEIAEELEDEMcBEKMCOgsILhCABBCxAxCDAToECCMQJzoFCAAQkQI6BQgAEIAEOgoIABCABBCHAhAUOgYIABANEB5KBAhBGABQ8fYzWJ-YNGCpmzRoAHACeACAAYUBiAHeDJIBBDE2LjOYAQCgAQHAAQE&amp;sclient=gws-wiz&amp;ved=0ahUKEwiHlvbnwIzzAhWoHqYKHbydCysQ4dUDCA4&amp;uact=5\" target=\"_blank\" rel=\"noopener\" data-href=\"https:\/\/www.google.com\/search?q=uml+visaul+paradigm&amp;sxsrf=AOaemvJcREGG3huPXRdERD5w15PnUrAxuQ%3A1632104970304&amp;ei=CvJHYYfpEai9mAW8u67YAg&amp;oq=uml+visaul+paradigm&amp;gs_lcp=Cgdnd3Mtd2l6EAMyBwgjELACECcyBAgAEA0yBggAEBYQHjIGCAAQFhAeMgYIABAWEB4yBggAEBYQHjIGCAAQFhAeMgYIABAWEB4yBggAEBYQHjIGCAAQFhAeOgQIABBDOg0ILhCxAxDHARDRAxBDOggIABCABBCxAzoFCAAQsQM6DgguEIAEELEDEMcBEKMCOgsILhCABBCxAxCDAToECCMQJzoFCAAQkQI6BQgAEIAEOgoIABCABBCHAhAUOgYIABANEB5KBAhBGABQ8fYzWJ-YNGCpmzRoAHACeACAAYUBiAHeDJIBBDE2LjOYAQCgAQHAAQE&amp;sclient=gws-wiz&amp;ved=0ahUKEwiHlvbnwIzzAhWoHqYKHbydCysQ4dUDCA4&amp;uact=5\">\u00bfQu\u00e9 es el lenguaje de modelado unificado (UML)?<\/a><\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/section>\n<\/div>\n<footer class=\"entry-footer\">\n<div class=\"entry-categories clearfix\"><\/div>\n<\/footer>\n","protected":false},"excerpt":{"rendered":"<p>El principio abierto\/cerrado es el principio de dise\u00f1o m\u00e1s b\u00e1sico en el mundo del desarrollo de software. Nos gu\u00eda en la construcci\u00f3n de un sistema estable y flexible. Una entidad de software, como una clase, un m\u00f3dulo o una funci\u00f3n, debe estar abierta para su ampliaci\u00f3n y cerrada para su modificaci\u00f3n.<\/p>\n","protected":false},"author":3,"featured_media":1383,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_yoast_wpseo_title":"","_yoast_wpseo_metadesc":"","footnotes":""},"categories":[2,5],"tags":[],"class_list":["post-8192","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-agile-project-management","category-software-engineering"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.7 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)? - Cibermedio<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\" \/>\n<meta property=\"og:locale\" content=\"es_ES\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)? - Cibermedio\" \/>\n<meta property=\"og:description\" content=\"El principio abierto\/cerrado es el principio de dise\u00f1o m\u00e1s b\u00e1sico en el mundo del desarrollo de software. Nos gu\u00eda en la construcci\u00f3n de un sistema estable y flexible. Una entidad de software, como una clase, un m\u00f3dulo o una funci\u00f3n, debe estar abierta para su ampliaci\u00f3n y cerrada para su modificaci\u00f3n.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\" \/>\n<meta property=\"og:site_name\" content=\"Cibermedio\" \/>\n<meta property=\"article:published_time\" content=\"2022-01-26T01:28:58+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-04-20T09:13:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"vpvera\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"vpvera\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tiempo de lectura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\"},\"author\":{\"name\":\"vpvera\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/54a5a46528997d1917d55add9b0de7d5\"},\"headline\":\"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)?\",\"datePublished\":\"2022-01-26T01:28:58+00:00\",\"dateModified\":\"2026-04-20T09:13:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\"},\"wordCount\":603,\"commentCount\":17,\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg\",\"articleSection\":[\"Agile Project Management\",\"Software Engineering\"],\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\",\"url\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\",\"name\":\"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)? - Cibermedio\",\"isPartOf\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg\",\"datePublished\":\"2022-01-26T01:28:58+00:00\",\"dateModified\":\"2026-04-20T09:13:21+00:00\",\"author\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/54a5a46528997d1917d55add9b0de7d5\"},\"breadcrumb\":{\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#breadcrumb\"},\"inLanguage\":\"es\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage\",\"url\":\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg\",\"contentUrl\":\"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg\",\"width\":900,\"height\":600,\"caption\":\"Open-Close Principle\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.cybermedian.com\/es\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/#website\",\"url\":\"https:\/\/www.cybermedian.com\/es\/\",\"name\":\"Cibermedio\",\"description\":\"Aprendiendo una cosa nueva todos los d\u00edas\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.cybermedian.com\/es\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"es\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/54a5a46528997d1917d55add9b0de7d5\",\"name\":\"vpvera\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"es\",\"@id\":\"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/308f3b229618b77cd1764bf92dc496296ea49a0db7c1c881fa7c4f063b2b58da?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/308f3b229618b77cd1764bf92dc496296ea49a0db7c1c881fa7c4f063b2b58da?s=96&d=mm&r=g\",\"caption\":\"vpvera\"},\"url\":\"https:\/\/www.cybermedian.com\/es\/author\/vpvera\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)? - Cibermedio","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/","og_locale":"es_ES","og_type":"article","og_title":"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)? - Cibermedio","og_description":"El principio abierto\/cerrado es el principio de dise\u00f1o m\u00e1s b\u00e1sico en el mundo del desarrollo de software. Nos gu\u00eda en la construcci\u00f3n de un sistema estable y flexible. Una entidad de software, como una clase, un m\u00f3dulo o una funci\u00f3n, debe estar abierta para su ampliaci\u00f3n y cerrada para su modificaci\u00f3n.","og_url":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/","og_site_name":"Cibermedio","article_published_time":"2022-01-26T01:28:58+00:00","article_modified_time":"2026-04-20T09:13:21+00:00","og_image":[{"width":900,"height":600,"url":"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg","type":"image\/jpeg"}],"author":"vpvera","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"vpvera","Tiempo de lectura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#article","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/"},"author":{"name":"vpvera","@id":"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/54a5a46528997d1917d55add9b0de7d5"},"headline":"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)?","datePublished":"2022-01-26T01:28:58+00:00","dateModified":"2026-04-20T09:13:21+00:00","mainEntityOfPage":{"@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/"},"wordCount":603,"commentCount":17,"image":{"@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg","articleSection":["Agile Project Management","Software Engineering"],"inLanguage":"es","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/","url":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/","name":"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)? - Cibermedio","isPartOf":{"@id":"https:\/\/www.cybermedian.com\/es\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage"},"image":{"@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage"},"thumbnailUrl":"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg","datePublished":"2022-01-26T01:28:58+00:00","dateModified":"2026-04-20T09:13:21+00:00","author":{"@id":"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/54a5a46528997d1917d55add9b0de7d5"},"breadcrumb":{"@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#breadcrumb"},"inLanguage":"es","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/"]}]},{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#primaryimage","url":"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg","contentUrl":"https:\/\/www.cybermedian.com\/es\/wp-content\/uploads\/sites\/8\/2022\/01\/open-closed-principle.jpg","width":900,"height":600,"caption":"Open-Close Principle"},{"@type":"BreadcrumbList","@id":"https:\/\/www.cybermedian.com\/es\/what-is-the-open-closed-principle-ocp\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.cybermedian.com\/es\/"},{"@type":"ListItem","position":2,"name":"\u00bfQu\u00e9 es el principio abierto-cerrado (OCP)?"}]},{"@type":"WebSite","@id":"https:\/\/www.cybermedian.com\/es\/#website","url":"https:\/\/www.cybermedian.com\/es\/","name":"Cibermedio","description":"Aprendiendo una cosa nueva todos los d\u00edas","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.cybermedian.com\/es\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"es"},{"@type":"Person","@id":"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/54a5a46528997d1917d55add9b0de7d5","name":"vpvera","image":{"@type":"ImageObject","inLanguage":"es","@id":"https:\/\/www.cybermedian.com\/es\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/308f3b229618b77cd1764bf92dc496296ea49a0db7c1c881fa7c4f063b2b58da?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/308f3b229618b77cd1764bf92dc496296ea49a0db7c1c881fa7c4f063b2b58da?s=96&d=mm&r=g","caption":"vpvera"},"url":"https:\/\/www.cybermedian.com\/es\/author\/vpvera\/"}]}},"_links":{"self":[{"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/posts\/8192","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/comments?post=8192"}],"version-history":[{"count":3,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/posts\/8192\/revisions"}],"predecessor-version":[{"id":8199,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/posts\/8192\/revisions\/8199"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/media\/1383"}],"wp:attachment":[{"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/media?parent=8192"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/categories?post=8192"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.cybermedian.com\/es\/wp-json\/wp\/v2\/tags?post=8192"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}