it-swarm-es.com

¿Cuál es el mejor depurador de Linux C/C++ (o front-end to gdb) para ayudar a enseñar programación?

Enseño una clase de curso de programación en C++ "lite" para principiantes ("lite" significa que no hay punteros, no hay clases, solo C antigua, más referencias y cadenas y vectores STL). Los estudiantes no tienen experiencia previa en programación, por lo que creo que usar un depurador interactivo los ayudaría a comprender el flujo del programa, las variables y la recursión.

El curso se imparte en linux. Enseñarles a usar gdb es simplemente una exageración (no usarán ni entenderán la mayoría de las funciones). Solo necesito algo simple pero fácil de usar: para ver en qué línea está el programa ahora, qué hay en la pila (variables locales, llamadas anteriores, etc.). Parezco algo similar al viejo Turbo Pascal o al depurador de Turland C++ Borland, o al depurador de Visual Studio.

Gracias,

106
omer.gimenez

ddd es una interfaz gráfica para gdb que es bastante agradable. Uno de los aspectos negativos es una interfaz X clásica, pero me parece recordar que es bastante intuitivo.

35
jbleners

Puede intentar usar Insight un front-end gráfico para gdb escrito por Red Hat. O si usa el entorno de escritorio GNOME, también puede probar Nemiver .

25
Narek Babajanyan

Es posible que desee revisar Eclipse CDT. Proporciona un C/C++ IDE que se ejecuta en múltiples plataformas (por ejemplo, Windows, Linux, Mac OS X, etc.). La depuración con Eclipse CDT es comparable a usar otras herramientas como Visual Studio.

Puede consultar el tutorial de depuración de CDT de Eclipse que también incluye varias capturas de pantalla.

16
Jon Ball

Qt Creator , aparte de otros beneficios, también tiene una buena integración de depurador, para CDB, GDB y el depurador de Symnbian, en todas las plataformas compatibles. No es necesario que use Qt para usar el IDE de Qt Creator, ni tampoco que use QMake; también tiene integración con CMake, aunque QMake es muy fácil de usar.

Es posible que desee usar Qt Creator como IDE para enseñar a programar, ya que tiene algunas buenas características:

  • Muy inteligente y avanzado editor de C++
  • Proyectar y construir herramientas de gestión.
  • Integración QMake y CMake
  • Sistema de ayuda integrado, sensible al contexto
  • Excelente depurador visual (CDB, GDB y Symbian)
  • Soporta GCC y VC++
  • Herramientas de navegación de código rápido
  • Soporta Windows, Linux y Mac OS X
14
CMircea

Quizás sea indirecto para gdb (porque es un IDE), pero mis recomendaciones serían KDevelop . Al estar bastante mimado con el depurador de Visual Studio (profesionalmente en el trabajo durante muchos años), hasta ahora he sentido la depuración más cómoda en KDevelop (como pasatiempo en casa, porque no podía pagar Visual Studio para uso personal, hasta que salió Express Edition ). Se ve "similar a" Visual Studio en comparación con otros IDE con los que he experimentado (incluido Eclipse CDT) cuando se trata de depurar paso a paso, paso, etc. (colocar puntos de ruptura es un poco incómodo porque no lo hago) No me gusta usar el mouse demasiado cuando se codifica, pero no es difícil).

12
HidekiAI

Trabajo para TotalView y tenemos una versión gratuita para estudiantes de nuestro depurador comercial Linux C++ (también Fortran y MPI, y subprocesos).

http://www.roguewave.com/company/academic-programs.aspx

Vale la pena señalar que también tenemos precios muy descontados para licencias "compartidas en el aula".

Consulte http://www.roguewave.com/products/totalview/resources/videos.aspx para ver algunos videos rápidos que ilustran cómo funciona el producto.

Algunas características específicas que TotalView tiene para C++:

  • Transformación automática de clases de colección STL en algo razonable.
  • "Bucear" en los punteros para ver a qué se apunta.
  • Fácil "casting" de punteros a matrices
  • La capacidad de mirar un solo campo de datos en cada instancia de un objeto en una matriz de objetos
  • Establecer un punto de interrupción en todas las instancias de una clase

Chris Gottbrath TotalView Product Manager Rogue Wave Software

4
Chris Gottbrath