AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Algorithmen, Datenstrukturen und Klassendesign Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten
Thema durchsuchen
Ansicht
Themen-Optionen

Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

Ein Thema von thomasschaf · begonnen am 25. Mär 2012 · letzter Beitrag vom 27. Mär 2012
Antwort Antwort
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.073 Beiträge
 
Delphi 10.4 Sydney
 
#1

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 19:11
ZeitString(1234567890) = 14 day, 6 hrs, 56 min, 7 sec, 890 ms Hoffentlich ist es jetzt nachvollziehbarer.
Nichtsdestotrotz ist das schlimmer Augenkrebs.
Bitte so NICHT Software programmieren.
Wenn derartige Helper-Funktionen schon so aussehen - also unnötig kompliziert und fünfmal quergedacht - wie sieht dann ein richtiges Programm bei dir aus?
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#2

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 20:58
Auch mit Kommentaren wird ein Programm nicht lesbarer. Guter Code kommt ohne Kommentare aus. Das fängt bei lesbaren und aussagekräftigen Bezeichnern an, wobei die Sprache zweitrangig ist. Es gibt zwar Programmierer, die von deutschen Bezeichnern "Augenkrebs" bekommen, aber dabei frage ich mich immer, wie sie wohl deutsche Straßennamen oder einfach eine deutsche Zeitung lesen.

Kommentare, wie z.B. For i:=1 to 10 do // hier wird von 1 bis 10 gezählt dienen ja nicht wirklich der Lesbarkeit, denn wer das ohne Kommentare nicht versteht, wird es auch mit Kommentaren nicht kapieren. Also sind sie an dieser Stelle überflüssig.

Da Du offensichtlich den Code nicht so hinbekommst, wie Du es gerne hättest, sollten wir ihn zunächst entwanzen. Ich schließe dies aus dem Kommentar
Zitat von einem Kommentar in deinem Code:
...das ganz oben genannte Problem könnte auch hierher kommen, weil ich die Länge auf c+2 setze, bei c+1 oder gar c gibts aber Access violation
.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.343 Beiträge
 
Delphi 12 Athens
 
#3

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 21:11
Delphi-Quellcode:
var
  c: integer = 1; // gibt die Größe des Arrays an

  procedure SetN(ABez: string; AMul: integer); // Hiermit kann man eine neue Einheit hinzufügen
  begin
    SetLength(n, c + 2); // Zuerst den Array vergrößeren (das ganz oben genannte Problem könnte auch hierher kommen, weil ich die Länge auf c+2 setze, bei c+1 oder gar c gibts aber Access violation)
    n[c].Bez := ABez; // einfach die Bezeichnung setzen
    n[c].Mul := AMul; // und hier den entsprechenden Faktor (Erklärung oben beim record)
    Inc(c); //
A: Man kann die Länge auch aus dem Array auslesen, denn das zählt nicht umsonst selber mit.

B: Dynamische Arrays beginnen bei 0 und nicht 1.
Da muß es ja knallen.

PS: Debuggen hilft Wunder, man muß es nur nutzen.
Und dazu noch in den Projektoptionen die Bereichsprüfung aktivieren, vorallem wenn man des Debuggens nicht mächtig ist.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.073 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 21:17
Es gibt zwar Programmierer, die von deutschen Bezeichnern "Augenkrebs" bekommen, aber dabei frage ich mich immer, wie sie wohl deutsche Straßennamen oder einfach eine deutsche Zeitung lesen.
Von links nach rechts und von oben nach unten?

Ein derartiges Desperanto hat in diesem Kontext (Programmierung & Quelltextgestaltung) nichts verloren.
Der Vergleich zu einer deutschen Zeitung mit deutschen Wörtern in deutschen Sätzen...oder um es kurz zu sagen: in deutscher Sprache...ist hier fehl am Platz und fordert geradezu die berühmte Äpfel/Birnen-Metapher.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#5

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 21:45
Ein derartiges Desperanto hat in diesem Kontext (Programmierung & Quelltextgestaltung) nichts verloren.
Der Vergleich zu einer deutschen Zeitung mit deutschen Wörtern in deutschen Sätzen...oder um es kurz zu sagen: in deutscher Sprache...ist hier fehl am Platz und fordert geradezu die berühmte Äpfel/Birnen-Metapher.
Absoluter Blödsinn, mit Verlaub. Jeder halbwegs talentierte Programmierer ist in der Lage, "If ZahlVonLinks > ZahlVonRechts" zu lesen und zu vestehen. Wer damit Probleme hat, sollte es sein lassen.

Deutsche Nomenklatur ist unter erfahrenen Programmierern, zumindest in meinem Umfeld (>10-20 Jahre Praxis) akzeptiert und wird gefördert. Es ist immer noch besser, als schlechte englische Bezeichner, aus dict.leo.org zusammengeklaubt und damit häufig falsch und irreführend.

Im internationalen Teams ist das natürlich fehl am Platz: Dort gilt das Gesetz der Mehrheit (und nicht: English or Die). Im aktuellen Team aus 30 Steuerungsprogrammierern ist deutsch jedenfalls Standard. Im letzten Team war es (logischerweise) englisch.

