Herramientas de desarrollo integradas

La enorme colección de herramientas que PyCharm ofrece de forma predeterminada incluyen un depurador y ejecutor de pruebas integrado, un perfilador Python, un terminal integrado, integración con los principales VCS y herramientas integradas de bases de datos, capacidad de desarrollo remoto con intérpretes remotos, un terminal ssh integrado e integración con Docker y Vagrant.

Depurador visual

PyCharm ofrece amplias opciones para depurar su código Python/Django y JavaScript:

  • Añada puntos de interrupción directamente dentro del editor y defina condiciones de coincidencia
  • Inspeccione variables locales relevantes al contexto y watches definidos por el usuario, incluidos vectores y objetos complejos, y edite valores sobre la marcha

Puede obtener más información sobre el depurador en la página del depurador de Python.

Depurador inline

Con un depurador inline, todos los datos de depuración en vivo se muestran directamente en el editor, y los valores de las variables quedan integrados en la presentación del editor. Es posible ver los valores de variables en el código fuente, al lado de sus usos.

Entrar en mi código

Use Entrar en mi código para enfocarse en su código: el depurador sólo avanzará paso a paso por su código, salteando cualquier fuente de biblioteca.

Depuración multiproceso

PyCharm puede depurar aplicaciones que abarcan múltiples procesos Python, tales como aplicaciones Django que no se ejecutan en modo --no-reload, o aplicaciones que usan muchos otros marcos de trabajo web que tienen un enfoque similar a la auto-recarga de código.

Configuraciones de ejecutar/depurar

Cada ejecución de un script/prueba o depurador crea una "Configuración de Ejecutar/Depurar" especial que más tarde se puede editar y usar. Las configuraciones de Ejecutar/Depurar se puede compartir con configuraciones de proyecto para que lo use todo el equipo.

Ejecute su código

Ejecútelo en cualquier entorno Python

Puede ejecutar cualquier archivo de Python. Tan solo haga clic derecho sobre lo que necesita ejecutar y seleccione "Ejecutar <your script>".

PyCharm permite configurar fácilmente el entorno Python que requiere su proyecto, sea local, con intérprete remoto o un entorno virtual.

Consola interactiva

Puede ejecutar consolas interactivas Python o Django dentro de PyCharm, lo que presenta muchas ventajas sobre las estándar: revisión de sintaxis sobre la marcha con inspecciones, emparejado automático de llaves, paréntesis y comillas y, por supuesto, finalización de código. Ambas consolas funcionan con intérpretes locales y remotos.

Terminal integrado

Esto es lo que hace a PyCharm un IDE Python integral. Ya no es necesario salir del IDE mientras desarrolla. El terminal local está disponible para Windows, Linux y macOS.

Soporte total para Python

PyCharm es compatible con todas las principales implementaciones de Python, incluidos Python 2.x y 3.x, Jython, IronPython, PyPy y Cython, y ofrece:

  • Resaltado de sintaxis, detección de errores y formateo de código
  • Finalización de código sensible al contexto
  • Navegación de código y Vista de estructura
  • Búsqueda rápida de usos y herramientas de refactorización
  • Inspecciones de código y mucho más

Pruebas de unidades

Realice pruebas de unidades con facilidad, ya que PyCharm se integra con marcos de trabajo para pruebas Python populares: doctests, nose y attest.

PyCharm le permite ejecutar sus pruebas: un archivo de prueba, una clase de prueba única, un método o todas las pruebas dentro de una carpeta. Puede ver los resultados en el ejecutor de pruebas gráfico con estadísticas de ejecución y fácil navegación del código de prueba.

Cobertura de código

PyCharm se integra con Coverage.py, una herramienta estándar para medir la cobertura de código para programas Python. Monitoriza su programa, registra qué partes del código se ejecutaron y luego analiza la fuente para identificar el código que se podría haber ejecutado pero no se ejecutó. Obtendrá los resultados en una agradable presentación visual para su posterior análisis y fácil navegación por el código.

Perfilador Python

Tome el control total de su código con la integración de Perfilador Python, compatible con yappi y cProfile. Descubra las capturas de pantalla y estadísticas detalladas con la gráfica de llamada de funciones coloreadas. Observe un informe de datos añadidos y salte desde las estadísticas de ejecución directamente a la función en su código Python.

DGC para Python

El DGC (desarrollo guiado por comportamiento) ahora es posible en Python con Behave y Lettuce. Escriba historias legibles para humanos que describen el comportamiento de su aplicación. Disfrute de la compatibilidad con PyCharm, incluida la instalación y configuración de asistentes, configuración de ejecución e Intellisense para marcos de trabajo de DGC.

Visualización de simultaneidad de subprocesos

La Visualización de simultaneidad de subprocesos le ayuda a tomar el control total sobre sus aplicaciones con múltiples subprocesos. Puede ejecutar su aplicación Python en modo Diagrama de simultaneidad usando un botón especial para inspeccionar los estados en tiempo real de los subprocesos dentro de su proceso en ejecución en un diagrama.

