AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

guter code ? Infos an den user ausgeben

Ein Thema von bernhard_LA · begonnen am 20. Feb 2018 · letzter Beitrag vom 21. Feb 2018
Antwort Antwort
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.138 Beiträge
 
Delphi 11 Alexandria
 
#1

guter code ? Infos an den user ausgeben

  Alt 20. Feb 2018, 23:09
wir sind am überlegen in jede größere Routine unserer GUI folgenden Code einzubauen um dem Benutzer ein Feed Back über den Stand der Dinge zu liefern
Ist dies guter Programmierstil, gibt es eine bessere Lösung


Delphi-Quellcode:
procedure TMyForm.OpenWindowClick(Sender: TObject);
var ....

begin
  StatusBar.simpletext := ' jetzt gehts los ....'
  MyClass := TClass.Create;
  try
    try
        { *******    }
        {   hier steht dann code ...  irgend einen Klassenaufruf  }
        MyClass.DoSomething( ...);
        StatusBar.simpletext := 'alles ging gut ';

        AddtoLogdata('routine erfolgreich', 'Name der Routine');
        { *******  }   
    exception

    on e : Exception
           begin
            AddtoLogdata('routine leider nicht erfolgreich', 'Name der Routine');
           end;
  finally
  MyClass.Free;
  StatusBar.simpletext := 'jetzt fertig ';
  end;
end;

end;
  Mit Zitat antworten Zitat
Benutzerbild von p80286
p80286

Registriert seit: 28. Apr 2008
Ort: Stolberg (Rhl)
6.659 Beiträge
 
FreePascal / Lazarus
 
#2

AW: guter code ? Infos an den user ausgeben

  Alt 20. Feb 2018, 23:35
Ich finde es akzeptabel, wenn Du diese Information in einem Logfile ausgibst. Ottilie Normalbenutzerin will eine Aufgabe erledigt haben, da reichen zwei Nachrichten "Fertig" oder "Fehler aufgetreten weil .....".
Im übrigen hat das mit gutem Code wenig zu tun sondern gehört eher zur Gestaltung der Benutzeroberfläche.

Gruß
K-H
Programme gehorchen nicht Deinen Absichten sondern Deinen Anweisungen
R.E.D retired error detector
  Mit Zitat antworten Zitat
Delphi-Laie

Registriert seit: 25. Nov 2005
1.474 Beiträge
 
Delphi 10.1 Berlin Starter
 
#3

AW: guter code ? Infos an den user ausgeben

  Alt 20. Feb 2018, 23:53
wir sind am überlegen in jede größere Routine unserer GUI folgenden Code einzubauen um dem Benutzer ein Feed Back über den Stand der Dinge zu liefern
Ist dies guter Programmierstil, gibt es eine bessere Lösung
Das ist "graphisches Debugging", an dem, wenn das so ausgeliefert werden sollte, auch die Anwender ihren herzlichen Anteil haben werden. Wenn es nicht zu oft "anschlägt", wohl akzeptabel, ansonsten riecht der Kunde womöglich Lunte, daß er eingespannt wird.

Auf der anderen Seite: Investiert lieber in die Fehlerdetektion und -beseitigung! Dazu kann der geplante zusätzliche Code natürlich sehr helfen.
  Mit Zitat antworten Zitat
Daniel
(Co-Admin)

Registriert seit: 30. Mai 2002
Ort: Hamburg
13.920 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: guter code ? Infos an den user ausgeben

  Alt 21. Feb 2018, 06:33
Das ist in der Tat des UI-Konzepts. Mit Blick auf die Software-Ergonomie sind Rückmeldungen an den Benutzer absolut wichtig. Nur so nimmt man ihn mit und gibt ihm die Gewissheit, dass er die Software und die ausgelösten Vorgänge steuert - und nicht umgekehrt. Eine spätere Ausbaustufe wäre aus Usability-Sicht die Option, Vorgänge abbrechen und rückstandsfrei zurücksetzen zu können (geht nicht immer, gibt dem Anwender aber eine große Sicherheit, keine unkorrigierbaren Fehler zu machen).

