<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Leichtgewicht Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/leichtgewicht/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/leichtgewicht/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Sun, 16 Apr 2023 08:08:44 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.1</generator>

<image>
	<url>https://i0.wp.com/ceosbay.com/wp-content/uploads/2022/11/image.jpg?fit=32%2C32&#038;ssl=1</url>
	<title>Leichtgewicht Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/leichtgewicht/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>React &#8211; Die Bibliothek für eine dynamische und interaktive Benutzeroberfläche</title>
		<link>https://ceosbay.com/2022/12/21/erklaerung-react/</link>
					<comments>https://ceosbay.com/2022/12/21/erklaerung-react/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Wed, 21 Dec 2022 21:47:05 +0000</pubDate>
				<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Anwendung]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Bibliothek]]></category>
		<category><![CDATA[BSD]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Facebook]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JSX]]></category>
		<category><![CDATA[Leichtgewicht]]></category>
		<category><![CDATA[LightWeight]]></category>
		<category><![CDATA[Lizenz]]></category>
		<category><![CDATA[Node]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[OpenSource]]></category>
		<category><![CDATA[Performant]]></category>
		<category><![CDATA[React]]></category>
		<category><![CDATA[Schnell]]></category>
		<category><![CDATA[Streit]]></category>
		<category><![CDATA[Vue]]></category>
		<category><![CDATA[Web]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1017</guid>

					<description><![CDATA[<p>React wird häufig im Zusammenhang mit Web-UI-Frameworks wie Vue.js oder Angular genannt – tatsächlich handelt es sich bei React aber nicht um ein Framework im eigentlichen Sinn. Stattdessen ist es eine vergleichsweise kleine und einfache &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/21/erklaerung-react/">React &#8211; Die Bibliothek für eine dynamische und interaktive Benutzeroberfläche</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>React wird häufig im Zusammenhang mit Web-UI-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a> wie Vue.js oder Angular genannt – tatsächlich handelt es sich bei React aber nicht um ein <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> im eigentlichen Sinn. Stattdessen ist es eine vergleichsweise kleine und einfache Programmbibliothek zum Rendern webbasierter grafischer Oberflächen. Anders als UI-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a> verzichtet es auf Konzepte für Datenbindung, Routing, Dependency-Injection und Ähnliches. Das macht React zunächst einmal viel &#8222;leichtgewichtiger&#8220; als viele der Alternativen.</p>



<p>Das Modell von React verspricht durch die Konzepte des unidirektionalen Datenflusses und des Virtual DOM den einfachen, aber trotzdem performanten Aufbau komplexer Anwendungen. React bildet aus diesem Grund die Basis für Single-Page-Webanwendungen, kann jedoch auch mit <a href="https://ceosbay.com/2022/11/11/node-js-mit-npm-auf-macos/" target="_blank" rel="noreferrer noopener">Node.js</a> serverseitig (vor-)gerendert werden.</p>



<p>Ja, im Jahr 2013 war dies schon etwas ziemlich Gutes. Vor allem im Vergleich zum damaligen Angular, dass zwar komfortabel zu benutzen war aber aufgrund einer mäßigen Performance und der fehlenden Skalierbarkeit kaum in der Lage war, komplexe UIs abzubilden. Genau diese Probleme hat React damals bereits adressiert und führte zu diesem Zweck verschiedene Konzepte aus der funktionalen Programmierung in die UI-Welt ein.</p>



<h3 class="wp-block-heading">Kurze Zeitreise</h3>



<p>React ist die Entwicklung von Jordan Walke, einem Softwareentwickler bei Facebook. Erstmals 2011 für den Facebooks Newsfeed und später für Instagram eingesetzt. Facebook kündigte 2013 an, dass die Weiterführung des Projekts zukünftig als <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a> stattfindet. Im Oktober 2014 wurde die Lizenz von der anfangs Apache-Lizenz auf die BSD-Lizenz mit zusätzlicher Patentlizenz geändert, welche den Widerruf der Lizenz bei Klagen gegen oder bei Patentstreitigkeiten mit Facebook vorbehält.</p>



<p>Diese unkonventionelle Klausel führte zu einer kontroversen Diskussion. Eine Umformulierung dieser Patentklausel im April 2015 beendete die Auseinandersetzung nicht. Im Juli 2017 kündigte die Apache Software Foundation an, keine Apache-Projekte mehr mit dieser Zusatzlizenz zu erlauben. Entgegen anfänglichen Angaben, nicht von der Klausel abrücken zu wollen, veröffentlichte Facebook im September 2017 React in der Version 16.0.0 unter der MIT-Lizenz. Vielleicht werde ich in der Zukunft noch die verschiedenen Lizenzmodelle etwas näher erläutern.</p>



<h3 class="wp-block-heading">Fazit</h3>



<p>Wie bereits erwähnt, ist es eine sehr spezialisierte und leichtgewichtige Programmbibliothek, sodass man es als einen Baustein von vielen betrachten kann. Da man React zwingend mit anderen Modulen kombinieren muss, um eine vollständige Anwendung zu entwickeln, kann React nicht zu einer systemrelevanten Größe heranwachsen. Gleichzeitig bildet diese Tatsache auch den Nachteil. Bei Angular hat man beispielsweise weniger Aufwand. Doch über Angular werde ich noch später schreiben.</p>



<p>Nicht zu vergessen ist die Integration mit <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>. Anders als zum Beispiel in Vue.js oder Angular gibt es in React keinen proprietären Weg, um eine Schleife, eine Bedingung oder eine Datenbindung herzustellen. Stattdessen verwendet React hierfür schlichtweg die Konstrukte, die es in <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a> ohnehin gibt. Alles in allem ist es eine gute Lösung, mit einer eigenen Philosophie und einer relativ hohen Einstiegshürde, da man sich mit JSX auseinandersetzen muss. Ja, auch ich werde mich in einem zukünftigen Beitrag damit auseinandersetzen 🙂 Aber Einstiegshürden sind ja in der Regel relativ und es lässt sich darüber diskutieren, ob der Einstieg nun leicht oder schwer ist 😉</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/21/erklaerung-react/">React &#8211; Die Bibliothek für eine dynamische und interaktive Benutzeroberfläche</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/12/21/erklaerung-react/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1017</post-id>	</item>
	</channel>
</rss>
