SlideShare una empresa de Scribd logo
Rodrigo Branas – @rodrigobranas - http://www.agilecode.com.br/es

Principios de la Refactorización
http://www.slideshare.net/rodrigobranas
Rodrigo Branas
rodrigo.branas@agilecode.com.br
http://www.agilecode.com.br
•
•
•
•

Desarrollo de Software en Gennera
Entrenamientos en Agile Code
Artículos en Java Magazine
Conferencias sobre desarrollo de software
en eventos, universidades y empresas
Formación Académica

Ciencias de la Computación - UFSC
Gestión de Proyectos - FGV
Certificaciones

SCJA, SCJP, SCJD, SCWCD, SCBCD, PMP, MCP e CSM
Experiencia

Desde hace más de 12 años desarrollando
software en la plataforma Java en las empresas:
EDS, HP, NET, Citibank, GM, Dígitro, Softplan,
OnCast, Senai, VALE, RBS, Unimed, Globalcode,
V.Office, Suntech, WPlex e Gennera.
¿Que es Refactoring?
“Modificación hecha en la estructura
interna del software para mejorar
su comprensión y abaratar el costo
de mantenimiento sin alterar su
comportamiento externo.”
(Martin Fowler)
“Refactorización es la arte de
evolucionar el design del código.”
(William C. Wake)
“Refactorización es una manera de
mantener el software sostenible y
competitivo a lo largo del tiempo.”
Refactorización es una inversión
Ahorro proporcional
Lamentablemente, lo contrario es
verdadero
Como negociar actividades de
refactorización con su gerente?
Charla entre el Desarrollador y su Gerente
Desarrollador: Rodrigo, necesito hacer una refactorización en el código!
Gerente: ¿Refactorización? ¿Que es eso, tu vás a melhorar la performance?
Desenvolvedor: No, no...
Gerente: ¿Vás a dejar la interfaz más bonita y más fácil de usar?
Desenvolvedor: No...
Gerente: ¿Qué vas a hacer?
Desenvolvedor: “Haré una modificación en la estructura interna del
software para mejorar su comprensión y abaratar el costo de
mantenimiento sin alterar su comportamiento externo.” (Martin Fowler)
Gerente: No.
Refactorize con un propósito
Esté atento a las oportunidades
Refactore a la hora de anãdir
nuevas funcionalidades
Refactore cuando for
arreglar un defecto
Refactore cuando precisar
comprender el código
Los 7 enemigos de la
refactorización
Desconocimiento
No se dar cuenta de lo problema
es una de las causas principales.
Es normal ver desarrolladores
experientes que no dan atención
a la calidad del código.
Inmediatismo
Pensar solo en resolver los
problemas, sin considerar que la
naturaleza del desarrollo de
software es el cambio.
Ventanas Rotas
Tenemos dificuldades en tratar com
las ventanas rotas. Sea en nuestra
dieta, en nuestro matrimonio y en
el desarrollo de software, el
desánimo de las ventanas rotas
pueden llevar al fracaso.
Trabajo en Equipo
Es fácil culpar el pasante. El
equipo debe mantener el código
en orden y con calidad.
Gestión
Normalmente, sea por el
desconocimiento o por la presión
comercial, la refactorización tiende a
ser evitada por la dirección.
Pruebas Automatizadas
La falta de automatización de pruebas
torna el desarrollo más inseguro y la
refactorización puede plantear
problemas.
¿Cuando no debemos
refactorizar?
Cerca del plazo de entrega
La mayoría de empresas
necesitan contraer deudas para
mantenerse en el mercado
Cuidado, los interés son muy altos!
Desafios de la refactorización
Refactorización (EN ESPANOL)

Más contenido relacionado

La actualidad más candente

Tecnologías para microservicios
Tecnologías para microserviciosTecnologías para microservicios
Tecnologías para microservicios
Pedro J. Molina
 
A Practical Guide to Domain Driven Design: Presentation Slides
A Practical Guide to Domain Driven Design: Presentation SlidesA Practical Guide to Domain Driven Design: Presentation Slides
A Practical Guide to Domain Driven Design: Presentation Slides
thinkddd
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftChuyito Alvarado
 
