

# SUS03-BP03: Optimización de las áreas de código que consumen la mayor parte del tiempo o de los recursos
<a name="sus_sus_software_a4"></a>

Optimice el código que se ejecuta en los distintos componentes de su arquitectura para minimizar el uso de los recursos y, a la vez, maximizar el rendimiento.

 **Patrones comunes de uso no recomendados:** 
+  Ignora la optimización del código para el uso de recursos. 
+  Normalmente responde a los problemas de rendimiento con un aumento de los recursos. 
+  Su proceso de revisión y desarrollo del código no realiza un seguimiento de los cambios de rendimiento. 

 **Beneficios de establecer esta práctica recomendada:** El uso de código eficiente minimiza el uso de recursos y mejora el rendimiento. 

 **Nivel de riesgo expuesto si no se establece esta práctica recomendada:** Medio 

## Guía para la implementación
<a name="implementation-guidance"></a>

 Es fundamental examinar cada área funcional, incluido el código de una aplicación con arquitectura de nube, para optimizar su uso de recursos y su rendimiento. Supervise continuamente el rendimiento de la carga de trabajo en los entornos de creación y producción e identifique oportunidades para mejorar los fragmentos de código que tienen un uso de recursos especialmente elevado. Adopte un proceso de revisión periódico para identificar errores o antipatrones en su código que utilicen los recursos de forma ineficiente. Use algoritmos sencillos y eficaces que produzcan los mismos resultados para su caso de uso. 

## Pasos para la implementación
<a name="implementation-steps"></a>
+  Durante el desarrollo de sus cargas de trabajo, adopte un proceso automatizado de revisión del código para mejorar la calidad e identificar errores y antipatrones. 
  + [ Automate code reviews with Amazon CodeGuru Reviewer (Revisiones automáticas de código con Amazon CodeGuru Reviewer) ](https://aws.amazon.com/blogs/devops/automate-code-reviews-with-amazon-codeguru-reviewer/)
  + [ Detecting concurrency bugs with Amazon CodeGuru (Detección de errores de simultaneidad con Amazon CodeGuru) ](https://aws.amazon.com/blogs/devops/detecting-concurrency-bugs-with-amazon-codeguru/)
  + [ Raising code quality for Python applications using Amazon CodeGuru (Mejora de la calidad del código para aplicaciones Python con Amazon CodeGuru) ](https://aws.amazon.com/blogs/devops/raising-code-quality-for-python-applications-using-amazon-codeguru/)
+  A medida que ejecute las cargas de trabajo, supervise los recursos para identificar los componentes con elevados requisitos de recursos por unidad de trabajo como objetivos de las revisiones de código. 
+  Para las revisiones de código, use un generador de perfiles de código para identificar las áreas de código que emplean más tiempo o recursos como objetivo de la optimización. 
  + [ Reducing your organization's carbon footprint with Amazon CodeGuru Profiler (Reducción de la huella de carbono de su organización con Amazon CodeGuru Profiler) ](https://aws.amazon.com/blogs/devops/reducing-your-organizations-carbon-footprint-with-codeguru-profiler/)
  + [ Understanding memory usage in your Java application with Amazon CodeGuru Profiler (Descripción del uso de memoria en su aplicación Java con Amazon CodeGuru Profiler) ](https://aws.amazon.com/blogs/devops/understanding-memory-usage-in-your-java-application-with-amazon-codeguru-profiler/)
  + [ Improving customer experience and reducing cost with Amazon CodeGuru Profiler (Mejora de la experiencia del cliente y reducción de costes con Amazon CodeGuru Profiler) ](https://aws.amazon.com/blogs/devops/improving-customer-experience-and-reducing-cost-with-codeguru-profiler/)
+  Use el sistema operativo y el lenguaje de programación más eficaces para la carga de trabajo. Para obtener más información sobre los lenguajes de programación energéticamente eficientes (incluido Rust), consulte [Sustainability with Rust (Sostenibilidad con Rust)](https://aws.amazon.com/blogs/opensource/sustainability-with-rust/). 
+  Reemplace los algoritmos que hacen un uso intensivo de la computación por versiones más sencillas y eficientes que produzcan el mismo resultado. 
+  Elimine el código innecesario, como la ordenación y el formato. 

## Recursos
<a name="resources"></a>

 **Documentos relacionados:** 
+  [¿Qué es Amazon CodeGuru Profiler?](https://docs.aws.amazon.com/codeguru/latest/profiler-ug/what-is-codeguru-profiler.html) 
+  [Instancias de FPGA](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/fpga-getting-started.html) 
+  [SDK de AWS en Herramientas para crear en AWS](https://aws.amazon.com/tools/) 

 **Vídeos relacionados:** 
+ [ Improve Code Efficiency Using Amazon CodeGuru Profiler (Mejora de la eficiencia del código con Amazon CodeGuru Profiler) ](https://www.youtube.com/watch?v=1pU4VddsBRw)
+ [ Automate Code Reviews and Application Performance Recommendations with Amazon CodeGuru (Automatización de las revisiones de código y las recomendaciones de rendimiento de aplicaciones con Amazon CodeGuru) ](https://www.youtube.com/watch?v=OD8H63C0E0I)