Harlequin: Website-Struktur und Skript-Stil oder so ähnlich

Beitrag lesen

Yerf!

an dieser Stelle habe ich die Wahl:
a) ich baue die 20 Zeilen Code zur Addition an dieser Stelle direkt ein (nicht schön, macht Skript unübersichtlich)

Wenn der Code nur an dieser Stelle benötigt wird und direkt zum Ablauf des umgebenden Codes gehört mach ich das durchaus. Ich finde das so besser lesbar, als wenn man sich erst die Funktion suchen muss. Allerdings wird dann der Abschnitt mit Kommentaren eingerahmt, damit man ihn sofort als zusammengehörigen Block mit der entsprechenden Aufgabe erfassen kann. (Außerdem kennt das Visual Studio #region-Blöcke für Codefolding im Editor)

b) ich packe die 20 Codezeilen in eine Funktion (kann in einem anderen Skript stehen) und rufe diese auf.

Ansonsten ist das der normale Weg. Ob die Funktion im gleichen File steht hängt davon ab, ob es eine universelle Funktion ist, die öfters benötigt wird, oder ob sie nur für diese Seite relevant ist. Universelle Hilfsfunktionen werden in statischen Klassen gesammelt.

c) ich includiere ein Skript, das diese Aufgabe übernimmt. Dieses Skript 2 sieht dann so aus:

$ergebnis = $summand1 + $summand2;

  
Und hier kommt der Punkt, wo ich sage "STOP!"  
Das Script beeinflusst hier Variablen, die nicht zu seinem Bereich gehören.  
  

> Skript 1 müsste dann also so aussehen:  
> ~~~php
  

> $summand1 = 5;  
> $summand2 = 4;  
> include("skript2.php");  
> echo $ergebnis; //Ausgabe des Ergebnisses  
> 

Und bei der späteren Verwendung ist absolut nicht mehr klar, woher $ergebnis eigentlich kommt. Von den ganzen anderen Seiteneffekten die hier entstehen könnten gar nicht zu sprechen...

Wie dieser Stil entsteht kann ich mir aber gut vorstellen: Durch die Vermischung von HTML und Code die bei PHP möglich ist und vor allem Anfänger gerne machen (ist ja auch schön einfach) macht man sich um Funktionen und Trennung von Verarbeitung und Ausgabe kaum gedanken. Wenn man dann einen Code-Block öfter braucht nimmt man ihn einfach per Cut&Paste in eine Include-Datei und fertig. Das schlimme ist dann, dass man an Gewohntem festhält, egal wie groß die Projekte werden und wie sinnvoll eine andere Herangehensweise wäre...

Gruß,

Harlequin

--
<!--[if IE]>This page is best viewed with a webbrowser. Get one today!<![endif]-->