Frage zum Wiki-Artikel „Grundlagen der Programmierung“
bearbeitet von
@@Camping_RIDER
> > Zum anderen trifft das bei `document.write()`{: .language-js} gleichermaßen zu.
>
> Nein. „Auch teilweise“, nicht „gleichermaßen“. Konzepte die versteckt bleiben ja, ein Haufen davon nein.
Hier geht es nicht um Quantität. Konzepte (egal wie viele), die versteckt bleiben und das auch bleiben sollten. [Blackbox](https://forum.selfhtml.org/self/2017/mar/3/frage-zum-wiki-artikel-grundlagen-der-programmierung/1689102#m1689102), wie CK sagte.
> > Deiner Argumentation folgend müsste man sonst ja erklären, das `document`{: .language-js} ein Objekt ist,
>
> Richtig, das könnte man sogar.
Nein. Nicht Thema dieses Tutorials.
> > und dass `write()`{: .language-js} eine Methode ist, die man darauf anwenden kann.
>
> Auch das lässt sich in einem Satz sagen, ohne, dass dabei irgendwas unklar bleibt.
Nicht Thema dieses Tutorials.
> „Der Rechenweg wird in der Variablen text gespeichert und dann mit `document.write(text)` ausgegeben. Dabei ist `document` ein Objekt, das den Inhalt des Browserfensters (das „Dokument“) darstellt und `write` eine Methode des Objekts `document`, die bewirkt, dass der Text `text` ins Dokument geschrieben wird.“
>
> Damit sind alle Konzepte ausreichend erklärt.
Nicht Thema dieses Tutorials.
> Wenn Wert darauf gelegt wird, zu sagen, dass `document.write` nicht verwendet werden sollte, kann man noch ein
>
> „Beachten Sie: `document.write hat gravierende Nachteile, wenn es nicht wie hier beim Aufruf der Seite direkt ausgeführt wird, weshalb man in der Praxis meist andere Ausgabemethoden verwendet.“
>
> nachsetzen.
Etwas verwenden um gleich darauf zu sagen „Ich darf das, aber ihr nicht!“ – Nein.
> > Das will man natürlich an der Stelle ebensowenig wie erlären wie `querySelector()`{: .language-js} und `innerText`{: .language-js}. Und muss man auch nicht.
>
> Irrtum. *Das* kann man in aller Kürze erklären, querySelector und innerText nicht.
Nicht Thema dieses Tutorials.
> „Nimm das mal so hin“ sollte gar nicht auftauchen. Da hast du Recht.
Was willst du mir da in den Mund legen? Mein Punkt war, dass „Nimm das mal so hin“ in einem Tutorial auftauchen darf und auch auftauchen _muss_. (Das sollte freilich nicht explizit sein.)
Bei `document.write` (oder `window.alert`, wenn das lieber gesehen ist) […] - das Konzept ist also sowieso schon im Artikelfokus).
Nein. Nicht Thema dieses Tutorials.
> Bei `document.querySelector('#ausgabe').innerText`{: .language-js} muss man viel mehr erklären, und zwar abseits des eigentlichen Artikelfokus.
Ja. Nicht Thema dieses Tutorials.
> > Ein Anfängertutorial wird *immer* Fragen offen lassen.
>
> Richtig. Die Betonung meines Satzes war aber absichtlich auf *innerhalb* gelegt. Fragen dürfen offen bleiben, aber sie sollten so offen bleiben, dass man das Tutorial erst komplett verstehen und sich den Fragen danach widmen kann, nicht im Workflow während des Lesens.
Man kann das Tutorial komplett verstehen ohne `document.querySelector('#ausgabe').innerText`{: .language-javascript} zu hinterfragen. Blackbox. Und weder `document`{: .language-javascript} noch `querySelector()`{: .language-javascript} noch `innerText`{: .language-javascript} sollten an dieser Stelle irgendwohin verlinkt sein und den Leser vom Thema dieses Tutorials abschweifen lassen.
LLAP 🖖
--
“When UX doesn’t consider *all* users, shouldn’t it be known as ‘*Some* User Experience’ or... SUX? #a11y” —[Billy Gregory](https://twitter.com/thebillygregory/status/552466012713783297)