Metodologia.rup
Metodologia.rupMetodologia.rup
Metodologia.rup
ValentinaOterodelaVe
 
Modelos de Procesos de Software
Modelos de Procesos de SoftwareModelos de Procesos de Software
Modelos de Procesos de Software
sebas montes
 
Scalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IPScalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IP
Dai Yang
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
Araf Karsh Hamid
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
Micky Jerzy
 
Track code quality with SonarQube
Track code quality with SonarQubeTrack code quality with SonarQube
Track code quality with SonarQube
Dmytro Patserkovskyi
 
Características del modelo osi y tcp
Características del modelo osi y tcpCaracterísticas del modelo osi y tcp
Características del modelo osi y tcp
Luis Alberto Salazar
 
Pruebas Unitarias
Pruebas Unitarias Pruebas Unitarias
Pruebas Unitarias
Emerson Garay
 
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto softwareMetodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
Andres Hoyos Mosquera
 
Rad (desarrollo rápido de aplicaciones)
Rad (desarrollo rápido de aplicaciones)Rad (desarrollo rápido de aplicaciones)
Rad (desarrollo rápido de aplicaciones)
Jenyfer Utitiaja
 
Modelo furps
Modelo furpsModelo furps
Modelo furps
Leo Ruelas Rojas
 
All you need to know about crawlers
All you need to know about crawlersAll you need to know about crawlers
All you need to know about crawlers
NoemiFerrera1
 
Cuadro comparativo entre moprosoft y cmmi
Cuadro comparativo entre moprosoft y cmmi Cuadro comparativo entre moprosoft y cmmi
Cuadro comparativo entre moprosoft y cmmi Darthuz Kilates
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)
Tom Kocjan
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
Mauricio Chura Beltran
 
¿Que son los microservicios?
¿Que son los microservicios?¿Que son los microservicios?
¿Que son los microservicios?
Jose Luis Bugarin Peche
 

La actualidad más candente (20)

Tecnologías para microservicios
Tecnologías para microserviciosTecnologías para microservicios
Tecnologías para microservicios
 
A Practical Guide to Domain Driven Design: Presentation Slides
A Practical Guide to Domain Driven Design: Presentation SlidesA Practical Guide to Domain Driven Design: Presentation Slides
A Practical Guide to Domain Driven Design: Presentation Slides
 
Ventajas y desventajas de moprosoft
Ventajas y desventajas de moprosoftVentajas y desventajas de moprosoft
Ventajas y desventajas de moprosoft
 
Metodologia.rup
Metodologia.rupMetodologia.rup
Metodologia.rup
 
Modelos de Procesos de Software
Modelos de Procesos de SoftwareModelos de Procesos de Software
Modelos de Procesos de Software
 
Scalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IPScalable Service-Oriented Middleware over IP
Scalable Service-Oriented Middleware over IP
 
Domain Driven Design
Domain Driven DesignDomain Driven Design
Domain Driven Design
 
MODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWAREMODELO DE PROCESOS DEL SOFTWARE
MODELO DE PROCESOS DEL SOFTWARE
 
Track code quality with SonarQube
Track code quality with SonarQubeTrack code quality with SonarQube
Track code quality with SonarQube
 
Características del modelo osi y tcp
Características del modelo osi y tcpCaracterísticas del modelo osi y tcp
Características del modelo osi y tcp
 
Pruebas Unitarias
Pruebas Unitarias Pruebas Unitarias
Pruebas Unitarias
 
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto softwareMetodologías, metricas y modelo cocomo para el costo de un proyecto software
Metodologías, metricas y modelo cocomo para el costo de un proyecto software
 
Rad (desarrollo rápido de aplicaciones)
Rad (desarrollo rápido de aplicaciones)Rad (desarrollo rápido de aplicaciones)
Rad (desarrollo rápido de aplicaciones)
 
Lenguaje script
Lenguaje scriptLenguaje script
Lenguaje script
 
Modelo furps
Modelo furpsModelo furps
Modelo furps
 
All you need to know about crawlers
All you need to know about crawlersAll you need to know about crawlers
All you need to know about crawlers
 
Cuadro comparativo entre moprosoft y cmmi
Cuadro comparativo entre moprosoft y cmmi Cuadro comparativo entre moprosoft y cmmi
Cuadro comparativo entre moprosoft y cmmi
 
