Antworten:
Der Hauptvorteil besteht in den allermeisten Fällen darin, nur Speicherplatz zu sparen. Ein sekundärer und viel zweifelhafterer Vorteil ist, dass es auch schwieriger ist, die Binärdatei zu zerlegen oder zurückzuentwickeln. Dies kann auch den Speicherbedarf ein wenig verringern, obwohl dies in vielen Fällen eine vernachlässigbare Einsparung darstellt.
Der größte Nachteil ist, dass das Debuggen erheblich erschwert wird, wenn Sie auf ein Problem stoßen.
Auf einem modernen System mit CPU-Geschwindigkeiten und Speicher- / Festplattenmengen hat das Entfernen einer Binärdatei in keiner Weise praktische Auswirkungen auf die Leistung. Es geht wirklich um Debugging, "Sauberkeit" und persönliche Vorlieben. Einige Leute bevorzugen es, immer abgespeckte Binärdateien für die Produktion oder "ausgelieferte" Software zu verwenden. Einige Leute ziehen es vor, die Symbole immer "nur für den Fall" zu belassen.
Persönlich bevorzuge ich Symbole. Ich hatte im Laufe des Jahres einige wirklich frustrierende Situationen, in denen eine kommerzielle Anwendung fehlerhaft war (oder auf andere Weise abstürzte), und ich konnte nicht genau bestimmen, wo das Problem lag, da die Binärdateien entfernt wurden. In mindestens einigen dieser Fälle schickte mir der Anbieter eine nicht gestrippte Version zum Ausführen, bis sie erneut abstürzte, damit wir nützlichere Debugging-Informationen erhalten konnten. Hätten sie zu Beginn die nicht gestrippte Version bereitgestellt, hätten wir das Problem schneller und mit weniger Ausfallzeiten lösen können.
Sie können Software mit Debug-Symbolen zum Testen kompilieren und diese dann einfach für die Bereitstellung entfernen. Wenn Ihre Debugging-Symbole etwas verfügbar machen, das Sie lieber nicht verfügbar machen möchten, kann dies für Sie von Nutzen sein