<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Boilerplate</id>
	<title>Boilerplate - Versionsgeschichte</title>
	<link rel="self" type="application/atom+xml" href="https://wiki-de.moshellshocker.dns64.de/index.php?action=history&amp;feed=atom&amp;title=Boilerplate"/>
	<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Boilerplate&amp;action=history"/>
	<updated>2026-06-01T18:05:45Z</updated>
	<subtitle>Versionsgeschichte dieser Seite in Wikipedia (Deutsch) – Lokale Kopie</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki-de.moshellshocker.dns64.de/index.php?title=Boilerplate&amp;diff=709412&amp;oldid=prev</id>
		<title>imported&gt;Polluks: /* Programmierung */ besser</title>
		<link rel="alternate" type="text/html" href="https://wiki-de.moshellshocker.dns64.de/index.php?title=Boilerplate&amp;diff=709412&amp;oldid=prev"/>
		<updated>2024-08-28T08:44:29Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Programmierung: &lt;/span&gt; besser&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Neue Seite&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;#039;&amp;#039;&amp;#039;Boilerplate&amp;#039;&amp;#039;&amp;#039; ({{enS}} für ursprünglich „Kesselplatte“, übertragen „Standardtext, [[Textbaustein]]“; auch &amp;#039;&amp;#039;&amp;#039;Abbinder&amp;#039;&amp;#039;&amp;#039;) ist in der [[Medienarbeit]] und dem [[Drucktechnik|Druckwesen]]&amp;lt;ref&amp;gt;{{Literatur |Autor=Donald Treadwell, Jill B. Treadwell |Titel=Public Relations Writing |TitelErg=Principles in Practice |Verlag=SAGE |Datum=2003 |ISBN=978-0-7619-4599-4}}&amp;lt;/ref&amp;gt; der [[Anglizismus]] für einen gleichbleibenden Textblock meist am Ende eines [[Text]]s.&lt;br /&gt;