Domain Driven Design (DDD)
Domain Driven Design (DDD)Domain Driven Design (DDD)
Domain Driven Design (DDD)
 
Modelos de desarrollo de software
Modelos de desarrollo de softwareModelos de desarrollo de software
Modelos de desarrollo de software
 
¿Que son los microservicios?
¿Que son los microservicios?¿Que son los microservicios?
¿Que son los microservicios?
 

Destacado

Eclipse refactoring
Eclipse refactoringEclipse refactoring
Eclipse refactoring
srcid
 
Fundamentos de la Refactorización
Fundamentos de la RefactorizaciónFundamentos de la Refactorización
Fundamentos de la Refactorización
Javier Pérez
 
Estrategias de Pruebas de Software
Estrategias de Pruebas de SoftwareEstrategias de Pruebas de Software
Estrategias de Pruebas de Software
Lucia Gasperin
 
Pruebas de caja blanca y negra
Pruebas  de caja blanca y negraPruebas  de caja blanca y negra
Pruebas de caja blanca y negra
Andrés José Sebastián Rincón González
 
Pruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionPruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacion
Abner Gerardo
 
Software caja negra y caja blanca
Software caja negra y caja blancaSoftware caja negra y caja blanca
Software caja negra y caja blanca
StudentPc
 
Pruebas De Software
Pruebas De SoftwarePruebas De Software
Pruebas De Software
aracelij
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
Guillermo Lemus
 
Introducción a JUnit
Introducción a JUnitIntroducción a JUnit
Introducción a JUnit
Iker Canarias
 
Javadoc
JavadocJavadoc

Destacado (12)

Eclipse refactoring
Eclipse refactoringEclipse refactoring
Eclipse refactoring
 
Fundamentos de la Refactorización
Fundamentos de la RefactorizaciónFundamentos de la Refactorización
Fundamentos de la Refactorización
 
Estrategias de Pruebas de Software
Estrategias de Pruebas de SoftwareEstrategias de Pruebas de Software
Estrategias de Pruebas de Software
 
Caja negra!!
Caja negra!!Caja negra!!
Caja negra!!
 
Pruebas de caja blanca y negra
Pruebas  de caja blanca y negraPruebas  de caja blanca y negra
Pruebas de caja blanca y negra
 
Caja negra (ejemplos)...
Caja negra (ejemplos)...Caja negra (ejemplos)...
Caja negra (ejemplos)...
 
Pruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacionPruebas de sistemas y aceptacion
Pruebas de sistemas y aceptacion
 
Software caja negra y caja blanca
Software caja negra y caja blancaSoftware caja negra y caja blanca
Software caja negra y caja blanca
 
Pruebas De Software
Pruebas De SoftwarePruebas De Software
Pruebas De Software
 
Tipos de pruebas de software
Tipos de pruebas de softwareTipos de pruebas de software
Tipos de pruebas de software
 
Introducción a JUnit
Introducción a JUnitIntroducción a JUnit
Introducción a JUnit
 
Javadoc
JavadocJavadoc
Javadoc
 

Similar a Refactorización (EN ESPANOL)

Pruebas Automatizadas (EN ESPANOL)
Pruebas Automatizadas (EN ESPANOL)Pruebas Automatizadas (EN ESPANOL)
Pruebas Automatizadas (EN ESPANOL)Rodrigo Branas
 
Informe gerencial sobre Moprosoft
Informe gerencial sobre MoprosoftInforme gerencial sobre Moprosoft
Informe gerencial sobre MoprosoftHoward Pernía
 
Proyectos Informaticoa
Proyectos InformaticoaProyectos Informaticoa
Proyectos InformaticoaIrsyal Renaldi
 
Proyectos Informaticoa22222
Proyectos Informaticoa22222Proyectos Informaticoa22222
Proyectos Informaticoa22222Irsyal Renaldi
 
3 Atos Solo Pruebas 2009
3 Atos Solo Pruebas 20093 Atos Solo Pruebas 2009
3 Atos Solo Pruebas 2009
Pepe
 
Mejora de Procesos para Desarrollar Software Mejor
Mejora de Procesos para Desarrollar Software MejorMejora de Procesos para Desarrollar Software Mejor
Mejora de Procesos para Desarrollar Software Mejor
Pablo F. Sanchez
 
