Entwicklungsumgebung für C

Entwicklungsumgebung für C

Ich suche nach Ideen zum Einrichten einer praktischen und produktiven Entwicklungsumgebung für die C-Entwicklung. Ich fandC-Bearbeitung mit Vimsehr hilfreich, aber ich würde gerne eine breitere Auswahl an Vorschlägen erhalten.

Antwort1

  • Emacs/Vim/Finsternis/... – Ich persönlich bin ein Emacs-Benutzer. Wenn Sie feststellen, dass die Steuersequenzen Ihren kleinen Finger ermüden, schalten Sie ihn einfach in den Viper-Modus. Emacs ist so gut in Unix integriert, dass es sehr einfach ist, alles von einem Ort aus zu steuern. Vim macht hier auch einen guten Job, aber ich finde, dass Elisp eine viel leistungsfähigere Erweiterungssprache ist als Vim Script. Man könnte stundenlang über alle Möglichkeiten sprechen, Emacs für die C-Entwicklung einzurichten. Flymake-Moduswurde bereits erwähnt und ist ein toller Einstieg. Ich kenne mich mit Eclipse nicht aus, ich finde, dass es auf meinem Bildschirm nicht genug Platz für Code lässt, und ich mag auch nicht, wie aufgebläht es ist (Vim-Benutzer werden dasselbe über Emacs sagen). Ich bin außerdem aus rein ästhetischen Gründen zu Unrecht voreingenommen gegenüber allem, was in Java geschrieben ist.

  • Tags- Kennzeichnen Sie Ihre C-Funktionen (oder viele andere Sprachen), damit Vim oder Emacs oder andere Programme ein wenig Hypertext-Links in Ihren Dateien erstellen können. Angenommen, Sie stöbern herum und sehen eine Funktion und kratzen sich am Kopf und fragen sich: „Was macht die nochmal? Die Benennung ist ein bisschen vage.“ Plink-plank-plunk, Sie können direkt zu ihrer Definition zappen.

  • Cmake/Gnu-Autotools- Make ist großartig, aber irgendwann müssen Sie die Dinge ein wenig abstrahieren, damit Ihr Projekt sich auf allen möglichen Systemen selbst erstellen kann, für die Sie keine Möglichkeit zum Testen haben. Wenn Sie nur Leute brauchen, die Ihren Code auf einem *nix erstellen, ist Autotools großartig, aber Sie sollten sich trotzdem mit Cmake vertraut machen. Das Cmake-Team erstellt Code in jeder erdenklichen Konfiguration und sorgt dafür, dass Sie sich nicht den ganzen Ärger machen müssen. Wenn Sie möchten, dass Ihr Projekt problemlos von anderen übernommen wird, ist eines dieser Tools unverzichtbar.

  • Git/Merkurial/Subversion/... – Sie könnten Monate damit verbringen, nach Software zur Versionskontrolle zu suchen, aber Sie sollten sich wahrscheinlich einfach für Git entscheiden. Es ist solide, es ist verteilt, der @$!#%& Linux-Kernel wird damit verfolgt. Wenn es für Linus gut genug ist, muss es auch für Sie gut genug sein. Ich habe auch Gutes über Mercurial gehört, anscheinend verwendet G**gle es, also ist es wahrscheinlich nicht schlecht. Manche Leute scheinen Subversion und CVS und so zu mögen. Ich mag sie nicht, weil sie monolithisch sind, was ich sehr unpraktisch und einschränkend finde.

  • Stumpwm/wmii/XMonad/... - Irgendwann werden Sie erkennen, dass alles, was Sie tun können, um Ihre Arbeit am Laufen zu halten, Ihre Leistung erheblich verbessern wird. Eine der besten Möglichkeiten, Ihr Gehirn davon abzuhalten, seinen Kontext zu zerstören, ist die Umstellung auf tastaturgesteuerte Kachel-Fenstermanager. Ich bin ein persönlicher Fan vonStumpWM, der Emacs unter den Fenstermanagern. Vollständig implementiert in einem spontan anpassbaren Common Lisp-Prozess, kann alles, was Sie immer wieder tun, in Funktionen verbannt und an Befehle gebunden werden. Tolle Sache. Über die anderen weiß ich nicht viel, aber vielleicht sollte ich weitere Ausführungen besser einem anderen Thread überlassen. VERWENDEN SIE DIE TASTATUR SO VIEL WIE MÖGLICH.

  • GDB– Ich kenne mich mit anderen Debuggern nicht aus, aber dies scheint der De-facto-Standard zu sein.

  • Valgrind- Ich kenne kein anderes Programm, das das so gut kann. Valgrind ist unverzichtbar für all die lästigen Profiling-/Speicherleckjagden, die Sie durchführen möchten. Ohne Valgrind können Sie einfach keinen Code mit malloc/calloc schreiben.

Antwort2

Ich habe eine Zeit lang an Vim festgehalten. Es lohnt sich, die VIM-Grundlagen zu kennen, da Sie immer irgendwo eine UNIX-Box finden, die nur das hat. Aber ich habe Emacs ausprobiert und es nicht bereut. Eclipse ist eine „moderne“ Alternative. Ich habe alle drei auf meinem System!

Antwort3

Es ist eine sehr persönliche Vorliebe, daher kann ich nicht viel mehr tun, als Ihnen zu sagen, was ich verwende. Ich habe Emacs eingerichtet mitFlymake-Modus, das die Datei, an der Sie arbeiten, regelmäßig kompiliert und die Compiler-Ausgabe analysiert, um herauszufinden, welche Fehler Sie gemacht haben. Es hebt die Fehler/Warnungen im Puffer hervor und zeigt die zugehörige Compiler-Fehlermeldung an.

Antwort4

Ich verwende gedit mit eingebettetem Terminal.

verwandte Informationen