![]() |
PHP Programmierstil
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Ich programmiere zwar schon seit ein paar Jahren in PHP, aber dennoch wollte ich mal fragen, ob mein Programmierstil leserlich ist und was man daran noch verbessern kann, da ich einige meiner Skripte auch auf meiner Homepage veröffentliche und diese dann auch von anderen Programmierern eingesehen werden können sollen, ohne dass er sich über den Stil ärgern muss. Ich hänge mal eine Datei an und habe diese auch auf ![]() Danke für eure Rückmeldungen Grüße Faux NACHTRAG: Bitte macht mich nicht auf fehlende Kommentare aufmerksam, ich weiß, dass das zu einem guten Stil gehört. |
Re: PHP Programmierstil
Doch sieht gut aus :thumb:
Wobei ich (aber ich glaube nur ich) eher auf deutsche Variablennamen ausweichen würde. So erkenne ich schneller welche Variablen von mir sind und welche vom System. Wie du schon sagtest fehlen leider Kommentare, aber die lasse ich auch meistens weg. Allerdings sollte man vielleicht doch welche reinsetzen damit der Betrachter etwas schneller hinter den Code kommt. Flare |
Re: PHP Programmierstil
Naja, den Programmierstil kann man immer nur subjektiv bewerten, also hier meine Meinung: Ich finde den Code ehrlich gesagt nicht wirklich übersichtlich. Vor allem bei den if-Schleifen habe ich Probleme nachzuvollziehen, was denn jetzt wann gemacht wird.
Ich halte es mit if-Schleifen immer so, dass ich grundsätzlich geschweifte Klammern verwende und diese auch immer in eine neue Zeile schreibe:
Code:
Im Prinzip kann ich sagen, dass ich mich nahezu komplett an die
if ($variable == 'test')
{ echo 'Variable enthält "test"'; } else { // sonst was... } ![]() |
Re: PHP Programmierstil
Zitat:
Naja, wie S2B schon gesagt hat, man kanns nur subjektiv beantworten. Stimmt. Kommentare sind sicherlich nicht fehl am Platz. Zitat:
Aber ja, du hast recht. Das habe ich mir in C# auch schon angewöht, keine Ahnung wieso ich das in PHP nicht mache. ;) Naja, platzraubend ist es schon sehr. Zitat:
Grüße Faux |
Re: PHP Programmierstil
Zitat:
Wie heißt das denn richtig? :stupid: Zitat:
|
Re: PHP Programmierstil
Zitat:
btw: Wenn du etwas camelCasing statt ekelhafter Unterstriche nehmen würdest, könnte ich es sogar zu Ende lesen ohne panikartig ctrl+F4 zu drücken... |
Re: PHP Programmierstil
Zitat:
|
Re: PHP Programmierstil
Nun,
auch ich bewerte nach meinem Stil: An sich sidn Einrückungen etc. schon lobenswert (da leider nicht selbstverständlich). Was mir nicht so gefallen mag ist: Variablen / Funktionsnamen Deine Namen sagen immerhin schon etwas aus, aber ich persönlich würde sie noch aussagekräftiger gestalten. Wenn sie sich aus Wörtern zusammensetzen ("$meinevar"), so kennzeichne ich das auch: $meineVar. Ich gehe dann aber noch einen Schritt weiter und setze ein Präfix, der etwas über den Typ der Variable aussagt. Wäre $meineVar also z.B. ein Boolean(String), würde es auch so heißen: $bMeineVar ($sMeineVar). Absätze Ich persönlich würde öfters mal die ENTER-Taste betätigen. Für mich symbolisieren Absätze die Trennung von zusammengehörigen Codes. Beispiel:
Code:
=>
if ($this->connection && DEBUG == 1)
echo "\n"; elseif (DEBUG == 1) echo "\n"; $change = mysql_select_db($_CONFIG['db'], $this->connection); if ($change && DEBUG == 1) echo "\n"; elseif (DEBUG == 1) echo "\n";
Code:
Kommentare
if ($this->connection && DEBUG == 1)
echo "\n"; elseif (DEBUG == 1) echo "\n"; $change = mysql_select_db($_CONFIG['db'], $this->connection); if ($change && DEBUG == 1) echo "\n"; elseif (DEBUG == 1) echo "\n"; Für mich das Stilkennzeichen schlechthin. Wenn mal andere Leute ins Team kommen und sich einarbeiten müssen, haben sie ohne Kommentare keine Chance dazu (*aus Erfahrung sprech*). Außerdem machen sie jeden Code übersichtlich und lassen schnell erkennen, worum es geht (so kann man sich die Zeit sparen, den Code zu lesen und zu interpretieren, was dort nun nochmal gemacht wird). Bei größeren Scripts sind Kommentare auch für eine einzelne Person (über-)lebenswichtig (*wieder aus Erfahrung sprech*). Sinnlose Kommentare bei Stellen wie "$i++;" o.ä. muss man natürlich nicht setzen ;) Ansonsten mache ich noch ganz gern folgendes: An den Anfang jeder Datei eine kurze Erklärung:
Wie gesagt - alles nur subjektiv! ;) air |
Re: PHP Programmierstil
Hi,
also deine if-Abfragen (auch genannt Erdbeerkuchen @Elvis :mrgreen: ) sind graußlich, sorry, das ist ja nur unübersichtlich. :stupid: Ich formatiere auch generell meinen php-Code und zeige dir, wie ich das mache. ![]() |
Re: PHP Programmierstil
Mal so nebenbei: Gibts ein Programm dass das ganze übersichtlich darstellt?
So wie im Firefox mit dem HTML-code wenn man den "bereinigt". |
Re: PHP Programmierstil
Zitat:
Im Prinzip sieht mein Code jetzt wie dein Vorschlag aus, nur dass ich die Zeilenumbrüche in einer zusammengehörigen Zeile weggelassen habe (außer bei den SQL-Statements). Danke für die Vorschläge! Grüße Faux |
Re: PHP Programmierstil
Zitat:
es gibt einen Unterschied zwischen Funktionen und Schluesselwoertern. Und genau deshalb schreibt man sie auch anders:
Code:
aber
$foobar = doSomething($foobar);
Code:
Nach Schluesselwoertern ein Leerzeichen zu machen erhoeht die Lesbarkeit, vor allem wenn jemand ohne Syntaxhighlighter deinen Code an sieht (ja, solche Leute soll es geben ;) ).
if ($foobar === 5) {}
Weiters gibt es was Funktionsaufrufe betreffen noch ein paar Unsitten, hier mal alle in einen Block geworfen:
Code:
Am leichtesten zu lesen finde ich immer noch das:
$foobar=foobar( $foobar );
$foobar = foobar ($foobar,$bar,$foo); $foobar = foobar( $foobar , $bar , $foo);
Code:
Also Leerzeichen um Operatoren, kein Leerzeichen nach Funktionsnamen, keines nach/vor den Klammern, aber eines nach dem Komma zur Parametertrennung.
$foobar = foobar($foobar, $bar, $foo);
Dasselbe gilt bei Ausdruecken:
Code:
Das ist IMO nur haesslich und verwirrend. Benutze Klammern:
if ($a == 5 || $b == 3 && $c == 5)
Code:
Manche Leute (ich gehoere auch dazu) setzen dann nochmal Klammern um die einzelnen Ausdruecke; dies ist aber nicht unbedingt noetig um die Lesbarkeit zu erhoehen (bzw. um zu garantieren dass der Code funktioniert)
if (($a == 5 || $b == 3) && $c == 5)
Dann: wenn du einen String hast, der keine Variablen enthaelt, verwende ' anstatt ". Wenn der Parser einen String in " sieht, dann laeuft er drueber um evtl. vorkommende Variablen zu ersetzen. Mit ' gehts also ein kleines bisschen schneller ;) Greetz alcaeus |
Re: PHP Programmierstil
Hallo alcaeus!
Also ich kann keinen deiner Vorwürfe in Matze's Code finden. :gruebel: Grüße Faux |
Re: PHP Programmierstil
Hi,
ich auch nicht so direkt. Nach if steht bei mir generell ein Leerzeichen, bei Funktionaufrufen folgt die Klammer direkt nach dem Funktionsnamen und die Parameter fangen direkt hinter der Klammer an ohne Leerzeichen. Also so:
Code:
Ich finde das ganz gut leserlich, aber ok, ich nutze generell einen Syntaxhighlighter. Wer keinen nutzt, ist selber schuld. :mrgreen:
functionname($foo, $blubb)
|
Re: PHP Programmierstil
|
Re: PHP Programmierstil
Zitat:
|
Re: PHP Programmierstil
Also ich finde das so gut kommentiert ;) Mein Bruder kommentiert wesentlich mehr, für mich aber unverständlich.
So ist es imo lesbar für jeden. ;) air |
Re: PHP Programmierstil
Zitat:
Code:
:mrgreen:
foreach($answers as $answer)
Greetz alcaeus |
Re: PHP Programmierstil
Zitat:
|
Re: PHP Programmierstil
Zitat:
Grüße Faux |
Re: PHP Programmierstil
Hallo,
wenn ich ganz ehrlich bin, finde ich den Code absolut unübersichtlich. Vielleicht liegt das aber auch an meiner etwas ungewöhnlichen Art zu programmieren. Teilweise sind meiner Meinung nach zu viele Leerzeichen gesetzt, an anderen Stellen halte ich Zeilenumbrüche für überflüssig, obgleich sie durchaus üblich sind. Zum Beispiel mache ich vor der Klammer { nie einen Zeilenumbruch, sodass ich anstelle von
Code:
lieber das hier schreiben würde:
function fetch_num($result = NULL)
{ $this->data = mysql_fetch_array(($result) ? ($result) : ($this->result), MYSQL_NUM); return $this->data; }
Code:
Das sind nur ganz simple Sachen. In umfangreicheren Codes helfen sie mir jedoch immens, den Überblick zu behalten. Letztendlich ist der Stil jedoch eine absolut subjektive Angelegenheit und jegliche Diskussion darüber ist im Grunde genommen sinnlos, da am Ende doch jeder bei seiner Meinung bleibt.
function fetch_num($result = NULL) {
$this -> data = mysql_fetch_array(($result) ? ($result) : ($this -> result), MYSQL_NUM); return $this -> data; } Mit freundlichen Grüßen, Ben [edit=alcaeus]delphi- durch code-Tags ersetzt ;) Mfg, alcaeus[/edit] |
Re: PHP Programmierstil
Zitat:
|
Re: PHP Programmierstil
Zitat:
Ich musste mal einen Quelltext auseinander nehmen, bei zwar Einrückungen vorgenommen wurden, diese waren aber nicht konsequenterweise entweder nur mit TABs oder mit gleicher Anzahl von Leerzeichen, sonder wild gemischt. Dadurch konnte man mal sehr schnell übersehen, wenn eine IF-Anweisung über mehrere Zeilen ging, da die { auch noch in der selben Zeile waren wie die IF-Anweisung selber (weshalb man sich dann irgendwann wunderte, dass die Anweisung eigentlich gar nicht mehr zu einer Funktion gehören dürfte, nachdem man die Einrückungen richtig gesetzt hat). Zitat:
Da kann man ja Funktionen wie folgt aufrufen:
Code:
rem Aufrufart 1
MeineFunktion(Parameter1, Parameter2) rem Aufrufart 2 MeineFunktion Parameter, Parameter2 OT: Den schlimmsten Quell-Text den ich bisher in die Finger bekam war ein java-Script, das der Autor komplett in EINE Zeile geschrieben hatte. Nach setzen aller nötigen Zeilenumbrüche kam ich dann auf stolze 94 Zeilen. |
Re: PHP Programmierstil
Zitat:
![]() Das grenzt auch schon an Unübersichtlichkeit. |
Re: PHP Programmierstil
Wie kann man
1. So einen Code schreiben und 2. sowas auf seine Page setzen? |
Re: PHP Programmierstil
Zitat:
Greetz alcaeus |
Re: PHP Programmierstil
Zitat:
Zu 2. Indem man sich auf ![]() |
Re: PHP Programmierstil
Ich wollte mit 2. eigentlich wissen, wie man freiwillig so eine Werbung auf seine Seite setzen kann?
|
Re: PHP Programmierstil
Zitat:
|
Re: PHP Programmierstil
Zitat:
Mit freundlichen Grüßen, Ben |
Re: PHP Programmierstil
Was mir bei mir auffällt ist, das ich, wenn ich Quellcode von anderen kopiere um ihn zu bearbeiten, ihn erstmal nach meinen Richtlinien umformatiere. Dann veränder ich den Quellcode und poste ihn wieder. Ich glaube das ist auch für den Ersteller des Codes nicht so schön, da er das auch wieder anpassen muss. Aber ich kann halt mit meiner Formatierung am besten arbeiten. :stupid: Geht euch das auchso?
MfG freak |
Re: PHP Programmierstil
Jo.. das ist auch immer das erste, was ich mache, wenn ich Code sehe.
Mit freundlichen Grüßen, Ben |
Re: PHP Programmierstil
Bei mir genau gleich... Ich denke aber nicht, dass das für den anderen unbedingt schlecht ist. Vor allem bei "Anfängern" auf phpBB.de, die ihren Code irgendwo in den Tiefen des Internets gefunden haben und dann halt einfach per C&P einbauen, ist das manchmal eine große Hilfe. Schönerer Code ermutigt natürlich, sich näher damit zu beschäftigen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:08 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