fases de programacion
fases de programacionfases de programacion
fases de programacioncamila1727
 
Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareJulio Pari
 
Zeety lineamientos de trabajo
Zeety   lineamientos de trabajoZeety   lineamientos de trabajo
Zeety lineamientos de trabajo
grupozeety
 
Presentación gathering ees2
Presentación gathering ees2Presentación gathering ees2
Presentación gathering ees2Etna Estrella
 
Scrum
ScrumScrum
AUGBCN - Agile¿What?
AUGBCN - Agile¿What?AUGBCN - Agile¿What?
AUGBCN - Agile¿What?
Marc Florit
 
Presentacion de ingenieria
Presentacion de ingenieriaPresentacion de ingenieria
Presentacion de ingenieriaAlexander Cruz
 
Mariajosehernandezcardenas 233101 9_agosto
Mariajosehernandezcardenas 233101 9_agostoMariajosehernandezcardenas 233101 9_agosto
Mariajosehernandezcardenas 233101 9_agosto
MariaJoshernandezcar
 
Modelos de Procesos de Software
Modelos de Procesos de SoftwareModelos de Procesos de Software
Modelos de Procesos de Software
Jiuseppe Flores
 

Similar a Refactorización (EN ESPANOL) (20)

Desarrollo de software
Desarrollo de softwareDesarrollo de software
Desarrollo de software
 
Maven (EN ESPANOL)
Maven (EN ESPANOL)Maven (EN ESPANOL)
Maven (EN ESPANOL)
 
Pruebas Automatizadas (EN ESPANOL)
Pruebas Automatizadas (EN ESPANOL)Pruebas Automatizadas (EN ESPANOL)
Pruebas Automatizadas (EN ESPANOL)
 
Informe gerencial sobre Moprosoft
Informe gerencial sobre MoprosoftInforme gerencial sobre Moprosoft
Informe gerencial sobre Moprosoft
 
Proyectos Informaticoa
Proyectos InformaticoaProyectos Informaticoa
Proyectos Informaticoa
 
Proyectos Informaticoa22222
Proyectos Informaticoa22222Proyectos Informaticoa22222
Proyectos Informaticoa22222
 
3 Atos Solo Pruebas 2009
3 Atos Solo Pruebas 20093 Atos Solo Pruebas 2009
3 Atos Solo Pruebas 2009
 
Mejora de Procesos para Desarrollar Software Mejor
Mejora de Procesos para Desarrollar Software MejorMejora de Procesos para Desarrollar Software Mejor
Mejora de Procesos para Desarrollar Software Mejor
 
fases de programacion
fases de programacionfases de programacion
fases de programacion
 
Tm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de softwareTm01 el modelado en el desarrollo de software
Tm01 el modelado en el desarrollo de software
 
Zeety lineamientos de trabajo
Zeety   lineamientos de trabajoZeety   lineamientos de trabajo
Zeety lineamientos de trabajo
 
Presentación gathering ees2
Presentación gathering ees2Presentación gathering ees2
Presentación gathering ees2
 
Scrum
ScrumScrum
Scrum
 
Guiadesupervivencia desarrollodesoftware
Guiadesupervivencia desarrollodesoftwareGuiadesupervivencia desarrollodesoftware
Guiadesupervivencia desarrollodesoftware
 
AUGBCN - Agile¿What?
AUGBCN - Agile¿What?AUGBCN - Agile¿What?
AUGBCN - Agile¿What?
 
Presentacion de ingenieria
Presentacion de ingenieriaPresentacion de ingenieria
Presentacion de ingenieria
 
Metodología scrum
Metodología scrumMetodología scrum
Metodología scrum
 
Roles de los desarrolladores
Roles de los desarrolladoresRoles de los desarrolladores
Roles de los desarrolladores
 
Mariajosehernandezcardenas 233101 9_agosto
Mariajosehernandezcardenas 233101 9_agostoMariajosehernandezcardenas 233101 9_agosto
Mariajosehernandezcardenas 233101 9_agosto
 
Modelos de Procesos de Software
Modelos de Procesos de SoftwareModelos de Procesos de Software
Modelos de Procesos de Software
 

