badboy schrieb
Außerdem solltet ihr von Anfang an sauber arbeiten.
Erstellt eigene Funktionen für die einzelnen Schritte, fangt Fehler ab, fangt falsche Abgaben ab, und ganz wichtig: fangt vor allem die Rückgabewerte von pacman ab. Nur weil ihr beim Ausführen alles richtig macht, klappts. Aber beim Programmieren sollte man auch von Fehlern der Benutzer ausgehen.
QFT!
Es ist idR. nicht schwer, ein Programm zu schreiben, was auf der eigenen Maschine, mit den eigenen Einstellungen und mit dem eigenen Wissen um die Funktion des Programms, irgendwie funktioniert.
Aber dann setz den ersten Menschen davor, der keine Ahnung davon hat und zu 99.9% wird das Programm direkt crashen.
Wenn man programmiert, um sich selbst Zeit zu sparen (z.B. kleine Skripte, die einem häufig wiederholte Schritte abnehmen, oder wo man den Anwenderkreis kennt und ggf. über Probleme reden kann), dann braucht man nicht zwangsläufig die ausgefeiltesten Fehlertoleranzmechanismen. Aber sobald man etwas für einen Benutzerkreis mit unbekannten Menschen veröffentlicht muss man dafür Sorge tragen, dass das Programm 1) Auf gar keinen Fall etwas kaputt macht (und die Gefahr ist natürlich hier gegeben, wenn man als root irgendwelche nicht stabilen Grub-Versionen oder Patches installiert) und 2) Egal, was passiert, nicht abstürzt, sondern dem Benutzer klar vermittelt, was getan werden kann, um das Problem zu beheben.
Das ist meiner Meinung nach einer der schwierigsten Punkte bei der Softwareentwicklung (und auch derjenige, weshalb ich idR. nur im Forschungsumfeld programmiere, wo die Leute wissen, wie man mit schnell zusammengehackter Software umgeht :lol:).
Ich finde es cool, dass ihr so ein Projekt angeht (das kann man nicht oft genug wiederholen, denn programmieren lernt man nur durch "learning by doing"), aber ich würde euch davor warnen, dass Skript direkt zu veröffentlichen. Ihr habt euch ein sehr hohes Ziel gesteckt. Wenn man einmal den Kniff raus hat, "wie programmieren funktioniert", also die verschiedenen Mechanismen gecheckt hat, dann ist das Erlernen einer neuen Sprache idR. nur noch eine reine Fleißaufgabe, weil man die neue Syntax auswendig lernt.
Aber bis dahin ists leider ein weiter Weg und ich würde empfehlen, erstmal ein gutes Buch zu lesen, was die Grundlagen von Strukturierung usw. klar macht. Parallel dazu können natürlich die Arbeiten an eurem Skript weitergehen und im Laufe dieses Lernprozesses wird wohl der komplette Code mehr als einmal vollständig umgekrempelt werden :lol:
Grüße,
Vrob