Ich bin überrascht, dass niemand die offensichtliche Antwort gegeben hat und ich vermute, die in der Praxis am häufigsten verwendete: Lies einfach nicht die Fehlermeldungen.
Die überwiegende Mehrheit des Werts der meisten Fehlermeldungen besteht einfach darin, dass in dieser oder jener Zeile etwas nicht stimmt. Meistens schaue ich mir nur die Zeilennummer an und gehe zu dieser Zeile. Mein "Lesen" der Fehlermeldung zu diesem Zeitpunkt ist normalerweise genau das, was mein Auge im Vorbeigehen bemerkt, nicht einmal ein Überfliegen. Wenn nicht sofort klar ist, was an oder in der Nähe der Leitung nicht stimmt, lese ich die Nachricht tatsächlich. Dieser Workflow ist mit einer IDE oder einem Tool, das Fehler vor Ort hervorhebt, noch besser und befolgt automatisch den Vorschlag von Karl Bielefeldt, nur kleine Änderungen zu berücksichtigen.
Natürlich zeigen die Fehlermeldungen nicht immer auf die entsprechende Zeile, aber dann zeigen sie oft auch nicht auf die entsprechende Grundursache, sodass selbst ein umfassendes Verständnis der Fehlermeldung nur bedingt hilfreich ist. Es dauert nicht lange, um eine Vorstellung davon zu bekommen, welche Fehlermeldungen zuverlässiger sind, wenn es darum geht, die richtige Leitung zu finden.
Einerseits sind die meisten Fehler, die ein Anfänger wahrscheinlich macht , für einen erfahrenen Programmierer schmerzhaft offensichtlich, ohne dass die Hilfe des Compilers erforderlich ist. Auf der anderen Seite ist es weniger wahrscheinlich, dass sie für den Anfänger so offensichtlich sind (obwohl viele offensichtlich sind, sind die meisten Fehler dumme Fehler). An diesem Punkt stimme ich Robert Harvey voll und ganz zu, der Anfänger muss sich nur mit der Sprache vertraut machen. Daran führt kein Weg vorbei. Compiler-Fehler, die auf unbekannte Konzepte verweisen oder überraschend erscheinen, sollten als Aufforderung zur Vertiefung der Sprachkenntnisse angesehen werden. Ähnliches gilt für Fälle, in denen der Compiler sich beschwert, Sie jedoch nicht erkennen können, warum der Code falsch ist.
Auch hier stimme ich Robert Harvey zu, dass eine bessere Strategie zur Ausnutzung von Compilerfehlern erforderlich ist. Ich habe oben einige Aspekte umrissen, und die Antwort von Robert Harvey enthält andere Aspekte. Es ist nicht einmal klar, was Ihr Freund mit einem solchen "Glossar" zu tun hofft, und es ist sehr unwahrscheinlich, dass ein solches "Glossar" Ihrem Freund tatsächlich von großem Nutzen ist. Compilerbotschaften sind sicherlich nicht der Ort für eine Einführung in die Konzepte der Sprache 1 und ein "Glossar" ist dafür nicht viel besser geeignet. Selbst mit einer klaren Beschreibung der Bedeutung der Fehlermeldung erfahren Sie nicht, wie Sie das Problem beheben können .
1 Einige Sprachen wie Elm und Dhall (und wahrscheinlich Racket) sowie einige "Anfänger-orientierte" Implementierungen von Sprachen versuchen dies jedoch. In diesem Sinne ist der Rat von MSalters, eine andere Implementierung zu verwenden, direkt relevant. Ich persönlich finde solche Dinge nicht überzeugend und nicht ganz auf das richtige Problem ausgerichtet. Das soll nicht heißen, dass es keine Möglichkeiten gibt, bessere Fehlermeldungen zu erstellen, aber für mich dreht sich alles darum, die Überzeugungen des Compilers und die Grundlage dieser Überzeugungen klarer zu machen.