Más de Rodrigo Branas

Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
Rodrigo Branas
 
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo BranasNode.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Rodrigo Branas
 
Node.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo BranasNode.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo Branas
Rodrigo Branas
 
Node.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo BranasNode.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo Branas
Rodrigo Branas
 
Node.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo BranasNode.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo Branas
Rodrigo Branas
 
Node.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo BranasNode.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo Branas
Rodrigo Branas
 
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo BranasNode.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Rodrigo Branas
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
Rodrigo Branas
 
#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas
Rodrigo Branas
 
#1 - Git - Introdução
#1 - Git - Introdução#1 - Git - Introdução
#1 - Git - Introdução
Rodrigo Branas
 
#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto
Rodrigo Branas
 
#4 - Git - Stash
#4 - Git - Stash#4 - Git - Stash
#4 - Git - Stash
Rodrigo Branas
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e Merging
Rodrigo Branas
 
#2 - Git - DAG
#2 - Git - DAG#2 - Git - DAG
#2 - Git - DAG
Rodrigo Branas
 
A evolução do AngularJS
A evolução do AngularJSA evolução do AngularJS
A evolução do AngularJS
Rodrigo Branas
 
JavaScript - Date
JavaScript - DateJavaScript - Date
JavaScript - Date
Rodrigo Branas
 
JavaScript - Expressões Regulares
JavaScript - Expressões RegularesJavaScript - Expressões Regulares
JavaScript - Expressões Regulares
Rodrigo Branas
 
Automação de Testes com AngularJS
Automação de Testes com AngularJSAutomação de Testes com AngularJS
Automação de Testes com AngularJS
Rodrigo Branas
 
Scope AngularJS
Scope AngularJSScope AngularJS
Scope AngularJS
Rodrigo Branas
 
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJSHTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
Rodrigo Branas
 

Más de Rodrigo Branas (20)

Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
 
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo BranasNode.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
Node.js - #7 - Core Modules - http - Parte 1 - Rodrigo Branas
 
Node.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo BranasNode.js - #6 - Core Modules - net - Rodrigo Branas
Node.js - #6 - Core Modules - net - Rodrigo Branas
 
Node.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo BranasNode.js - #5 - Process - Rodrigo Branas
Node.js - #5 - Process - Rodrigo Branas
 
Node.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo BranasNode.js - #4 - Timers - Rodrigo Branas
Node.js - #4 - Timers - Rodrigo Branas
 
Node.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo BranasNode.js - #3 - Global Objects - Rodrigo Branas
Node.js - #3 - Global Objects - Rodrigo Branas
 
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo BranasNode.js - #2 - Sistema de Módulos - Rodrigo Branas
Node.js - #2 - Sistema de Módulos - Rodrigo Branas
 
Node.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo BranasNode.js - #1 - Introdução - Rodrigo Branas
Node.js - #1 - Introdução - Rodrigo Branas
 
#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas#6 - Git - Desfazendo as coisas
#6 - Git - Desfazendo as coisas
 
#1 - Git - Introdução
#1 - Git - Introdução#1 - Git - Introdução
#1 - Git - Introdução
 
#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto
 
#4 - Git - Stash
#4 - Git - Stash#4 - Git - Stash
#4 - Git - Stash
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e Merging
 
#2 - Git - DAG
#2 - Git - DAG#2 - Git - DAG
#2 - Git - DAG
 
A evolução do AngularJS
A evolução do AngularJSA evolução do AngularJS
A evolução do AngularJS
 
JavaScript - Date
JavaScript - DateJavaScript - Date
JavaScript - Date
 
JavaScript - Expressões Regulares
JavaScript - Expressões RegularesJavaScript - Expressões Regulares
JavaScript - Expressões Regulares
 
Automação de Testes com AngularJS
Automação de Testes com AngularJSAutomação de Testes com AngularJS
Automação de Testes com AngularJS
 
Scope AngularJS
Scope AngularJSScope AngularJS
Scope AngularJS
 
HTTP Interceptors com AngularJS
HTTP Interceptors com AngularJSHTTP Interceptors com AngularJS
HTTP Interceptors com AngularJS
 

Último

Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
sofiahuarancabellido
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
marianabz2403
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
tamarita881
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
juanchogame18
 
Ventajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloroVentajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloro
durangense277
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
coloradxmaria
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Festibity
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
aljitagallego
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Festibity
 
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
SERVANDOBADILLOPOLEN
 
Todo sobre Minirobotica. Revista Saber Electronica
Todo sobre  Minirobotica. Revista Saber ElectronicaTodo sobre  Minirobotica. Revista Saber Electronica
Todo sobre Minirobotica. Revista Saber Electronica
Carlos Carlosnoemi
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
paulroyal74
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
IsabelQuintero36
 
TEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.ppt
TEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.pptTEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.ppt
TEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.ppt
SandroNava1
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
JulyMuoz18
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
LilibethEstupian
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
Ing. Julio Iván Mera Casas
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
ItsSofi
 

Último (20)

Computacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajasComputacion cuántica y sus ventajas y desventajas
Computacion cuántica y sus ventajas y desventajas
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdfDESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
DESARROLO DE HABILIDADES DE PENSAMIENTO.pdf
 
SISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsxSISTESIS RETO4 Grupo4 co-creadores .ppsx
SISTESIS RETO4 Grupo4 co-creadores .ppsx
 
Presentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The CleanPresentacion de Estado del Arte del The Clean
Presentacion de Estado del Arte del The Clean
 
Ventajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloroVentajas y desventajas de la desinfección con cloro
Ventajas y desventajas de la desinfección con cloro
 
Conceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. TecnologíaConceptos Básicos de Programación. Tecnología
Conceptos Básicos de Programación. Tecnología
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdfProjecte Iniciativa TIC 2024 HPE. inCV.pdf
Projecte Iniciativa TIC 2024 HPE. inCV.pdf
 
actividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañerosactividad 2 tecnologia (3).pdf junto con mis compañeros
actividad 2 tecnologia (3).pdf junto con mis compañeros
 
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdfProjecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
Projecte Iniciativa TIC 2024 KAWARU CONSULTING. inCV.pdf
 
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.COMPARATIVO DE SUBESTACIONES AIS VS GIS.
COMPARATIVO DE SUBESTACIONES AIS VS GIS.
 
Todo sobre Minirobotica. Revista Saber Electronica
Todo sobre  Minirobotica. Revista Saber ElectronicaTodo sobre  Minirobotica. Revista Saber Electronica
Todo sobre Minirobotica. Revista Saber Electronica
 
Sitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajasSitios web 3.0 funciones ventajas y desventajas
Sitios web 3.0 funciones ventajas y desventajas
 
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..ACTIVIDAD 2P de Tecnología, 10-7, 2024..
ACTIVIDAD 2P de Tecnología, 10-7, 2024..
 
TEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.ppt
TEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.pptTEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.ppt
TEMA 2-CARPAS SOLARES PARA PRODUCCION DE HORTALIZAS.ppt
 
Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5Conceptos Básicos de Programación L.D 10-5
Conceptos Básicos de Programación L.D 10-5
 
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVATECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
TECLADO ERGONÓMICO Y PANTALLAS TACTILES - GESTIÓN INTEGRAL EDUCATIVA
 
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB  S2. PARA VSATMANUAL DEL DECODIFICADOR DVB  S2. PARA VSAT
MANUAL DEL DECODIFICADOR DVB S2. PARA VSAT
 
Estructuras básicas_ conceptos básicos de programación.pdf
Estructuras básicas_  conceptos básicos de programación.pdfEstructuras básicas_  conceptos básicos de programación.pdf
Estructuras básicas_ conceptos básicos de programación.pdf
 

Refactorización (EN ESPANOL)

Notas del editor

  1. Refatore com um propósito, sejaparaadicionarfuncionalidades, corrigirdefeitosoumesmoentenderumaregra de negócio
  2. Refatore com um propósito, sejaparaadicionarfuncionalidades, corrigirdefeitosoumesmoentenderumaregra de negócio
  3. Refatore com um propósito, sejaparaadicionarfuncionalidades, corrigirdefeitosoumesmoentenderumaregra de negócio
  4. Refatore com um propósito, sejaparaadicionarfuncionalidades, corrigirdefeitosoumesmoentenderumaregra de negócio
  5. Falta de testes, stored procedures