Який найкращий налагоджувач Linux C / C ++ (або передній-gdb) для навчання навчанню програмуванню? [зачинено]


106

Я викладаю початківцям такий собі "програмуючий" курс програмування на C ++ ("lite", що означає відсутність покажчиків, ніяких класів, просто звичайний C, плюс посилання та рядки та вектори STL). У студентів немає попереднього досвіду програмування, тому я вважаю, що використання інтерактивного налагоджувача допоможе їм зрозуміти потік програми, змінні та рекурсію.

Курс викладається в Linux. Навчити їх використовувати gdb просто зайве (вони не використовуватимуть і не розуміють більшість функцій). Мені просто потрібно щось просте, але просте у використанні: побачити, в якому рядку зараз програма, що знаходиться в стеці (локальні змінні, попередні дзвінки тощо). Я виглядаю щось схоже на старий відладчик Turbo Pascal або налагоджувач Turbo C ++ Borland або налагоджувач Visual Studio.

Дякую,


4
Я не отримую обґрунтування викладання C ++ без занять. Але я визнаю зусилля ... Вчити я маю на увазі :-)
— m-ric

1
C / C ++ не здається мені гарним варіантом для початківців ...
— Jaime Hablutzel

Відповіді:


36

ddd - це графічний фронт-каталог gdb, що дуже приємно. Однією з нижніх сторін є класичний інтерфейс X, але, здається, я пам'ятаю, що він був досить інтуїтивним.


2
DDD дійсно є чудовим фронтендом. Раніше я навчав C ++. Мої студенти ніколи не могли зрозуміти, як використовувати gdb, але після того, як вони показали їм швидку екскурсію по DDD (лише самі основи, і сказавши їм компілювати з -g), вони швидко стали набагато більш досвідченими у налагодженні свого коду та розумінні того, що сталося. Користувальницький інтерфейс може виглядати "старим і датованим", але навіщо фіксувати те, що, очевидно, працює?
— wasatz

43
ddd має один з найпотворніших інтерфейсів, які я коли-небудь бачив imgur.com/UFTBjnW
— ubershmekel

3
хоча я багато використовував ddd для C, він має досить погану підтримку векторів та std :: речі взагалі. Це регулярно вимагає, щоб я надавав зловмисне ім’я чогось, щоб також встановити точку перерви. Я б не рекомендував це студентам, які роблять свої перші C ++ кроки.
— PypeBros

1
DDD чудово підходить для перевірки структур даних, оскільки ви можете викласти їх на великий стіл і побачити, як вони вказують один на одного та ін. Але це правда, що це корисно лише для даних у стилі C (відсутність STL, вказівники скрізь).
— Роман Плошил

1
Ця річ, як 17 років.
— Рольф

25

Ви можете спробувати використовувати Insight графічний фронтальний для gdb, написаний Red Hat Або якщо ви використовуєте середовище GNOME для робочого столу, ви можете також спробувати Nemiver .


4
Insight настільки приголомшливий, але його було видалено з Debian, і я не можу встановити його на моєму Linux. Я не знаю, хто відповідає, але він увійшов до мого списку смертних ворогів, і якщо я зустрінусь з ним, він зіткнеться з моїм гнівом! Будь-хто; Є ще спосіб , щоб він працює , але інтерфейс трохи заплющеними: baptiste-wicht.com/2012/01 / ...
— MasterMastic

@SamuelLampa APT-отримати установку nemiver
— Нарек Бабаджаняна

@MasterMastic, її видалили, оскільки ніхто не підтримував її, я думаю. Не хвилюйтесь, ви можете перейняти це!
— andrewsh

16

Ви можете перевірити Eclipse CDT. Він забезпечує C / C ++ IDE, який працює на декількох платформах (наприклад, Windows, Linux, Mac OS X тощо). Налагодження за допомогою Eclipse CDT можна порівняти з використанням інших інструментів, таких як Visual Studio.

Ви можете переглянути підручник з налагодження Eclipse CDT, який також містить низку скріншотів.


14
Чувак, студентам знадобляться тижні, щоб просто вивчити затемнення.
— MrFox

14
-1 для рекомендування Eclipse
— Celeritas

7
Я не буду -1 балів, але IDE смокче.
— ovrwngtvity

2
А оскільки ви, хлопці, так нарікаєте, що ви рекомендуєте? code :: блоки, які не оновлювались уже 3 роки?
— ДжонДжон

3
Eclipse чудово підходить для Java, але це досить погано для C / C ++ ...

14

Qt Creator , окрім інших продуктів, також має гарну інтеграцію налагоджувачів для CDB, GDB та налагоджувача Symnbian на всіх підтримуваних платформах. Вам не потрібно використовувати Qt, щоб використовувати ID Qt Creator IDE, а також не використовувати QMake - він також має інтеграцію CMake, хоча QMake дуже простий у використанні.

Ви можете використовувати Qt Creator як IDE для навчання програмуванню, вважайте, що він має деякі хороші функції:

  • Дуже розумний та просунутий редактор C ++
  • Проектування та побудова інструментів управління
  • Інтеграція QMake та CMake
  • Інтегрована, контекстно-залежна система допомоги
  • Відмінний візуальний налагоджувач (CDB, GDB та Symbian)
  • Підтримує GCC та VC ++
  • Інструменти навігації швидкого коду
  • Підтримує Windows, Linux та Mac OS X

Чи підтримує він налагодження невеликих програм, у яких немає файлів проектів? Пам’ятаю, я використовував це для своєї більшої програми, але перша установка була досить болісною, хоча IDE дуже хороший.
— syockit

12

Можливо, це непрямо до gdb (тому що це IDE), але мої рекомендації будуть KDevelop . Будучи досить зіпсований налагоджувачем Visual Studio (професійно на роботі протягом багатьох років), я до цих пір відчував себе найзручнішою налагодженням у KDevelop (як хобі вдома, тому що я не міг дозволити собі Visual Studio для особистого використання - поки не вийшла Express Edition ). Це "виглядає чимось схожим на" Visual Studio порівняно з іншими IDE, з якими я експериментував (включаючи Eclipse CDT), коли справа доходить до налагодження покрокового, крокового та інше (розміщення точок зламу трохи незручно, тому що я цього не роблю " не люблю використовувати мишу занадто багато при кодуванні, але це не складно).

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.