Frage zum Klassennamen
Mika
- html
1 dedlfix0 Auge- html
- php
0 Mika0 Gunnar Bittersmann0 dedlfix
Hallo ihr,
ich bin mal über den Codeschnipsel: <i class=\"fa fa-spinner fa-spin\"></i>
gestolpter. Fa steht denke ich mal für Font-Awesome, aber warum "\"
? Wozu ist das gut und was bezweckt es?
Freundliche Grüße
Tach!
ich bin mal über den Codeschnipsel:
<i class=\"fa fa-spinner fa-spin\"></i>
gestolpter. Fa steht denke ich mal für Font-Awesome, aber warum"\"
? Wozu ist das gut und was bezweckt es?
Das ist garantiert dem Kontext geschuldet, in dem dieser Code steht. Vermutlich ist der Kontext nicht HTML, sondern zum Beispiel ein in "
eingerahmter PHP-String, dann muss man darin vorkommende "
maskieren. Auch andere Arten der Codeschreibweise und Maskierungsvermeidung gibt es, aber das ist dann auch abhängig vom Kontext.
dedlfix.
Hallo
ich bin mal über den Codeschnipsel:
<i class=\"fa fa-spinner fa-spin\"></i>
gestolpter. Fa steht denke ich mal für Font-Awesome
Korrekt.
aber warum
"\"
? Wozu ist das gut und was bezweckt es?
Es ist für nichts gut. Vermutlich wurde der Code innerhalb einer Zeichenkette in Code einer Programmiersprache wie z.B. PHP verwendet. Wenn man dort als Begrenzungszeichen der Zeichenkette doppelte Anführungszeichen verwendet, muss man sie, wenn sie in der Zeichenkette selbst benutzt werden, dort maskieren, damit die Zeichenkette nicht bei ihrem ersten Auftreten beendet wird.
# die Notation stammt vermutlich aus etwas ähnlichem:
$zeichenkette = "<a href=\"irgendwohin.html\"><i class=\"fa fa-spinner fa-spin\"></i>Link nach irgendwo</a>";
# ohne Maskierung wäre hier Schluss:
$zeichenkette = "<a href=";
# die Maskierung der Anführungszeichen kann man sich z.B. so sparen:
$zeichenkette = '<a href="irgendwohin.html"><i class="fa fa-spinner fa-spin"></i>Link nach irgendwo</a>';
Tschö, Auge
Super, Danke euch beiden
@@Auge
Vermutlich wurde der Code innerhalb einer Zeichenkette in Code einer Programmiersprache wie z.B. PHP verwendet. Wenn man dort als Begrenzungszeichen der Zeichenkette doppelte Anführungszeichen verwendet, muss man sie, wenn sie in der Zeichenkette selbst benutzt werden, dort maskieren, damit die Zeichenkette nicht bei ihrem ersten Auftreten beendet wird.
Und wenn man soetwas tun muss, macht man mit ziemlicher Sicherheit was falsch.
LLAP 🖖
Tach!
Vermutlich wurde der Code innerhalb einer Zeichenkette in Code einer Programmiersprache wie z.B. PHP verwendet. Wenn man dort als Begrenzungszeichen der Zeichenkette doppelte Anführungszeichen verwendet, muss man sie, wenn sie in der Zeichenkette selbst benutzt werden, dort maskieren, damit die Zeichenkette nicht bei ihrem ersten Auftreten beendet wird.
Und wenn man soetwas tun muss, macht man mit ziemlicher Sicherheit was falsch.
Nicht alles, was man besser machen kann, ist auch falsch. Solange das Ergebnis dasselbe ist, sind zwei Vorgehensweisen lediglich anders, aber nicht falsch vs. richtig.
dedlfix.
hallo
Und wenn man soetwas tun muss, macht man mit ziemlicher Sicherheit was falsch.
Nein, dann ist man auf jeden Fall entschuldigt!
Nicht alles, was man besser machen kann, ist auch falsch. Solange das Ergebnis dasselbe ist, sind zwei Vorgehensweisen lediglich anders, aber nicht falsch vs. richtig.
Naja, Ausgabe ist eines, verständlicher Code etwas anderes. Beides hat seine Berechtigung.
Perl hat mit q, qq, m//, und s/// dafür Sorge getragen, dass man nicht mit Zahnstochern um sich schmeissen muss.
Ein Code-Autor tut gut daran, die Syntax-Möglichkeiten seiner Sprache zu erforschen.
Tach!
Nicht alles, was man besser machen kann, ist auch falsch. Solange das Ergebnis dasselbe ist, sind zwei Vorgehensweisen lediglich anders, aber nicht falsch vs. richtig.
Naja, Ausgabe ist eines, verständlicher Code etwas anderes. Beides hat seine Berechtigung.
Ein Code-Autor tut gut daran, die Syntax-Möglichkeiten seiner Sprache zu erforschen.
Verständlicher Code ist natürlich besser. Soweit sind wir uns einig. Aber weniger verständlicher Code ist deshalb noch lange nicht falsch. Beispielsweise würde ich Perl-Code nicht als falsch bezeichnen, nur weil es verständlichere Varianten des Programmierens gibt.
dedlfix.
Grundlage für Zitat #2297.
hallo
Ein Code-Autor tut gut daran, die Syntax-Möglichkeiten seiner Sprache zu erforschen.
Verständlicher Code ist natürlich besser. Soweit sind wir uns einig. Aber weniger verständlicher Code ist deshalb noch lange nicht falsch. Beispielsweise würde ich Perl-Code nicht als falsch bezeichnen, nur weil es verständlichere Varianten des Programmierens gibt.
Ein Newbie muss sicher all diese Möglichkeiten erst mal lernen, sonst können sie sogar noch mehr Vewirrung stiften.
Aber wir wissen, dass die Zahnstocher eine 2^n Vermehrungsrate haben. Denke einfach mal an diese Kontextwechsel:
PHP -> HTML -> JSON.
Bereits in Javascript allein will man Zahnstocher in Patterns und anderswo tunlichst vermeiden.
@@dedlfix
Nicht alles, was man besser machen kann, ist auch falsch. Solange das Ergebnis dasselbe ist, sind zwei Vorgehensweisen lediglich anders, aber nicht falsch vs. richtig.
Soso, Spaghetti-Code ist also lediglich anders als sauber strukturierter Code; da ist nichts Falsches dran?
Wenn man Eingabe, Verarbeitung und Ausgabe sauber voneinander trennt und bei der Ausgabe HTML-Tags nicht mit echo
ausgibt, kommt man überhaupt nicht in die Verlegenheit, mehrfach geschachtelte Anführungszeichen escapen zu müssen.
LLAP 🖖
Tach!
Nicht alles, was man besser machen kann, ist auch falsch. Solange das Ergebnis dasselbe ist, sind zwei Vorgehensweisen lediglich anders, aber nicht falsch vs. richtig.
Soso, Spaghetti-Code ist also lediglich anders als sauber strukturierter Code; da ist nichts Falsches dran?
Ja klar. Oder deine Definition von falsch ist eine andere als meine. Falsch ist für mich Code, der zu einem ungewünschten Ergebnis führt. Schlecht geschriebener Code der zum selben Ergebnis kommt, ist lediglich schlecht geschrieben. Punktabzug in der B-Note, aber Ziel trotzdem erreicht.
Wenn man Eingabe, Verarbeitung und Ausgabe sauber voneinander trennt und bei der Ausgabe HTML-Tags nicht mit
echo
ausgibt, kommt man überhaupt nicht in die Verlegenheit, mehrfach geschachtelte Anführungszeichen escapen zu müssen.
Das ist ein Aspekt von gut geschriebenem Code. Aber auch kein Garant für Fehlerfreiheit. Man erkennt fachliche Fehler nur besser (hoffentlich).
dedlfix.
@@dedlfix
Oder deine Definition von falsch ist eine andere als meine. Falsch ist für mich Code, der zu einem ungewünschten Ergebnis führt. Schlecht geschriebener Code der zum selben Ergebnis kommt, ist lediglich schlecht geschrieben. Punktabzug in der B-Note, aber Ziel trotzdem erreicht.
Kann man so sehen. In einem Forum, dessen Ziel es ist zu vermitteln, guten Code zu schreiben, kann man „falsch“ aber auch anders sehen. Hohe B-Note: richtig, niedrige B-Note: falsch.
LLAP 🖖
Hallo Gunnar Bittersmann,
In einem Forum, dessen Ziel es ist zu vermitteln, guten Code zu schreiben, kann man „falsch“ aber auch anders sehen. Hohe B-Note: richtig, niedrige B-Note: falsch.
Hohe B-Note: richtig, niedrige B-Note: es geht besser
Besser, weil übersichtlicher, effizienter, …
Bis demnächst
Matthias
@@Matthias Apsel
In einem Forum, dessen Ziel es ist zu vermitteln, guten Code zu schreiben, kann man „falsch“ aber auch anders sehen. Hohe B-Note: richtig, niedrige B-Note: falsch.
Hohe B-Note: richtig, niedrige B-Note: es geht besser
Einigen wir uns auf „Hohe B-Note: richtig, mittlere B-Note: es geht besser, niedrige B-Note: falsch“? 😉
LLAP 🖖
Hallo Gunnar Bittersmann,
Einigen wir uns auf „Hohe B-Note: richtig, mittlere B-Note: es geht besser, niedrige B-Note: falsch“? 😉
Hmm. Selbst eine ganz niedrige B-Note führt in der Schule bei effektivem[1] Code immer noch zu ausreichend.
Bis demnächst
Matthias
Nicht zu verwechseln mit effizient. Ein Ziel kann auf unterschiedlichen Wegen erreicht werden. Jeder dieser erfolgreichen Wege ist per Definition effektiv. Jedoch gibt es möglicherweise effizientere Wege, da sie das Ziel mit weniger Aufwand erreichen oder bei gleichem Aufwand ein höherwertiges Ergebnis liefern. Man kann einen brennenden und nicht nur leuchtenden Adventskranz sicher auch mit dem Inhalt einer Flasche 1907er Heidsieck löschen. ↩︎
Hi,
Man kann einen brennenden und nicht nur leuchtenden Adventskranz sicher auch mit dem Inhalt einer Flasche 1907er Heidsieck löschen.
Damit macht man sich des Alkoholmißbrauchs schuldig!!! 😉
cu,
Andreas a/k/a MudGuard
Tach!
In einem Forum, dessen Ziel es ist zu vermitteln, guten Code zu schreiben,
Vermitteln ist ein gutes Stichwort. Auch dafür empfinde ich es als nicht sonderlich hilfreich, etwas das grundsätzlich funktioniert, als falsch zu brandmarken. Damit schafft man erstmal unnötigerweise Distanz zu dessen Ersteller, die für das Vermitteln unpraktisch ist. "Funktioniert, aber so und so wird es noch besser, weil" kommt ohne das Zurückweisen aus.
dedlfix.