&lt;br /&gt;
== Allgemeines ==&lt;br /&gt;
Im Zusammenhang mit [[E-Mail]]s wird der Begriff auch bezüglich der [[Signatur (E-Mails und Postings)|Signatur]] benutzt. Der Begriff wird auch in der [[Rechnungslegung]] und der [[Programmierung]]&amp;lt;ref&amp;gt;{{Literatur |Autor=Ralf Laemmel/Simon Peyton Jones |Titel=Scrap your boilerplate: a practical approach to generic programming |Sammelwerk=Proceedings ACM SIGPLAN Workshop on Types in Language Design and Implementation |Datum=2003 |Online=[http://research.microsoft.com/en-us/um/people/simonpj/papers/hmap/hmap.ps PS]| Kommentar=[http://research.microsoft.com/en-us/um/people/simonpj/papers/hmap/ Webseite]}}&amp;lt;/ref&amp;gt; verwendet.&lt;br /&gt;
&lt;br /&gt;
== Public Relations ==&lt;br /&gt;
&amp;#039;&amp;#039;Boilerplate&amp;#039;&amp;#039; oder &amp;#039;&amp;#039;&amp;#039;Backgrounder&amp;#039;&amp;#039;&amp;#039; ist ein Begriff aus der [[Public Relation|PR]]- und [[Massenmedien|Medienarbeit]]. Es handelt sich dabei um eine Textpassage am Ende einer [[Medienmitteilung]]. Sie enthält die wichtigsten allgemeinen Angaben zur Organisation, welche hinter der Medienmitteilung steht (z.&amp;amp;nbsp;B. Anzahl der Mitarbeiter des Unternehmens, Umsatz, Standorte, Branchenschwerpunkte, Gründung).&amp;lt;ref&amp;gt;{{Literatur |Autor=Jörg Hüttmann |Titel=Erfolgreiche Online-PR: Wie Sie Pressemeldungen für das Web zielgruppengenau schreiben und erfolgreich verbreiten |Verlag=BoD – Books on Demand, 2018 |Datum=2018-11-16 |ISBN=3-7481-8346-1 |Seiten=32}}&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Die Boilerplate ist somit ein über einen längeren Zeitraum gleichbleibender Textblock ohne direkten Bezug zum aktuellen Anlass. Die Boilerplate bietet Journalisten die Möglichkeit, auf einen Blick das Tätigkeitsprofil einer Organisation bzw. eines Unternehmens zu erfassen.&amp;lt;ref&amp;gt;[https://www.marketing-boerse.de/fachartikel/details/was-ist-eigentlich-ein-abbinder/31556 &amp;#039;&amp;#039;Was ist eigentlich ein Abbinder&amp;#039;&amp;#039;] Marketing Börse vom 26. August 2011, abgerufen am 4. Juni 2019&amp;lt;/ref&amp;gt;&amp;lt;ref&amp;gt;[https://www.prspionin.at/wie-man-eine-boilerplate-erstellt/ &amp;#039;&amp;#039;Wie man eine Boilerplates erstellt&amp;#039;&amp;#039;] PR Spionen vom 28. April 2018, abgerufen am 4. Juni 2019&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Wirtschaft ==&lt;br /&gt;
Bei der [[Vertragsgestaltung]] von [[Finanzkontrakt]]en (wie [[Kreditvertrag]], [[Anleihebedingungen]], [[Termingeschäft]]en) gibt es Standardklauseln, die nicht Gegenstand von vorherigen [[Verhandlung]]en sein müssen, weil sie als allgemein üblich anerkannt sind ({{enS|boilerplates}}).&amp;lt;ref&amp;gt;[https://www.google.de/books/edition/Private_Equity_Lexikon/2STRDwAAQBAJ?hl=de&amp;amp;gbpv=1&amp;amp;dq=boilerplate+lexikon&amp;amp;pg=PT40&amp;amp;printsec=frontcover Stephan Illenberger/Thomas A. Jesch/Harald Keller/Ulf Klebeck/Jörg Rocholl, &amp;#039;&amp;#039;Private-Equity-Lexikon&amp;#039;&amp;#039;, 2011, S. 46]&amp;lt;/ref&amp;gt; Hierzu gehören beispielsweise die [[Covenants]]. Die Vertragsmuster der [[Loan Market Association]] beinhalten derartige, als &amp;#039;&amp;#039;boilerplates&amp;#039;&amp;#039; bezeichnete [[Textbaustein]]e.&lt;br /&gt;
&lt;br /&gt;
Bei der [[Bilanzierung]] und in der [[Rechnungslegung]] ist die [[Publizitätspflicht|Offenlegung]] ({{enS|disclosure}}) bekannt, deren Aspekte von den Interessengruppen der Rechnungslegung unterschiedlich gewichtet werden. Die bilanzierenden Unternehmen sehen sich gedrängt, ihre Abschlüsse unter hohem Aufwand mit [[Information]]en und [[Unternehmensdaten]] zu überfrachten ({{enS|disclosure overload}}), die nach ihrem Empfinden für die Nutzer zum Teil irrelevant sind. Unter anderem wegen Zeitdrucks seien viele Angaben redundant und wenig unternehmensspezifisch. Hierzu fühle man sich durch die bestehenden [[Publizität]]svorschriften gezwungen, deren Einhaltung von [[Abschlussprüfer]]n überprüft werde. Nach Ansicht des [[International Accounting Standards Board]] (AISB) kann eine Überfrachtung mit ausufernden verbalen Angaben zu einer kognitiven Überforderung des Adressaten durch mangelnde Relevanz, ineffektive Kommunikation (etwa in Form von standardisierter und repetitiver Darstellung; {{enS|boilerplates}}) sowie ein Übermaß an unwesentlichen Informationen führen.&amp;lt;ref&amp;gt;Thorsten Sellhorn/Julia Menacher, &amp;#039;&amp;#039;Welche Neuerung bringt die &amp;#039;Disclosure Initiative&amp;#039; des IASB&amp;#039;&amp;#039;, in: Die Wirtschaftsprüfung, 2015, S. 1289–1298&amp;lt;/ref&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Programmierung ==&lt;br /&gt;
{{Hauptartikel|Boilerplate-Code}}&lt;br /&gt;
In der [[Programmierung]] bezeichnet der Begriff &amp;#039;&amp;#039;Boilerplate-Code&amp;#039;&amp;#039; Codefragmente, die an vielen Stellen in mehr oder weniger unveränderter Form benötigt werden. Das kommt häufiger vor in Programmiersprachen, die als eher „geschwätzig“ &amp;#039;&amp;#039;([[verbose]])&amp;#039;&amp;#039; gelten, d.&amp;amp;nbsp;h. dem Programmierer auch für geringste Aufgabenstellungen viel Codierarbeit abverlangen. Der Bedarf an Boilerplate-Code kann durch Nutzung von High-Level-Mechanismen wie [[Metaprogrammierung]] (wobei das System den benötigten Boilerplate-Code automatisch generiert) und Methodikbausteine wie [[Konvention vor Konfiguration]] (wodurch „gute“ Defaultwerte zur Verfügung gestellt werden, so dass viele Implementierungsdetails nicht mehr in jedem Projekt ausdrücklich spezifiziert werden müssen) reduziert werden.&lt;br /&gt;
&lt;br /&gt;
Die folgenden Zeilen in [[Perl (Programmiersprache)|Perl]] zeigen beispielhaft Boilerplate-Code. Sie bestehen aus einem [[Shebang]] und zwei [[Compiler-Anweisung|Pragmata]] (die der gute [[Programmierstil]] verlangt) am Anfang einer Quelldatei. Diese Zeilen sind nicht Teil der Programmlogik, sondern enthalten Information für die Ablaufumgebung.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;perl&amp;quot;&amp;gt;&lt;br /&gt;
#!/usr/bin/env perl&lt;br /&gt;
use warnings;&lt;br /&gt;
use strict;&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Boilerplate-Code wird häufig zur Vorbereitung der Benutzung von Funktionen aus [[Programmbibliothek|Bibliotheken]] mit niedrigem [[Abstraktion (Informatik)|Abstraktionsniveau]] benötigt. Ein Beispiel hierfür ist die &amp;lt;code&amp;gt;strcat&amp;lt;/code&amp;gt; Function in [[C (Programmiersprache)|C]] zum Zusammenfügen zweier [[Zeichenkette]]n (&amp;#039;&amp;#039;string&amp;#039;&amp;#039;s). In C werden Zeichenketten als Felder von einzelnen Zeichen (&amp;#039;&amp;#039;character&amp;#039;&amp;#039;, Datentyp &amp;#039;&amp;#039;char&amp;#039;&amp;#039;) mit abschließendem Nullbyte abgelegt (nullterminierte &amp;#039;&amp;#039;character arrays&amp;#039;&amp;#039;). Der Code, den man braucht, um (jedenfalls auf eine Art) mit &amp;lt;code&amp;gt;strcat&amp;lt;/code&amp;gt; zwei Zeichenketten namens &amp;lt;code&amp;gt;first&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;second&amp;lt;/code&amp;gt; zu verketten, lautet in ausführlich kommentierter Fassung, aber ohne notwendige Fehlerbehandlung:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
char *result;&lt;br /&gt;
&lt;br /&gt;
/* Allocate memory for the size of the two strings, plus 1 for the terminating NULL character. */&lt;br /&gt;
result = malloc( (strlen(first) + strlen(second) + 1) * sizeof(char) );&lt;br /&gt;
&lt;br /&gt;
/* Copy the contents of &amp;#039;first&amp;#039; to &amp;#039;result&amp;#039;. */&lt;br /&gt;
strcpy(result, first);&lt;br /&gt;
&lt;br /&gt;
/* Append the contents of &amp;#039;second&amp;#039;. */&lt;br /&gt;
strcat(result, second);&lt;br /&gt;
&lt;br /&gt;
…&lt;br /&gt;
&lt;br /&gt;
/* Deallocate the reserved memory when finished */&lt;br /&gt;
free(result);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Die [[Deklaration (Programmierung)|Variablendeklarationen]] und die Anweisungen &amp;lt;code&amp;gt;malloc&amp;lt;/code&amp;gt; und &amp;lt;code&amp;gt;free&amp;lt;/code&amp;gt; sind der Boilerplate-Code, der als Rahmen für die eigentliche Arbeit der beiden Funktionsaufrufe vorausgesetzt und somit zusätzlich geschrieben werden muss.&lt;br /&gt;
* Der Code ist nicht threadsafe. Werden &amp;lt;code&amp;gt;first&amp;lt;/code&amp;gt; oder &amp;lt;code&amp;gt;second&amp;lt;/code&amp;gt; zwischen dem &amp;lt;code&amp;gt;strlen&amp;lt;/code&amp;gt; und den Kopiervorgängen in einem anderen Thread verlängert, wird der Heap zerstört.&lt;br /&gt;
* Der Code ist damit nicht nur lang und komplex und verdeckt die eigentliche Aufgabe, sondern es gibt viele Möglichkeiten, den Code mit Schwachstellen zu versehen.&lt;br /&gt;
* Zur Unterstützung weitere Funktionen wie Wide Characters oder Multibyte-Characters wächst der Boilerplate noch weiter.&lt;br /&gt;
&lt;br /&gt;
== Siehe auch ==&lt;br /&gt;
* [[Konvention vor Konfiguration]]; Ansatz um Boilerplate Code zu reduzieren&lt;br /&gt;
&lt;br /&gt;
== Einzelnachweise ==&lt;br /&gt;
&amp;lt;references /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Kategorie:Bilanzrecht]]&lt;br /&gt;
[[Kategorie:Digitale Medien]]&lt;br /&gt;
[[Kategorie:Journalismus]]&lt;br /&gt;
[[Kategorie:Programmierung]]&lt;br /&gt;
[[Kategorie:Englische Phrase]]&lt;/div&gt;</summary>
		<author><name>imported&gt;Polluks</name></author>
	</entry>
</feed>