Wenn die von dir ziemlich isoliert bezeichnete "Desperanto"-Nomenklatur auch zu Augenkrebs führt, dann geh zum Augenarzt.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.073 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 22:21
Wenn die von dir ziemlich isoliert bezeichnete "Desperanto"-Nomenklatur auch zu Augenkrebs führt, dann geh zum Augenarzt.
Mein "Augenkrebs" bezog sich auf die unnötige Verkomplizierung eines eher trivialen Problems.

Absoluter Blödsinn, mit Verlaub. Jeder halbwegs talentierte Programmierer ist in der Lage, "If ZahlVonLinks > ZahlVonRechts" zu lesen und zu vestehen. Wer damit Probleme hat, sollte es sein lassen.
Mit Verlaub, das ist ebenfalls absoluter Blödsinn.

Wie du selber weiter unten richtig bemerkst, geht das ab einen gewissen Professionalitätsniveau einfach nicht.
Ich weiß nicht in was für Arten von Firmen die meisten hier arbeiten und Software entwicklen.
Darüber will ich mir auch kein Urteil erlauben.
Manchmal kommt der Eindruck auf, dass die meisten nur Datenbankkomponenten auf Forms schieben und bissel Zauberpulver darüber streuen oder nichts weiter tun als Strings auseinander und zusammenzuwürfeln, aber na ja...

In Zeiten von internationalen Teams, ausländischen Tochterfirmen mit eignen Entwicklern und nichtdeutschen SDK-Anwendern/Kunden kann man Sachen wie "ZahlVonLinks" oder "ZahlVonRechts" nicht bringen.

Klar ist es oft einfacher und schneller, weil intuitiver, deutsche Bezeichner zu verwenden.
Aber spätestens wenn das Modul abgeschlossen ist und alles zufriedenstellend funktioniert, sollte man per Refactoring das Ganze bearbeiten.
Wenn in fünf Jahren der franzöische Kollege, der indische Programmierer (der per Outsourcing deinen deutschen Gulasch lesen muss) oder der kalifornische Kunde etwas damit anzufangen will, sollte das ohne Wörterbuch gehen.
Denn dann bist du schon lange nicht mehr für diesen Quelltext verantwortlich, entweder weil hast du die Firma verlassen hast oder die Karriereleiter hochgefallen bist.

Es ist einfach eine Frage der Höflichkeit.

Es ist immer noch besser, als schlechte englische Bezeichner, aus dict.leo.org zusammengeklaubt und damit häufig falsch und irreführend.
Wenn das so ein Problem darstellt, dann sind die Namen auch teilweise zu lang oder beschreiben zuviel (das Und-Problem bei Funktionen).
Auch ich bin keiner der von sich sagt, dass er problemlos in allen Lebenssituationen mit einen native speaker mithalten kann, aber ich kann zumindest versuchen halbwegs passende Bezeichner zu wählen.

Ich denke, dass nichtdeutschsprachige Kollegen eher ein "NumberFromLeft" interpretieren können als ein "ZahlVonLinks".

Je eher man sich daran gewöhnt, desto geringer fällt die Umgewöhnung aus, wenn es wirklich gefordert ist.

Ich gebe aber zu meine Quelltexte mit englischen Wörtern zu gestalten, aber ab und zu auch mal Kommentare in deutsch zu schreiben.
Dass dann aber bewusst aus Faulheit und Bequemlichkeit.
  Mit Zitat antworten Zitat
vagtler

Registriert seit: 9. Jul 2010
Ort: Köln
667 Beiträge
 
Delphi 2010 Professional
 
#7

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 22:30
[...] Manchmal kommt der Eindruck auf, dass die meisten nur Datenbankkomponenten auf Forms schieben und bissel Zauberpulver darüber streuen oder nichts weiter tun als Strings auseinander und zusammenzuwürfeln, aber na ja... [...]
Danke, Du sprichst mir aus der Seele.

Leider bewahrheitet sich diese Vermutung auch bei etwas über 90% aller Bewerbungen, die bei mir auf dem Schreibtisch landen...
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.343 Beiträge
 
Delphi 12 Athens
 
#8

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 22:32
Deutsch:
http://www.delphipraxis.net/135569-m...athelib-_.html

Wenn alle in der Firma mitmachen, würde ich darin kein Hindernis sehn. (Hat den Vorteil, daß die I... von der Cheffabteilung auch mal ein Bissl was verstehen könnten)
OK, schlimmer ist es, wenn ich mir chinesische oder russische Codes anguck.
Ein Therapeut entspricht 1024 Gigapeut.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#9

AW: Vorstellung des Codes zur übersichtlichen Anzeige von Zeiten

  Alt 26. Mär 2012, 22:46
Warum muss so eine Diskussion nur immer ins Persönliche abgleiten? *seufz* Könnt ihr euch nicht mal am Riemen reißen und sachlich über einen Code diskutieren?

Und außerdem geht es hier nicht um die Sprache der Bezeichner oder Kommentare.
Michael
Ein Teil meines Codes würde euch verunsichern.
  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 18:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz