Return to Video

Mejora tu código para no re-escribirlo tantas veces

  • 0:00 - 0:02
    Podemos hacer un pequeño
    ajuste en nuestro código
  • 0:02 - 0:04
    para evitar re-escribirlo excesivamente
  • 0:04 - 0:05
    Hechemos un vistazo a
    la vista de comparación
  • 0:05 - 0:08
    En lugar de concatenar los valores celda
    por celda para para construir cada fila,
  • 0:08 - 0:09
    usemos mejor una referencia de
    StringBuilder,
  • 0:09 - 0:11
    para construir cada fila usando
    un solo string.
  • 0:11 - 0:14
    Fíjate que el StringBuild está instanciado
    afuera del loop (bucle)
  • 0:14 - 0:16
    y por lo tanto su memoria
    se asigna una vez,
  • 0:16 - 0:20
    simplemente la usamos como búfer para cada
    repetición del loop de donde lo quitamos
  • 0:20 - 0:23
    y luego añadimos un solo string de Ints,
  • 0:23 - 0:25
    para representar la fila
    de esa repetición del loop
  • 0:25 - 0:28
    Ve a las notas del instructor para más
    detalles de este segmento de código
  • 0:28 - 0:30
    Muy bien, ahora es tiempo de
    comprobar el resultado
  • 0:30 - 0:32
    carga la branch del código
    que acabamos de mejorar
  • 0:32 - 0:34
    (su nombre es memory_churn_optimized)
  • 0:34 - 0:37
    en ambos TraceView y Memory Monitor
  • 0:37 - 0:39
    para confirmar que hemos reducido
    la cantidad de GC's que se producen
  • 0:39 - 0:41
    en este corto periodo de tiempo.
  • 0:41 - 0:44
    Tambien puedes usar Allocation Tracker
    para verificarlo.
  • 0:44 - 0:47
    Si usas Allocation Tracker, o sucede algo
    inesperado en TraceView o Memory Monitor,
  • 0:47 - 0:51
    compártenos, en el foro de discusión,
    una captura de pantalla de lo que te salga
  • 0:51 - 0:53
    Nos interesa mucho saber tu resultado
  • 0:53 - 0:57
    Ahora para nosotros, aun con estos
    cambios, el pirata Perf todavía se pausa
  • 0:57 - 1:00
    pero esta vez por menos tiempo.
  • 1:00 - 1:03
    Ok, a estas alturas, esto también podría
    significar que esta función es
  • 1:03 - 1:05
    probablemente una buena candidata para
    ser enviada a segundo plano
Title:
Mejora tu código para no re-escribirlo tantas veces
Description:

more » « less
Video Language:
English
Team:
Udacity
Project:
ud825 - Android Performance
Duration:
01:05

Spanish subtitles

Revisions