{"id":952,"date":"2022-09-02T00:00:00","date_gmt":"2022-09-01T22:00:00","guid":{"rendered":"https:\/\/programaraciegas.net\/?p=952"},"modified":"2022-07-20T09:25:26","modified_gmt":"2022-07-20T07:25:26","slug":"codigo-limpio-sin-codigo-inutil","status":"publish","type":"post","link":"https:\/\/programaraciegas.net\/?p=952","title":{"rendered":"C\u00f3digo limpio sin c\u00f3digo inutil"},"content":{"rendered":"<p>En el art\u00edculo sobre <a href=\"https:\/\/programaraciegas.net\/?p=944\" rel=\"nofollow\">c\u00f3mo escribir c\u00f3digo limpio y legible<\/a> hablamos de la necesidad de un c\u00f3digo que no tenga bloques de c\u00f3digo in\u00fatil.<\/p>\n<p>Estos bloques de c\u00f3digo in\u00fatil se originan normalmente cuando estamos probando un c\u00f3digo de forma temporal para hacer un experimento en nuestro proyecto.<\/p>\n<h2>Activando y desactivando bloques de c\u00f3digo<\/h2>\n<p>Dentro de un proyecto de software puede que durante una ejecuci\u00f3n de prueba controlada nos interese desactivar un bloque de c\u00f3digo y activar otro. Esto se consigue gracias a las instrucciones para a\u00f1adir comentarios en un c\u00f3digo.<\/p>\n<p>Cada lenguaje de programaci\u00f3n posee uno o varios m\u00e9todos para comentar un trozo de c\u00f3digo. Por ejemplo la funci\u00f3n original ser\u00eda:<\/p>\n<pre>Funcion calcularImpuesto() {<br \/><br \/>\u00a0 \u00a0 calcularImpuestosDelCarrito()<br \/><br \/>}<\/pre>\n<p>Y para nuestro experimento quedar\u00eda as\u00ed:<\/p>\n<pre>Funcion calcularImpuesto() {<br \/><br \/>\u00a0 \u00a0 \/\/ Comentamos la siguiente l\u00ednea para la prueba<br \/><br \/>\u00a0 \u00a0 \/\/ calcularImpuestosDelCarrito()<br \/><br \/>\u00a0 \u00a0 \/\/ Usamos el experimento<br \/><br \/>\u00a0 \u00a0 calcularImpuestosDelCarritoDeOtraForma()<br \/><br \/>}<\/pre>\n<h2>El problema<\/h2>\n<p>El problema aparece cuando dejamos esos comentarios porque nos ha gustado m\u00e1s el resultado de la prueba. El c\u00f3digo resultante est\u00e1 lleno de bloques in\u00fatiles que dificultan la lectura del c\u00f3digo.<\/p>\n<p>La soluci\u00f3n consiste en quitar esos bloques de c\u00f3digo y dejar s\u00f3lo el c\u00f3digo \u00fatil. El ejemplo quedar\u00eda al final as\u00ed:<\/p>\n<pre>Funcion calcularImpuesto() {<br \/><br \/>\u00a0 \u00a0 calcularImpuestosDelCarritoDeOtraForma()<br \/><br \/>}<\/pre>\n<h2>\u00bfC\u00f3mo no perder esos bloques comentados?<\/h2>\n<p>Puede que para nuestro proyecto nos interese no perder ese c\u00f3digo alternativo que al principio estaba desactivado con comentarios y que posteriormente borramos para mejorar la limpieza de nuestro c\u00f3digo.<\/p>\n<p>Para evitar perder este c\u00f3digo alternativo lo mejor es utilizar un sistema de gesti\u00f3n de versiones de c\u00f3digo como <a href=\"https:\/\/es.wikipedia.org\/wiki\/Git\" rel=\"nofollow\">Git<\/a> o <a href=\"https:\/\/es.wikipedia.org\/wiki\/Mercurial\" rel=\"nofollow\">Mercurial<\/a>.<\/p>\n<p>Con estas herramientas podemos tener varias versiones de nuestro proyecto e ir manteniendo el c\u00f3digo l\u00edmpio en todo momento sin perder nada ya que con la herramienta de gesti\u00f3n de versiones podemos consultar c\u00f3digo m\u00e1s viejo en cualquier momento.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>En el art\u00edculo sobre c\u00f3mo escribir c\u00f3digo limpio y legible hablamos de la necesidad de un c\u00f3digo que no tenga bloques de c\u00f3digo in\u00fatil. Estos bloques de c\u00f3digo in\u00fatil se originan normalmente cuando estamos probando un c\u00f3digo de forma temporal para hacer un experimento en nuestro proyecto. Activando y desactivando bloques de c\u00f3digo Dentro de &hellip; <\/p>\n<p class=\"link-more\"><a href=\"https:\/\/programaraciegas.net\/?p=952\" class=\"more-link\">Continuar leyendo<span class=\"screen-reader-text\"> \u00abC\u00f3digo limpio sin c\u00f3digo inutil\u00bb<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,6],"tags":[415,87],"class_list":["post-952","post","type-post","status-publish","format-standard","hentry","category-metodologiafilosofia","category-programacion","tag-codificacion","tag-programacion-2"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts\/952","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=952"}],"version-history":[{"count":0,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=\/wp\/v2\/posts\/952\/revisions"}],"wp:attachment":[{"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=952"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=952"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/programaraciegas.net\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=952"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}