Delphi-PRAXiS
Seite 7 von 7   « Erste     567   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Klatsch und Tratsch (https://www.delphipraxis.net/34-klatsch-und-tratsch/)
-   -   Die häufigsten Programmierirrtümer (https://www.delphipraxis.net/149587-die-haeufigsten-programmierirrtuemer.html)

Matze 25. Mär 2010 19:34

Re: Die häufigsten Programmierirrtümer
 
Zitat:

Zitat von himitsu
Man macht da eigentlich keines hin, aber wenn dort Eines ist, dann ist es nicht verkehrt.
Ebenso werden doppelte Semikola tolleriert.

Es ist zwar nicht verkehrt, aber schlichtweg überflüssig und irritiert (jawohl, da haben wir das Wort) den, der Quelltext lesen muss.
Es werden übrigens nicht nur doppelte ignoriert, sondern alle > 1.
Bzw. ignoriert ist nicht ganz richtig. Es handelt sich einfach um leere und somit überflüssige Anweisungen.

Auch das kompiliert und funktioniert (so programmiert hoffentlich keiner von euch *g*):

Delphi-Quellcode:
function GetAnswer: Integer;
begin
;;;;;;;;;;;;;;;         ;; ;; ;;;;;; ;;     ;;      ;;;;
;;;;;;;;;;;;;;;         ;; ;; ;;     ;;     ;;     ;; ;;
;;Result := 42;         ;;;;;; ;;;;   ;;     ;;     ;; ;;
;;;;;;;;;;;;;;;         ;; ;; ;;     ;;     ;;     ;; ;;
;;;;;;;;;;;;;;;         ;; ;; ;;;;;; ;;;;;; ;;;;;;  ;;;;
end;
Aber genug "OT". ;)

@Daniel: Stimmt, das Verhalten hätte ich auch nicht erwartet.

arbu man 25. Mär 2010 19:38

Re: Die häufigsten Programmierirrtümer
 
Zitat:

Zitat von Daniel
Ich habe dafür noch was aus dem Bereich PHP.

Code:
$data = array();
if ($data == null)
{
  echo 'na holla die waldfee';
}

php ist halt dynamisch typisiert, damit finde ich das verhalten vollkommen Erwartungskonform. Wer wissen will ob der Wer wirklich gleich null ist schreibt halt:
Code:
if ($data === null)
{
  echo 'na holla die waldfee';
}

Wolfgang Mix 25. Mär 2010 19:50

Re: Die häufigsten Programmierirrtümer
 
@Matze:

Mist, wieder 'mal geirrt :(

Klaus01 25. Mär 2010 20:47

Re: Die häufigsten Programmierirrtümer
 
habe leider noch nicht alles durchgelesen,
aber war der schon dabei?

Delphi-Quellcode:
begin
  i:=0;
  while i < 10 do;
    begin
      memo1.Lines.add(IntToStr(i));
      inc(i);
    end;
end;
[edit] hier ist durch das Semikolon (Leeranweisung) hinter dem do
eine Endlosscheife entstanden.


Grüße
Klaus

Wolfgang Mix 25. Mär 2010 21:13

Re: Die häufigsten Programmierirrtümer
 
Zwischendurch möchte ich euch um eines bitten:
Editiert bitte euren Beitrag noch einmel und zeigt auf,
worin nun der Irrtum besteht. Sonst macht mir das
Zusammenfassen 'ne Menge Arbeit. Ich bin halt kein
Universalgenie.

LG

Wolfgang

P.S.: Finde toll, wie gross das Interesse ist :)

stoxx 25. Mär 2010 21:38

Re: Die häufigsten Programmierirrtümer
 
es wäre schön, wenn Du dich nicht nur auf Quelltextfehler beziehen würdest, sondern auch auf "Konstruktionsfehler"
ich mein, alle aufgezählten Fehler sind mehr oder weniger schnell durch den Compiler zu finden oder spätestens wenn das Programm eine Zugriffsverletzung meldet.
Ist zwar vielleicht mal ein netter Zeitvetreib für die Mittagspause, aber nicht dazu geeignet, ein besserer Programmierer zu werden.

Viel wichtiger finde ich solche Fehler einem Anfänger nahezubringen, nicht alles in die Button1 - Click Procedue zu schreiben.
Nicht in "Blackbox" Systemen zu denken und stattdessen den gesamten Code in einen großen Spagettihaufen zu schmeißen.
Oder noch nie was von dem MVC Modell gehört zu haben.
Das finde ich viel wichtiger, als solche kleinen Syntaktischen Fehler, die sich mit jedem Debugger finden lassen, wenn das Programm nicht macht, was es soll ...

Das Problem von Konstruktionsfehler ist nämlich, dass man erstmal schon ein recht gutes Stück weit kommen kann, aber irgendwann in eine Sackgasse landen wird. Denn aus einem VW Polo lässt sich nachträglich nicht mehr zu einem Porsche umbauen, das muss man vorher geplant haben, weil die Plattform dafür einfach nicht geeignet ist.

Angel4585 30. Mär 2010 10:13

Re: Die häufigsten Programmierirrtümer
 
falsch:
Delphi-Quellcode:
 
succ(zaehlervariable);
richtig:
Delphi-Quellcode:
zaehlervariable:=succ(zaehlervariable);
oder
Delphi-Quellcode:
inc(zaehlervariable);


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:12 Uhr.
Seite 7 von 7   « Erste     567   

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