Code smell

3/19
Recursos

Aportes 25

Preguntas 1

Ordenar por:

Los aportes, preguntas y respuestas son vitales para aprender en comunidad. Reg铆strate o inicia sesi贸n para participar.

Code smell


Hace referencia al mal olor del c贸digo. Este concepto no se refiere a errores t茅cnicos, sino a errores de orden y dise帽o. Esto sucede mucho cuando intentamos crear soluciones a partir de otras soluciones.

La soluci贸n a estos casos es crear una abstracci贸n.

C贸mo evitarlo

Para esto debemos hacer una programaci贸n m谩s limpia, y reusable. Tenemos que evitar crear grandes m茅todos, o sea, programaci贸n estructura dentro de clases. Tambi茅n evitar crear grandes clases o superclases.

Y sin duda, nosotros debemos evitar a toda costa copiar y pegar c贸digo.

馃檭 Recuerda: el sistema va a funcionar pero a futuro va a ser horrible de mantener, hasta imposible.

Me ha tocado ver proyectos con mucho 鈥渃ode smell鈥 y he tenido que reconstruirlos desde cero, este curso ser谩 un buen aporte para todos los programadores, pues las clases son siempre una excelente forma de reutilizar c贸digo que puedes usar en cualquier parte, y solo tienes que darle mantenimiento a un solo c贸digo.

Un excelente ejemplo de programaci贸n organizada mediante clases es Laravel, me encanta mirar el c贸digo de Laravel, pues puedes apreciar como es muy entendible, con leerlo sabes lo que hace, Laravel delega acciones a m茅todos de diferentes clases y es muy reutilizado. Igual es una excelente pr谩ctica hacer eso, dividir tu c贸digo en funciones, as铆 sabes qu茅 hace cada linea y se vuelve m谩s f谩cil de mantener.

LA PUTA MADRE PROFE, COMO ME HACE REFLEXIONAR, 5 ESTRELLAS DESDE YA

馃 Code smell nos hace referencia a errores de orden y dise帽o, esto ocurre por una mala abstracci贸n.

Code smell

Hace referencia al mal olor del c贸digo, normalmente se ve cuando el desarrollo tiene fuentes de c贸digo que son copiados y pegados. Es ac谩 donde se hace la referencia al mal orden que se tiene en el c贸digo y en el dise帽o.

Generalmente se da cuando queremos crear soluciones a partir de otras. Por lo tanto al realizar alguna modificaci贸n se da con gran dificultad.

Para evitar este tipo de situaciones se debe realizar:

  • Programar m谩s limpio
  • No crear clases tan extensas

Muy buena explicaci贸n la del profe, son temas que se deben de tocar desde un inicio de proyecto para mejorar las pr谩cticas. 馃槈

El c贸digo puede 鈥渁pestar鈥 por errores de orden y de dise帽o

Esta clase huele muy bien

3. Code smell

Comparto una imagen que resume la clase:

Interesantes consejos Italo definitivamente todo el tiempo se aprender algo nuevo鈥

Me ha pasado鈥 y no precisamente con el c贸digo de alguien m谩s. Me ha pasado al revisar algunos proyectos que mi yo del pasado hizo. Si tuviera una m谩quina del tiempo鈥

Code smell hace referencia al mal olor del c贸digo. En programaci贸n aplicamos este concepto de la comida(visto en clase), digamos que creamos diferentes c贸digos pero copiamos y pegamos, creamos estructuras que en este momento funcionan en un modulo y creamos a partir de all铆 una estructura identica y simplemente editamos.
El c贸digo puede funcionar, sin embargo, tambi茅n puede apestar porque cuando hablamos de c贸digo, cuando huele mal o el mal olor del c贸digo nos referimos espec铆ficamente no a errores t茅cnicos, sino a errores de orden y de dise帽o, y esto por supuesto sucede con mucha frecuencia precisamente cuando intentamos
crear soluciones a partir de otra soluci贸n.
Para evitar estas cosas nosotros necesitamos una programaci贸n mucho m谩s limpia, evitado crear grandes m茅todos, es decir, programaci贸n estructurada dentro de clases, precisamente evitar crear grandes clases o superclases, nosotros necesitamos evitar y esto seria lo m谩s importante copiar un c贸digo que funciona y llevarlo a otro archivo.
Esto de c贸digo que huele mal o mal olor en el c贸digo nos dice de manera clara que no estamos programando bien y la soluci贸n es dar un paso atr谩s ver con mucha claridad el error que estamos cometiendo y a partir de all铆 aprender.

De manera personal realizaba mucho la practica de copiar el c贸digo de una clase que funciona y pegarlo en otra adapt谩ndolo para que funcionara, ca铆 mucho en los ejemplos que puso el profesor desde generar Excel, pdfs, env铆o de correos etc.

Hoy se me ilumino el cerebro 鉂わ笍

Las practicas mas comunes a la hora de hacer codigo smell son las siguientes:

-Clases Lazy
-Blocktware
-Codigo repetido

me pasa a diraro con el mal olor de codigo

Code Smell

<h5>Apuntes</h5>
  • Literalmente hace referencia al mal olor del c贸digo.
    • C贸digo que te da mala espina.
    • Se refiere espec铆ficamente a errores de orden y dise帽o
  • Sucede cuando se crean soluciones a partir de otra soluci贸n.
    • Copiar y pegar c贸digo
  • 驴C贸mo evitarlo?
    • Crear programaci贸n limpia.
    • Evitando crear m茅todos o funciones sumamente grandes.
    • Evitar copiar c贸digo que funciona de un lugar a otro.

Hediondez = 鈥渉uele muy mal鈥

Excelente informaci贸n para evitar errores comunes.

En resumen: si realizas copy-paste del c贸digo que adem谩s est谩 mal estructurado ser谩 un dolor de cabeza y apestar谩鈥

C贸digo Apestoso o c贸digo espagueti. Lo peor que nos puede pasar como programadores y que era el principio de todos los desarrollos hace algunos a帽os atr谩s

Codigo smell es aquel que 鈥渁pesta鈥, es decir, el que esta desarrollado solo para que funcione, sin importar que sea rescalable o mantenible a futuro.
Para evitarlo, se deben seguir los patrones de dise帽o.

El code smell puede encontrarse en el lugar menos imaginado

Soy de los que con PHP copio el codigo que funciona, por que funciona y ya, de ahora en adelante buscare alternativams mas eficientes evitando el code smell.

Si es una realidad, esta clase me hizo revisar un proyecto y veo que Italo tiene raz贸n uno por salir del paso hace copy y ni siquiera deja comentarios para en un futuro mirar lo que se quer铆a lograr. a mejorar y quitar malas practicas.