Sistemas de control de versiones

El soporte unificado para Git, SVN, Mercurial, Perforce y otros sistemas de control de versiones le ayuda a gestionar los cambios locales y aplicar operaciones de ramas complejas. Todas las tareas tediosas (añadir, quitar y eliminar archivos) se realizan de forma automática.

Las siguientes funcionalidades están disponibles independientemente de qué VCS use:

  • Listas de cambios integradas: agrupe sus cambios en múltiples listas de cambios para organizarlos mejor
  • Cambios archivados: deje de lado algunos cambios para restaurarlos más adelante
  • Vista de cambios al repositorio: vea lo que otros miembros del equipo han confirmado
  • Vista de cambios entrantes: vea los cambios al código que aún no se integraron en su copia local
  • Notificación de cambios obsoletos: reciba una advertencia de que un archivo sobre el que está trabajando fue modificado después de su última sincronización

Historial local

PyCharm hace el seguimiento de los cambios realizados a sus archivos fuente, protegiéndole así de cualquier pérdida o modificación accidental, incluso las hechas por otras aplicaciones. En todo momento podrá revisar el historial ya sea de un archivo o un directorio particular y volverlo atrás a cualquiera de sus versiones anteriores.

Herramienta visual integrada de Combinar

La herramienta visual integrada de combinar resuelve todos los conflictos de forma rápida e intuitiva. Los cambios realizados localmente se resaltan a medida que escribe en el medianil del editor, lo que le proporciona una navegación intuitiva y la posibilidad de deshacer cualquier cambio individual con solo 2 clics.

Visor Diff

Puede rastrear cambios con facilidad y ver las diferencias entre dos archivos, o comparar dos versiones de un archivo (cambios locales o cambios entre archivos locales y sus revisiones en un repositorio remoto) usando el Visor Diff gráfico integrado.

Herramientas para bases de datos

Acceda y modifique bases de datos

Acceda a Oracle, SQL Server, PostgreSQL, MySQL y otras bases de datos directamente desde el IDE. PyChar le ayuda a editar código SQL, explorar datos y alterar esquemas, así como tabular datos, ejecutar consultas y hasta analizar esquemas con diagramas UML.

Inyección SQL

Es posible inyectar código SQL en otros lenguajes o editarlo en el Editor SQL con resaltado de sintaxis, finalización inteligente de código, análisis de código sobre la marcha, formateo de código y navegación.

Compatibilidad con SQLAlchemy

PyCharm ofrece sugerencias de código inteligentes para la biblioteca SQLAlchemy, lo que logra mejores sugerencias y finalización automática. Los diagramas SQLAlchemy complementan la compatibilidad con este práctico conjunto de herramientas SQL al permitirle visualizar la estructura de sus datos.

PyCharm Professional Edition incorpora las últimas funcionalidades de DataGrip para ayudarle a trabajar con bases de datos. Más información sobre las funcionalidades de DataGrip

Capacidades para desarrollo remoto

Herramientas remotas SSH

La consola SSH integrada le permite conectarse a cualquier máquina remota y realizar distintas acciones por SSH. Además, las herramientas remotas de SSH se pueden configurar para ejecutar cualquier herramienta remota directamente desde el IDE al presionar una sola tecla.

Intérprete remoto

Usar un intérprete Python remoto en vez de uno local le permite ejecutar, depurar y perfilar su aplicación en un entorno similar al de producción o uno de pruebas, ya sea el servidor real o uno virtualizado creado con Vagrant o Docker.

Vagrant

Vagrant es una útil herramienta integrada nativamente en PyCharm, que está diseñada para ayudarle a crear entornos de desarrollo reproducibles. Le permite compartir una máquina virtual de desarrollo con solo compartir un sencillo script. Otros desarrolladores podrán entonces lanzar una máquina idéntica ejecutando el comando Vagrant up.

Docker

PyCharm integra Docker, una popular plataforma abierta para aplicaciones distribuidas para desarrolladores y administradores de sistemas. Especifique un intérprete Python desde un contenedor Docker y úselo en su proyecto para ejecutar, depurar y perfilar sus aplicaciones.

Integración con Sistemas de seguimiento de incidencias

Cuando su lista de PENDIENTES está en un sistema de seguimiento de incidencias, puede configurar PyCharm para que trabaje con las incidencias sin salir del IDE. Tan solo especifique su servidor de seguimiento de incidencias y:

  • Seleccione las tareas en las que trabajar de la lista definida por su filtro
  • Agrupe automáticamente los cambios del VCS bajo una tarea correspondiente
  • Confirme al VCS con el nombre/ID de tarea ya pre-completado
  • Alterne entre tareas mientras mantiene el contexto del IDE guardado (abra pestañas del editor, puntos de interrupción, etc.)

PyCharm admite los siguientes sistemas de seguimiento de errores: Atlassian JIRA, JetBrains YouTrack, Lighthouse, Pivotal Tracker, GitHub, Redmine y Trac.