In der Entscheidung, dem Anwender (sinnvolle sind hilfreiche) Rückmeldungen zu geben, kann man Euch nur bestärken. Mit „graphischem Debugging“ hat das nichts zu tun.
Daniel R. Wolf
mit Grüßen aus Hamburg
  Mit Zitat antworten Zitat
bernhard_LA

Registriert seit: 8. Jun 2009
Ort: Bayern
1.138 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: guter code ? Infos an den user ausgeben

  Alt 21. Feb 2018, 07:25
kann man dieses Problem mit Anonymen Methoden besser lösen , in der Art wie ....

Delphi-Quellcode:
procedure ShowHourGlass(Proc: TProc);
 var
 OldCursor: TCursor;
 begin
  OldCursor := Screen.Cursor;
  Screen.Cursor := crHourGlass;
  try
    Proc;
  finally
   Screen.Cursor := OldCursor
  end;
 end;


man müsste dann eine Unmenege An Functionsprototypen deklarien und hätte lange ÜbergabeListen ..... ist dies nicht sehr unschön
anderseits immer den selben code in eine UI Funktion eintippen ... auch nicht schön
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.196 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: guter code ? Infos an den user ausgeben

  Alt 21. Feb 2018, 08:14
kann man dieses Problem mit Anonymen Methoden besser lösen , in der Art wie ....
Wir benutzen dafür ein Interface.
Wird dieses Freigegen (oder auf nil gesetzt) wird der alte Curser wieder hergestellt.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Nathan

Registriert seit: 6. Nov 2003
Ort: Birmensdorf / Zürich
29 Beiträge
 
Delphi 10.2 Tokyo Enterprise
 
#7

AW: guter code ? Infos an den user ausgeben

  Alt 21. Feb 2018, 08:54
Hatte dazu mal mit dem Ansatz AOP (Aspect-oriented programming) experimentiert. Delphi bietet dazu den System.Rtti.TVirtualMethodInterceptor http://docwiki.embarcadero.com/RADSt...-Interzeptoren
Gerade zum Loggen Ideal.

Gibt ein paar schöne Videos dazu z.B. von Jeroen W. Pluimers https://wiert.me/2015/06/24/aspect-o...ing-in-delphi/

Gruss
Nathan
Nathan Chanan Thurnreiter
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.736 Beiträge
 
Delphi 6 Enterprise
 
#8

AW: guter code ? Infos an den user ausgeben

  Alt 21. Feb 2018, 09:12
Hallo,

kennt jemand das Programm Calibre zur Ebook-Verwaltung? Da finde ich ist sowas ganz schön gelöst. Da kann man verschiedene Aufgaben anstarten und unten in der Statusleiste dreht sich ein kleines Zahnrad, dabeben eine Zahl mit der Anzahl der Aufgaben, die gerade im Hintergrund abgearbeitet werden.
Klingt man dann auf das Zahnrad, geht ein Fenster mit Detail-Infos auf.

Vieleicht kann man sowas ähnlich umsetzen, hier geht es ja nicht um Aufgaben o.ä., sondern um normale Funktionen/Prozeduren über deren Status informiert werden soll?
Ralph
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.464 Beiträge
 
Delphi 12 Athens
 
#9

AW: guter code ? Infos an den user ausgeben

  Alt 21. Feb 2018, 10:17
Vorhersehbare Fehler sollten eigentlich durch den Anwendungsfall verarbeitet werden.
Für sonstige Fehler gibts Tools wie madExcept oder Eurekalog.

Der Anwender erwartet aber nicht nur eine Rückmeldung zu Beginn oder Ende einer Funktion, sondern insbesondere wenn eine Funktion über längere Zeit läuft.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz