Тёмный

Mejora tu código aplicando Split Phase Refactoring 

CodelyTV - Redescubre la programación
Подписаться 153 тыс.
Просмотров 22 тыс.
50% 1

Refactoring, Code Smells, SOLID, Clean Code, Clean Architecture…
Todo está muy relacionado y hoy vamos a ver una estructura con Smells para refactorizarla y lograr un código más mantenible y escalable. ✌️
Sin duda, la Arquitectura del Software es uno de los temas de los que más nos gusta hablar. 😊
🚥 ¡Haz nuestro curso de refactoring! 👉 bit.ly/curso-re...
Para ello vamos a ver un Code Smell del tipo Change Preventer y cómo aplicar Split Phase Refactoring paso a paso.
El refactoring (o refactorización) es la forma para reestructurar nuestro código, modificando su estructura interna sin modificar su comportamiento. Para ello siempre necesitamos una buena base de testing.
{▸} Codely
├ 🎥 Suscríbete: ru-vid.com...
├ 🐦 Twitter Codely: / codelytv
├ 💂🏼 Twitter Rafa: / rafaoe
├ 🧔🏻 Twitter Javi: / javiercane
├ 📸 Instagram: / codelytv
├ ℹ️ LinkedIn: / codelytv
├ 🟦 Facebook: / codelytv
└ 📕 Catálogo cursos: bit.ly/cursos-...

Опубликовано:

 

28 сен 2024

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 63   
@CodelyTV
@CodelyTV 3 года назад
¡Acabamos de lanzar un nuevo curso de refactoring! bit.ly/curso-refactor 😊😊😊
@yeasturianin
@yeasturianin 3 года назад
No me da la vida para hacer todos los cursos. En vez de quitar los "$" y que sea Java o TS, se lo dejamos y que sea JQuery 🤣🤣
@CodelyTV
@CodelyTV 3 года назад
Jajajajajajajaa
@Pptruenoz
@Pptruenoz 3 года назад
Me encantó el vídeo, lo entendí perfecto.👍 Me gustaría que hicieran una alternativa para cuando hay muchos steps y el coste computacional si es un inconveniente
@thewarriorsan6518
@thewarriorsan6518 2 месяца назад
Me gusto bastante la forma de explicar, Gracias por compartir el conocimiento.
@hazelhumor
@hazelhumor 3 года назад
De todas formas, aunque recorramos el array dos veces, el coste asintótico sigue siendo lineal, ¿no? Ya que O(2n) sigue siendo O(n).
@TonnySanjiao
@TonnySanjiao 3 года назад
Enhorabuena muy claro y entendible. Sois unos máquinas. Un saludo desde Centelles (Barcelona)
@leandrotapia4363
@leandrotapia4363 3 года назад
Los anclajes para escalar que menciona Javi se llaman "Parabolt" 😃 Excelente contenido como siempre muchachos! Saludos desde Argentina! 🇦🇷
@CodelyTV
@CodelyTV 3 года назад
Grandeeeeeeee!!! Mil gracias! Jajajajaja
@JhonElDeSistemas
@JhonElDeSistemas 3 года назад
son unos magos, muchas gracias por tan buen contenido!
@napal24
@napal24 3 года назад
jajaja yo ya hacia esto cuando empece a aprender C++ ya que siempre nos molestaban (los profes) con que cada accion tiene que estar englobada en una funcion para que el codigo sea mas legible y cada funcion solo se tiene que dedicar a una cosa pero siempre me daba contra la pared cuando ese tipo de refactorizacion afectaba negativamente al rendimiento como el hecho de tener que recorrer 2 veces un mismo array ahora veo que no siempre la legibilidad va de la mano con el rendimiento, y que no tengo que preocuparme tanto por eso
@omarbarra3456
@omarbarra3456 3 года назад
Muy bueno.. pero en un entorno donde importe el costo computacional como seria el mejor refacotor?
@ramonsorto5107
@ramonsorto5107 3 года назад
Me gusta como lo han explicado cracks
@juliocesarPastor
@juliocesarPastor 3 года назад
12:21 quizás a los anclajes a los que te refieres podrian ser los "bolts" (placas que se ponen a la piedra donde colocas una cinta y ahí iria tu cuerda para ir seguro)
@Narukuchan
@Narukuchan Год назад
y qué pasa cuando tenemos que mezclar lso dominios? cuando desde la entidad A necesitamos conseguir la entidad B? dónde va eso?
@fabriziopastor6146
@fabriziopastor6146 3 года назад
chale. pensé que habría código :') buen vídeo 👍
@suko8285
@suko8285 3 года назад
- Políticos: Necesitamos una vacuna efectiva para el coronavitus. - Científicos: Vamos a dibujar cajitas. Buen video chicos !
@digivoro6321
@digivoro6321 3 года назад
esto no es ciencia, es técnica 😎
@thedarsideofit
@thedarsideofit 3 года назад
Muy bueno!
3 года назад
Vaya chulada. ¿Qué usáis para hacer las presentaciones y pintar las cajitas?
@CodelyTV
@CodelyTV 3 года назад
Keynote y mucha paciencia 😊
@aratar79
@aratar79 3 года назад
Que grandes!
@JoseGonzalez-qs5wz
@JoseGonzalez-qs5wz 3 года назад
Hola chicos, soy de mexico e intentado comprar sus cursos y no tenido exito, alguna forma de poder hacer transferencia o el pago desde mexico
@daviddavid7319
@daviddavid7319 3 года назад
Yo recojo vuestra invitación a que expliqueis la propuesta adaptada al requisito que la fuente de datos retorna una cantidad masiva como decís que agota la RAM y el programa no escalaria debido a paginación o simple insufficient memory. Me gustaria que siguierais el hilo de codigo limpio, done el ejemplo quede abstraido bajo un repositorio que en otro contexto retorne muchos millones de rows y la Ram sea notoriamente insuficiente al volumen a procesar. Me interesa vuestro patron en el que tampoco se traslade el problema a la base de datos mediante múltiples iteraciones de paginación ya que harían a la base mucho daño y es algo muy común que se encuentra en entornos empresariales por ejemplo cuando se exportan ficheros masivos, cientos de GB de datos. (Ejemplos comunes: extracción de ficheros de contabilidades en compañias de altisimas operaciones, estados diarios de cuentas de toda la cartera de clientes, ficheros de control de fraude de contratos).Conozco que con programación clasica se mezcla el cursor de apertura y a base de fetchs super eficientes de las propias bases de datos con infima memoria pausan y continúan una unica query mediante bufferes en los providers, pero desacomplando mediante repositorios no veo como hacer digamos ese procesamiento por partes o trozos (yields) sin contaminar el programa con conocer mantener abierta la connection. La preogramacion clasica de cursor eficiente permite por el poco uso de memoria la extraccion de multiples ficheros masivos en paralelo, me gustaría de veras ver eso mismo transladado a la propuesta de llevar esos casos extremos a un refactor de código limpio. Gracias
@canaljoseg0172
@canaljoseg0172 8 месяцев назад
🙄 Es que los junior no consideran el uso de la memoria, la falta de una variable declarada antes del ciclo foreach de type y point, provocan un consumo exagerado en memoria si el proceso itera más 1000 veces consumiendo un buen pedazo de torta, éstos errores se encuentran al momento de hacer cálculo complejos y llegar a un resultado final (el tiempo es más lento). La visibilidad de una variable es un caso implícito para muchos programadores actuales. Pasa por debajo de la mesa porque ahora se maneja 16Gb de Ram, cuando antes eran 8Mb....Jajajajajaja 🤣🤣 Aquellos dolores de cabeza eran tremendos. No importan que se consuma 2Kb pero esto le pone peso al código al aumentar la cantidad simultánea.
@gerardojoaquinmartinezhern2358
@gerardojoaquinmartinezhern2358 3 года назад
Una duda, que fuente es la que se usó en el primer código que mostraron, se parece a Víctor mono pero siento que es diferente
@CodelyTV
@CodelyTV 3 года назад
Dank Mono 😊
@ecmc
@ecmc 2 года назад
Lo del costo si importa, en donde trabajo el refact lo hicieron por qué el costo computacional es demasiado
@canaljoseg0172
@canaljoseg0172 8 месяцев назад
🤔 Esto que he visto se ha aplicado a la codificaciones de plataforma en python como Stable Diffusion (El manejo de variables es pésimo), claro es un modelo simplificado. Pero Ojo no a todo los códigos se le puede hacer eso, me llama la atención el manejo de la variables en este bucle del primer código ya que no se encuentran las variables declarada al inicio del proceso , el modelo propuesto con Split Phase Refactoring debe cae en el procesamiento recursivo, si se elimina el ciclo for, por lo que será conveniente la utilización de propiedades privadas de la variables point y type, que evitaría un colapso de memoria.
@rodolfonovoa9412
@rodolfonovoa9412 3 года назад
Sin la intensión de molestar, mejor deja hablar a Rafa, para ser sincero a Rafa se le entiende mucho mejor.
@villadaniel
@villadaniel 3 года назад
El de la izquierda es la definición de hombre beta.
@reydavid7300
@reydavid7300 2 года назад
La tipografia me duele en los ojos eeeeeeee e____e
@victoravila7756
@victoravila7756 2 года назад
El de rojo habla mucho...
@livecesar
@livecesar 3 года назад
Gracias! ..... Nada que ver: la envidia que me despierta Rafa y su cabello.
@CodelyTV
@CodelyTV 3 года назад
xDDDD
@ulises982011
@ulises982011 3 года назад
Fue muy fuerte para mi escuchar que es más valioso la legibilidad del código que el gasto de recursos. Soy un hombre nuevo
@avtomatk6506
@avtomatk6506 3 года назад
Depende del entorno en el que programes, en un microcontrolador obviamente vale mas la eficiencia de recursos que la estética del código.
@rorepoid
@rorepoid 3 года назад
Lo mismo pasó conmigo
@Jvc9109
@Jvc9109 3 года назад
@@avtomatk6506 bueno nose... si hablamos de que solo tienes 10 MB de memoria volátil y tienes que manejar volúmenes del orden de N=1000 te lo compro... pero hasta un smartwatch de gama baja te viene con 2GB de ram.
@Pcabuti
@Pcabuti 3 года назад
Ostras entendí mal el dia que lo explicaron. Escuché "Como peor se lea el código mas eficiente es"... Ahora lo entiendo todo 😂
@zackysh_
@zackysh_ 3 года назад
Es terminar de ver un vídeo de Martin Fowler sobre refactoring y... xD grandes
@CodelyTV
@CodelyTV 3 года назад
Jajajaja, sin parar!!
@Aunamedia
@Aunamedia 3 года назад
Me parece genial el vídeo y el contenido... muy interesante... he tenido muchos debates sobre este mismo caso... y cuesta hacerle ver los motivos y los beneficios a gente de "la vieja escuela"... Genial metodología de explicación.
@josecelvinrivas
@josecelvinrivas 3 года назад
2millones de steps aqui
@conpocoparavivir
@conpocoparavivir 3 года назад
Sois unos cracks :)
@CodelyTV
@CodelyTV 3 года назад
Muchas gracias 😊
@elProdigio
@elProdigio 3 года назад
O Javi ha crecido o Rafita ha menguado.
@javifrancia
@javifrancia 3 года назад
"nos vemos en pro punto cod top hue pah pah" me alegraste el dia tocayo jajaj
@andycaseres2
@andycaseres2 3 года назад
como se llama ese tema?
@dennisrodriguez9202
@dennisrodriguez9202 3 года назад
Codely Dark
@CragCode
@CragCode 3 года назад
No le dijeron Rafita Rafita a Rafa, se están perdiendo las buenas costumbres :(
@asdfasdwafadfg
@asdfasdwafadfg 3 года назад
Geniales estos videos! Me encantaría ver más videos de este tipo!
@CodelyTV
@CodelyTV 3 года назад
En pro.codely.tv/ hay muchísimos más 😊
@asdfasdwafadfg
@asdfasdwafadfg 3 года назад
@@CodelyTV Estoy deseando tener algo más de tiempo para ponerme a ello! 🙌
@rorepoid
@rorepoid 3 года назад
Empiezo a tener esperanzas :)
@cesarmelia187
@cesarmelia187 3 года назад
Alguien sabe que tipografía es la que utilizan?
@sycrox2
@sycrox2 3 года назад
Creo que es Fira Code y le habilitan ligaduras. En vscode hay una opción donde le dices "editor.fontLigatures: true"
@sunset0935
@sunset0935 3 года назад
6:50 que es lo que dice?? "cuando se asigna por primera vez, se asigna a un [________] "
@CodelyTV
@CodelyTV 3 года назад
"se asigna a un claudator". Claudators es como se denominan los corchetes ("[" y "]") en Catalán. Perdón por la confusión 😅😬
@sunset0935
@sunset0935 3 года назад
@@CodelyTV gracias, saludos desde Argentina!!
@13400556
@13400556 3 года назад
Priorizar la legibilidad al programador por encima del rendimiento hacia el usuario? Lo siento pero no se me ocurre ningún caso en el que esa frase se pueda aplicar a la realidad.
@MaximoPower2024
@MaximoPower2024 3 года назад
Pues te acaban de poner un ejemplo...
Далее
Actualiza tu aplicación JavaScript con Webpack
14:05
CORTE DE CABELO RADICAL
00:59
Просмотров 1,8 млн
¿Tiene sentido el Clean Code en 2024?
21:18
Просмотров 20 тыс.
La Regla de Oro del Clean Code
14:55
Просмотров 7 тыс.
ORM vs SQL ¿Cuándo usar cada uno? 🤔
28:10
Просмотров 36 тыс.
Mejora tu código aplicando Clean Architecture
10:37
Просмотров 81 тыс.