<?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>Syntax Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/syntax/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/syntax/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Fri, 21 Feb 2025 08:14:36 +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>Syntax Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/syntax/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>Syntax – Unsichtbares Regelwerk der Kommunikation und des Codes</title>
		<link>https://ceosbay.com/2025/03/15/syntax-unsichtbares-regelwerk-der-kommunikation-und-des-codes/</link>
					<comments>https://ceosbay.com/2025/03/15/syntax-unsichtbares-regelwerk-der-kommunikation-und-des-codes/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sat, 15 Mar 2025 17:31:00 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[API-Testing]]></category>
		<category><![CDATA[Bildung]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[KI-Testing]]></category>
		<category><![CDATA[Performance-Testing]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Softwarequalität]]></category>
		<category><![CDATA[Spieleentwicklung]]></category>
		<category><![CDATA[Testautomatisierung]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Testmanagement]]></category>
		<category><![CDATA[Wissenschaftskommunikation]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Fehler]]></category>
		<category><![CDATA[Grammatik]]></category>
		<category><![CDATA[Informatik]]></category>
		<category><![CDATA[Kommunikation]]></category>
		<category><![CDATA[Linguistik]]></category>
		<category><![CDATA[Programmierlogik]]></category>
		<category><![CDATA[Programmierung]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Regeln]]></category>
		<category><![CDATA[Softwareentwicklung]]></category>
		<category><![CDATA[Sprache]]></category>
		<category><![CDATA[Struktur]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Syntaxfehler]]></category>
		<category><![CDATA[Textverarbeitung]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=3961</guid>

					<description><![CDATA[<p>Syntax – ein Begriff, den viele vielleicht aus dem Sprachunterricht oder der Informatik kennen. Doch was bedeutet er genau und warum spielt er eine so große Rolle in unserer Kommunikation sowie in der Programmierung? In &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2025/03/15/syntax-unsichtbares-regelwerk-der-kommunikation-und-des-codes/">Syntax – Unsichtbares Regelwerk der Kommunikation und des Codes</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Syntax – ein Begriff, den viele vielleicht aus dem Sprachunterricht oder der <a href="https://ceosbay.com/2023/11/08/informatik-die-zukunft-des-codes/">Informatik</a> kennen. Doch was bedeutet er genau und warum spielt er eine so große Rolle in unserer Kommunikation sowie in der Programmierung? In diesem Blogbeitrag gehen wir auf die Bedeutung ein und zeigen, warum sie für Sprache und Code gleichermaßen essenziell ist.</p>



<figure class="wp-block-image size-full"><img data-recalc-dims="1" fetchpriority="high" decoding="async" width="871" height="871" src="https://i0.wp.com/ceosbay.com/wp-content/uploads/2025/02/Syntax.jpg?resize=871%2C871&#038;ssl=1" alt="Syntax" class="wp-image-4035" srcset="https://i0.wp.com/ceosbay.com/wp-content/uploads/2025/02/Syntax.jpg?w=1024&amp;ssl=1 1024w, https://i0.wp.com/ceosbay.com/wp-content/uploads/2025/02/Syntax.jpg?resize=300%2C300&amp;ssl=1 300w, https://i0.wp.com/ceosbay.com/wp-content/uploads/2025/02/Syntax.jpg?resize=150%2C150&amp;ssl=1 150w, https://i0.wp.com/ceosbay.com/wp-content/uploads/2025/02/Syntax.jpg?resize=768%2C768&amp;ssl=1 768w" sizes="(max-width: 871px) 100vw, 871px" /></figure>



<h3 class="wp-block-heading">Was ist Syntax?</h3>



<p>Der Begriff stammt aus dem Griechischen und bedeutet so viel wie „Zusammenstellung“ oder „Ordnung“. In der Linguistik beschreibt Syntax die Regeln, nach denen Wörter in einer Sprache zu sinnvollen Sätzen angeordnet werden. In der <a href="https://ceosbay.com/2023/11/08/informatik-die-zukunft-des-codes/">Informatik</a> bezeichnet sie die Struktur und Grammatik von Programmiersprachen.</p>



<p>Ob in einer natürlichen Sprache wie Deutsch oder in einer Programmiersprache wie <a href="https://ceosbay.com/2022/12/20/erklaerung-python/">Python</a> – ohne eine klar definierte Syntax wäre die Verständigung unmöglich oder zumindest erheblich erschwert.</p>



<h3 class="wp-block-heading">In der Sprache</h3>



<p>In der menschlichen Sprache sorgt die Syntax dafür, dass wir verständliche und korrekte Sätze bilden können. Ein einfaches Beispiel:</p>



<ul class="wp-block-list">
<li><strong>Richtig:</strong> „Der Hund jagt die Katze.“</li>



<li><strong>Falsch:</strong> „Hund die Katze der jagt.“</li>
</ul>



<p>Im zweiten Fall ist der Satz grammatikalisch falsch und schwer verständlich. Auch wenn alle Wörter vorhanden sind, fehlt die korrekte Anordnung, um den Satz sinnvoll zu machen.</p>



<h3 class="wp-block-heading">Syntax in der Programmierung</h3>



<p>In der <a href="https://ceosbay.com/2022/12/20/erklaerung-python/">Informatik</a> bestimmt die Syntax einer Programmiersprache, wie man Code schreiben muss, damit der Computer versteht und weiß, was es ausführen soll. </p>



<h3 class="wp-block-heading">Hier ein Beispiel mit Python:</h3>



<p><strong>Korrek</strong>t<strong>:</strong></p>



<pre class="wp-block-code"><code>print("Hallo, Welt!")</code></pre>



<p><strong>Falsch:</strong></p>



<pre class="wp-block-code"><code>print "Hallo, Welt!"</code></pre>



<p>Der zweite Code führt zu einem Syntaxfehler, da moderne Versionen von Python Klammern für die <code>print</code>-Funktion verlangen.</p>



<h3 class="wp-block-heading">Warum ist Syntax so wichtig?</h3>



<p>Es ist die Basis für klare und eindeutige Kommunikation – sei es in der Sprache oder in der Programmierung. Ist sie fehlerhaft, kann sie zu Missverständnissen oder sogar kompletten Fehlfunktionen führen. In der Programmierung kann ein kleiner Fehler in der Syntax dazu führen, dass ein ganzes Programm nicht läuft oder unerwartete Fehler produziert.</p>



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



<p>Egal ob in der natürlichen Sprache oder in der Programmierung – sie ist unerlässlich für eine funktionierende Kommunikation. Während sie in der Sprache Flexibilität erlaubt, ist sie in der <a href="https://ceosbay.com/2022/12/20/erklaerung-python/">Informatik</a> oft streng festgelegt. Wer sich mit Syntax auskennt und sie beherrscht, hat sowohl in der Kommunikation als auch in der Programmierung einen entscheidenden Vorteil.</p>



<p>Hast du schon einmal Syntaxfehler erlebt? Teile deine Erfahrungen in den Kommentaren!</p>
<p>Der Beitrag <a href="https://ceosbay.com/2025/03/15/syntax-unsichtbares-regelwerk-der-kommunikation-und-des-codes/">Syntax – Unsichtbares Regelwerk der Kommunikation und des Codes</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2025/03/15/syntax-unsichtbares-regelwerk-der-kommunikation-und-des-codes/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3961</post-id>	</item>
		<item>
		<title>Jasmine &#8211; JavaScript Testautomatisierung</title>
		<link>https://ceosbay.com/2023/04/16/erklaerung-jasmine/</link>
					<comments>https://ceosbay.com/2023/04/16/erklaerung-jasmine/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sun, 16 Apr 2023 06:23:35 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Automatisierung]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Anwendungen]]></category>
		<category><![CDATA[Behavior]]></category>
		<category><![CDATA[Best]]></category>
		<category><![CDATA[Browser]]></category>
		<category><![CDATA[CI]]></category>
		<category><![CDATA[CI/CD]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Dev]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Ent-to-End]]></category>
		<category><![CDATA[Flexibilität]]></category>
		<category><![CDATA[Funktionsweise]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Integration]]></category>
		<category><![CDATA[Integrationstests]]></category>
		<category><![CDATA[Jasmine]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Karma]]></category>
		<category><![CDATA[Konstrukt]]></category>
		<category><![CDATA[Mocking]]></category>
		<category><![CDATA[Mocks]]></category>
		<category><![CDATA[Objekt]]></category>
		<category><![CDATA[Objekte]]></category>
		<category><![CDATA[Open-Source]]></category>
		<category><![CDATA[Ops]]></category>
		<category><![CDATA[Practice]]></category>
		<category><![CDATA[Prozess]]></category>
		<category><![CDATA[Prozesse]]></category>
		<category><![CDATA[Qualität]]></category>
		<category><![CDATA[Qualitätsmanagement]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Spec]]></category>
		<category><![CDATA[Specs]]></category>
		<category><![CDATA[Spy]]></category>
		<category><![CDATA[spyOn]]></category>
		<category><![CDATA[Struktur]]></category>
		<category><![CDATA[Strukturieren]]></category>
		<category><![CDATA[Suite]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[Testabdeckung]]></category>
		<category><![CDATA[Testbeschreibung]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Unit]]></category>
		<category><![CDATA[Vorteile]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1483</guid>

					<description><![CDATA[<p>Die moderne Softwareentwicklung hat eine Vielzahl von Werkzeugen und Technologien, um Entwicklern bei der Gestaltung und Implementierung robuster Anwendungen zu helfen. Eines dieser Werkzeuge, dass ich in den letzten Tagen auf GitHub entdeckt habe, ist &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/04/16/erklaerung-jasmine/">Jasmine &#8211; JavaScript Testautomatisierung</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Die moderne Softwareentwicklung hat eine Vielzahl von Werkzeugen und Technologien, um Entwicklern bei der Gestaltung und Implementierung robuster Anwendungen zu helfen. Eines dieser Werkzeuge, dass ich in den letzten Tagen auf <a href="https://ceosbay.com/2022/11/19/erklaerung-github/" target="_blank" rel="noreferrer noopener">GitHub</a> entdeckt habe, ist <a href="https://jasmine.github.io" target="_blank" rel="noreferrer noopener">Jasmine</a>. Es ist ein bekanntes <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> zur Testautomatisierung für <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>. In diesem Blogbeitrag schaue ich mir an, was Jasmine ist, wie es funktioniert und welche Vorteile es bietet, wenn es um das Testen von <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Anwendungen geht.</p>



<h3 class="wp-block-heading">Was ist Jasmine?</h3>



<p>Jasmine ist ein beliebtes Open-Source-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> für <a href="https://ceosbay.com/2023/03/12/erklaerung-behavior-driven-development/" target="_blank" rel="noreferrer noopener">Behavior-Driven Devel</a><a href="https://ceosbay.com/2023/03/12/erklaerung-behavior-driven-development/">opment</a> (<a href="https://ceosbay.com/2023/03/12/erklaerung-behavior-driven-development/" target="_blank" rel="noreferrer noopener">BDD</a>) Tests in <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>. Man verwendet es hauptsächlich, um das Verhalten von <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Code durch das Schreiben von Test-Spezifikationen zu überprüfen. Jasmine bietet eine saubere, leicht verständliche Syntax und ermöglicht Entwicklern, ihre Tests unabhängig von ihrer Implementierung auszuführen. Dadurch können sie schnell und effizient sicherstellen, dass ihr Code wie erwartet funktioniert.</p>



<h3 class="wp-block-heading">Vorteile:</h3>



<ul class="wp-block-list">
<li><strong>Einfachheit</strong>: Man hat Jasmine entwickelt, um leicht verständlich und zugänglich für Entwickler zu sein. Die Test-Syntax ist klar und einfach, sodass selbst Entwickler, die neu in der Testautomatisierung sind, schnell damit arbeiten können.</li>



<li><strong>Unabhängigkeit</strong>: Jasmine ist unabhängig von anderen <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>&#8211;<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a>, Browsern und DOM-Manipulationsbibliotheken, was bedeutet, dass man es praktisch jedem <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Projekt verwenden kann, unabhängig von der verwendeten Technologie.</li>



<li><strong>Flexibilität</strong>: Entwickler können Jasmine für Unit-Tests, Integrationstests und sogar für End-to-End-Tests verwenden. Dies gibt ihnen die Möglichkeit, das gesamte Verhalten ihrer Anwendung mit einem einzigen Tool abzudecken.</li>
</ul>



<h3 class="wp-block-heading">Wie funktioniert Jasmine?</h3>



<p>Jasmine basiert auf einer Hierarchie von Suites und Specs. Suites sind Gruppen von verwandten Tests, während Specs einzelne Testfälle sind. Diese Hierarchie ermöglicht es Entwicklern, ihre Tests klar zu strukturieren und den Code leicht zu organisieren.</p>



<p>Es verwendet das &#8222;describe&#8220;-Konstrukt, um Test-Suites zu definieren. Jede Suite kann mehrere Test-Spezifikationen (Specs) enthalten, die mit dem &#8222;it&#8220;-Konstrukt definiert werden. Diese Specs enthalten Erwartungen (Expectations) in Bezug auf das zu testende Verhalten des Codes.</p>



<h4 class="wp-block-heading">Ein einfaches Beispiel für eine Jasmine Test-Suite sieht wie folgt aus:</h4>



<pre class="wp-block-code"><code>describe("A suite is just a function", function() {
  let a;

  it("and so is a spec", function() {
    a = true;

    expect(a).toBe(true);
  });
});</code></pre>



<p>oder</p>



<pre class="wp-block-code"><code>describe('Array', () =&gt; {
  describe('#indexOf()', () =&gt; {
    it('sollte -1 zurückgeben, wenn der Wert nicht im Array vorhanden ist', () =&gt; {
      expect(&#91;1, 2, 3].indexOf(4)).toBe(-1);
    });
  });
});</code></pre>



<h3 class="wp-block-heading">Integration in die Softwareentwicklung</h3>



<p>Man kann Jasmine problemlos in moderne <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Projekte und Build-Tools integrieren. Mit Integrationen für Tools wie Grunt, Gulp und Webpack lässt es sich nahtlos in bestehende Entwicklungsprozesse einfügen. Darüber hinaus gibt es auch Jasmine-Plugins für gängige Entwicklungsumgebungen wie Visual Studio Code oder <a href="https://ceosbay.com/2023/03/10/erklaerung-intellij-idea/" target="_blank" rel="noreferrer noopener">IntelliJ</a>, die das Schreiben und Ausführen von Tests noch einfacher und bequemer gestalten.</p>



<p>Man kann es auch mit anderen Testing-Tools und Libraries kombinieren, um noch umfassendere Testlösungen zu schaffen. Beispielsweise kann man es mit Karma (einem <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Test-Runner) verwenden, um Tests in verschiedenen Browsern auszuführen, oder mit Protractor für End-to-End-Tests in Angular-Anwendungen.</p>



<h3 class="wp-block-heading">Best Practices für Jasmine-Tests</h3>



<p>Um das Beste aus Jasmine herauszuholen und effektive Tests zu erstellen, sind hier einige bewährte Vorgehensweisen:</p>



<ul class="wp-block-list">
<li><strong>Klare Testbeschreibungen</strong>: Man sollte aussagekräftige und präzise Beschreibungen für Suites und Specs verwenden. Dies erleichtert das Verständnis des Testzwecks und die Identifizierung von Fehlern.</li>



<li><strong>Kleine, fokussierte Tests</strong>: Es ist ratsam, Tests zu schreiben, die nur eine Funktion oder ein Verhalten testen. Dies erleichtert das Auffinden und Beheben von Fehlern, da man dadurch genau im Blick behält, welcher Teil des Codes betroffen ist.</li>



<li><strong>Testabdeckung</strong>: Man sollte sicherstellen, dass man eine ausreichende Testabdeckung für den Code hat. Dies bedeutet, dass man alle wichtigen Funktionen und Szenarien in den Tests berücksichtigt.</li>



<li><strong>Mocking und Spies</strong>: Es ist zu empfehlen, Mock-Objekte und Spies zu verwenden, um externe Abhängigkeiten zu isolieren und den Testfokus auf den zu testenden Code zu richten. Jasmine bietet dafür eingebaute Funktionen wie createSpy und spyOn.</li>



<li><strong>Regelmäßige Testausführung</strong>: Man sollte die Tests regelmäßig ausführen, um sicherzustellen, dass Änderungen im Code nicht zu unerwarteten Fehlern führen. Daher ist es ratsam, Jasmine in den <a href="https://ceosbay.com/2023/04/14/erklaerung-ci-cd/" target="_blank" rel="noreferrer noopener">Continuous Integration (CI) bzw. Continuous Deployment</a> (<a href="https://ceosbay.com/2023/04/14/erklaerung-ci-cd/" target="_blank" rel="noreferrer noopener">CI/CD</a>) Prozess integrieren, um automatisch Tests auszuführen, sobald man Codeänderungen vornimmt.</li>
</ul>



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



<p>Jasmine ist ein leistungsstarkes und vielseitiges <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> für das Testen von <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Anwendungen. Mit seiner klaren Syntax, Flexibilität und Integration in moderne Entwicklungsprozesse ist es ein unverzichtbares Werkzeug für jeden <a href="https://ceosbay.com/2022/11/12/javascript/">JavaScript</a>-Entwickler. Durch die Befolgung der Best Practices und die regelmäßige Ausführung von Tests können Entwickler sicherstellen, dass ihr Code zuverlässig und fehlerfrei funktioniert. Insgesamt trägt Jasmine dazu bei, die Qualität von <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>-Anwendungen zu verbessern und die Entwicklungszeit zu reduzieren.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/04/16/erklaerung-jasmine/">Jasmine &#8211; JavaScript Testautomatisierung</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/04/16/erklaerung-jasmine/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1483</post-id>	</item>
		<item>
		<title>Cucumber &#8211; Das kollaborative Tool für Behavior Driven Development</title>
		<link>https://ceosbay.com/2023/03/11/erklaerung-cucumber/</link>
					<comments>https://ceosbay.com/2023/03/11/erklaerung-cucumber/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sat, 11 Mar 2023 20:08:00 +0000</pubDate>
				<category><![CDATA[Big-Data]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[BDD]]></category>
		<category><![CDATA[Behavior]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[Cucumber]]></category>
		<category><![CDATA[Development]]></category>
		<category><![CDATA[Driven]]></category>
		<category><![CDATA[Frame]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[Gherkin]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Machine]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Tool]]></category>
		<category><![CDATA[Verhaltensgetrieben]]></category>
		<category><![CDATA[Virtual]]></category>
		<category><![CDATA[Werkzeug]]></category>
		<category><![CDATA[Work]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1117</guid>

					<description><![CDATA[<p>Cucumber ist ein Open Source (BDD-Framework) Behavior-Driven-Development-Werkzeug bzw. Framework (Siehe &#8222;Verhaltensgetriebene Softwareentwicklung&#8220; – Thematisiere ich definitiv und explizit in einem zukünftigen Beitrag) zur textuellen Spezifikation von Anforderungen an Software und zum automatisierten Testing bzw. mit &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/11/erklaerung-cucumber/">Cucumber &#8211; Das kollaborative Tool für Behavior Driven Development</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Cucumber ist ein <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open Source</a> (BDD-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a>) Behavior-Driven-Development-Werkzeug bzw. <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> (Siehe &#8222;Verhaltensgetriebene Softwareentwicklung&#8220; – Thematisiere ich definitiv und explizit in einem zukünftigen Beitrag) zur textuellen Spezifikation von Anforderungen an Software und zum automatisierten Testing bzw. mit dem sich (unter anderem) sehr gut lesbare, gut zu wartbare und elegante Akzeptanz-Tests für Web-Anwendungen schreiben lassen.</p>



<p>Cucumber wurde ursprünglich in der Programmiersprache <a href="https://ceosbay.com/2022/12/19/erklaerung-ruby/" target="_blank" rel="noreferrer noopener">Ruby</a> für Ruby-Anwendungen geschrieben. In der Zwischenzeit unterstützt es aber auch andere Programmiersprachen wie Java und alle anderen auf der Java <a href="https://ceosbay.com/2022/11/10/erklaerung-virtuelle-maschine/" target="_blank" rel="noreferrer noopener">Virtual Machine</a> gängigen Programmiersprachen sowie C++ und <a href="https://ceosbay.com/2022/11/12/javascript/">JavaScript</a>. Darüber hinaus gibt es Projekte, die Cucumber noch für weitere Programmiersprachen zur Verfügung stellen und sich als Teil der Cucumber-Familie sehen. Darunter beispielsweise SpecFlow, eine Implementierung für C#.</p>



<h3 class="wp-block-heading">Wie funktioniert Cucumber?</h3>



<p>Wie auch bei den meisten anderen BDD-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a> werden in Cucumber Funktionalitäten mittels der Beschreibungssprache „Gherkin“ beschrieben. Gherkin verwendet natürliche Schriftsprache als Grundlage. Lediglich bestimmte Schlüsselwörter werden besonders behandelt.</p>



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



<p>Gherkin ist die Sprache, die Cucumber verwendet, um Testfälle zu definieren. Sie ist so konzipiert, dass sie sich nicht-technisch und für den Menschen lesbar gestaltet. Es beschreibt Anwendungsfälle in Bezug auf ein Softwaresystem. Der Zweck hinter der Gherkin-Syntax ist die Förderung verhaltensorientierter Entwicklungspraktiken in einem Entwicklungsteam, einschließlich Geschäftsanalysten und Managern. Sie zielt darauf ab, bereits in den ersten Phasen der Anforderungsdefinition durch die Geschäftsleitung und in anderen Phasen des Entwicklungslebenszyklus einer Anwendung feste, eindeutige Anforderungen durchzusetzen.</p>



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



<p>Die Syntax ist ähnlich wie bei <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a> zeilenorientiert aufgebaut. Die Struktur einer Datei wird durch Leerzeichen und andere Steuerzeichen definiert. # wird als Zeilen bzw. Kommentarzeichen verwendet und kann an jeder beliebigen Stelle in einer Datei stehen. Anweisungen sind jede nicht leere und nicht kommentierte Zeile. Sie bestehen aus einem konkreten Gherkin-Schlüsselwort, gefolgt von einer Zeichenkette.</p>



<p>Alle Gherkin-Dateien haben die Dateierweiterung .feature. Sie enthalten eine einzelne Feature-Definition für das zu testende System und sind ein ausführbares Testskript.</p>



<p>Neben der Bereitstellung eines Skripts für automatisierte Tests ist die Syntax von Gherkin so konzipiert, dass sie eine einfache Dokumentation des zu testenden Codes ermöglicht. Gherkin unterstützt derzeit Schlüsselwörter in Dutzenden von Sprachen.</p>



<h3 class="wp-block-heading">Schlüsselwörter der Gherkin Sprache</h3>



<ul class="wp-block-list">
<li>Feature: Name bzw. die Bezeichnung des Features</li>



<li>Rule: Regeln des Features</li>



<li>Example oder Scenario: Die Bezeichnung des Szenarios (Beispielsweise &#8222;Die erfolgreiche Anmeldung mit gültigen Anmeldeinformationen.&#8220;)</li>



<li>Given, When, Then, And, But für die steps (oder *)- Vorbedingungen (Gegeben sei), die Aktion, die ausgeführt wird bzw. die Erweiterung durch andere Schlüsselwörter um die Aktion die ausgeführt wird zu ergänzen bzw. zu erweitern. (Der User gibt beispielsweise seine Zugangsdaten, Username and Password ein), gefolgt von der erwarteten Reaktion des Systems (Beispielsweise die Nachricht, bei einem erfolgreichen Login.)</li>



<li>Background &#8211; Ein Background ermöglicht es einem, den nachfolgenden Scenarios einen gewissen Kontext hinzuzufügen. Es kann einen oder mehrere Vorgegebene Schritte enthalten, die vor jedem Scenario aber nach jedem Before hook ausgeführt werden.</li>



<li>Scenario Outline oder Scenario Template &#8211; Damit lässt sich dasselbe Szenario mehrmals mit unterschiedlichen Wertekombinationen ausführen.</li>



<li>Examples oder Scenarios &#8211; Eine Scenario Outline muss einen oder mehrere Abschnitte mit Examples bzw. Scenarios enthalten. Sie dienen als Steps bzw. Interpretationsvorlage, die nie direkt ausgeführt werden. Stattdessen wird die Szenariogliederung einmal für jede Zeile mit den darunter liegenden Abschnitten von Examples ausgeführt.</li>
</ul>



<h3 class="wp-block-heading">Gherkin in deutscher Sprache</h3>



<p>Um eine Funktionalität auf Deutsch zu schreiben, muss am Beginn des Features # language: de angegeben werden. Damit sind u.A. folgende deutsche Schlüsselwörter verfügbar:</p>



<ul class="wp-block-list">
<li>Funktionalität</li>



<li>Grundlage</li>



<li>Szenario</li>



<li>Szenariogrundriss</li>



<li>Beispiele</li>



<li>Angenommen</li>



<li>Gegeben sei</li>



<li>Wenn</li>



<li>Dann</li>



<li>Und und Aber, sowie *</li>
</ul>



<h3 class="wp-block-heading">Die Command line (CL)</h3>



<p>Cucumber verfügt über eine integrierte Kommandozeilenschnittstelle, die eine umfassende Liste von Anweisungen enthält. Wie die meisten Kommandozeilen-Tools bietet Cucumber die Option &#8211;help an, die eine Zusammenfassung der Befehle liefert, die diese Command Line akzeptiert.</p>



<pre class="wp-block-code"><code>$ cucumber --help
        -r, --require LIBRARY|DIR        Require files before executing the features.
        --i18n LANG                      List keywords for in a particular language.
                                         Run with "--i18n help" to see all languages.
        -f, --format FORMAT              How to format features (Default: pretty).
        -o, --out &#91;FILE|DIR]             Write output to a file/directory instead of
        ...</code></pre>



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



<p>Gherkin ist nicht nur zum Schreiben von automatisierten Tests geeignet. Man kann Gherkin grundsätzlich auch dazu verwenden, um strukturierte Tests zu erstellen, die man später als Projektdokumentation verwendet kann. Erst die Eigenschaft, strukturiert zu sein, gibt uns die Möglichkeit zu automatisieren.</p>



<p>Sowohl die Sprache Gherkin wie auch das Tool Cucumber, bieten weitaus mehr Funktionalitäten, die ich hier nicht thematisiert habe. Zumal ich auch recht frisch in dieses Thema eingestiegen bin. So ist beispielsweise ein Datengetriebenes Szenario mithilfe von Tabellen möglich. Fernab können verschiedene Schritte, die im Prinzip das Gleiche tun, über Platzhalter definiert werden.</p>



<p>Um solche und weitere Vorteile zu nutzen, ist neben Cucumber oder anderen Testtools vor allem Disziplin beim Verfassen der Dokumentation bzw. der Gherkin Dokumente gefragt. Gleichzeitig müssen die formulierten Schritte präzise genug sein, um die gewünschten Verhaltensweisen ausreichend genau zu beschreiben. Ansonsten zerfällt die Abstraktion und Gherkin Dokumente werden lediglich zu etwas besser lesbaren Testskripten statt dem Ansatz des BDD zu folgen.</p>



<p>Cucumber lässt sich auch mit IntelliJ nutzen. Aber darüber gibt es dann in naher Zukunft einen weiteren Beitrag.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/11/erklaerung-cucumber/">Cucumber &#8211; Das kollaborative Tool für Behavior Driven Development</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/03/11/erklaerung-cucumber/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1117</post-id>	</item>
		<item>
		<title>CSS &#8211; Die Sprache für ansprechendes Webdesign und kreative Freiheit</title>
		<link>https://ceosbay.com/2023/02/27/erklaerung-css/</link>
					<comments>https://ceosbay.com/2023/02/27/erklaerung-css/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Mon, 27 Feb 2023 18:17:00 +0000</pubDate>
				<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Bildschirm]]></category>
		<category><![CDATA[Bildschirmgrößen]]></category>
		<category><![CDATA[Border]]></category>
		<category><![CDATA[Cascading]]></category>
		<category><![CDATA[color]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS1]]></category>
		<category><![CDATA[CSS2]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[Deklaration]]></category>
		<category><![CDATA[Dev]]></category>
		<category><![CDATA[Devices]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwickeln]]></category>
		<category><![CDATA[Font]]></category>
		<category><![CDATA[Gerät]]></category>
		<category><![CDATA[Geräteeigenschaften]]></category>
		<category><![CDATA[Gestaltung]]></category>
		<category><![CDATA[Handy]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[https]]></category>
		<category><![CDATA[Inhalt]]></category>
		<category><![CDATA[Konzept]]></category>
		<category><![CDATA[Konzepte]]></category>
		<category><![CDATA[Margin]]></category>
		<category><![CDATA[Padding]]></category>
		<category><![CDATA[Präsentation]]></category>
		<category><![CDATA[Praxis]]></category>
		<category><![CDATA[Responsive]]></category>
		<category><![CDATA[Selektor]]></category>
		<category><![CDATA[Sheets]]></category>
		<category><![CDATA[Size]]></category>
		<category><![CDATA[Smartphones]]></category>
		<category><![CDATA[Style]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Technologie]]></category>
		<category><![CDATA[W3C]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web-Entwicklung]]></category>
		<category><![CDATA[Webdesign]]></category>
		<category><![CDATA[Webseite]]></category>
		<category><![CDATA[Webseiten]]></category>
		<category><![CDATA[Websites]]></category>
		<category><![CDATA[www]]></category>
		<category><![CDATA[www.]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1388</guid>

					<description><![CDATA[<p>Cascading Style Sheets, besser bekannt als CSS, ist eine entscheidende Technologie zur Gestaltung und Präsentation von Inhalten im Web. Seit der Einführung im Jahr 1996 hat CSS die Art und Weise revolutioniert, wie Entwickler das &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/27/erklaerung-css/">CSS &#8211; Die Sprache für ansprechendes Webdesign und kreative Freiheit</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Cascading Style Sheets, besser bekannt als CSS, ist eine entscheidende Technologie zur Gestaltung und Präsentation von Inhalten im Web. Seit der Einführung im Jahr 1996 hat CSS die Art und Weise revolutioniert, wie Entwickler das Erscheinungsbild von Websites und Webanwendungen gestalten.</p>



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



<p>CSS (Cascading Style Sheets) entstand in den 90er Jahren als Reaktion auf die wachsende Komplexität des Webdesigns und das Bedürfnis, eine klarere Trennung zwischen Inhalt (<a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>) und Gestaltung (CSS) zu erreichen. Bis dahin verwendeten Webdesigner und Entwickler hauptsächlich <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>-Tags und -Attribute, um das Design einer Webseite zu kontrollieren. Diese Praxis führte jedoch zu unübersichtlichem und schwer wartbarem Code und schränkte die kreativen Möglichkeiten ein.</p>



<p>Der norwegische Informatiker und Web-Pionier Håkon Wium Lie ist der Hauptentwickler von Cascading Style Sheets. Zusammen mit dem belgischen Informatiker Bert Bos schlug er 1994 die Idee von CSS vor. Lie arbeitete zu dieser Zeit am CERN (der Europäischen Organisation für Kernforschung) und war am Projekt beteiligt, das zum ersten Webbrowser führte, dem WorldWideWeb (später umbenannt in Nexus). Lie und Bos erkannten, dass man eine Lösung für das Design-Problem finden musste, und entwickelten das Konzept der Cascading Style Sheets.</p>



<p>Später übernahm World Wide Web Consortium (W3C) Cascading Style Sheets. Eine internationale Organisation, die Webstandards entwickelt und pflegt. Das W3C veröffentlichte CSS Level 1 (CSS1) im Jahr 1996. Relativ schnell nahm man es als Webstandard auf. Seitdem hat sich Cascading Style Sheets stetig weiterentwickelt und umfasst mittlerweile mehrere Versionen und Module, die unterschiedliche Aspekte des Webdesigns abdecken.</p>



<h3 class="wp-block-heading">Die Syntax von CSS</h3>



<p>Ein CSS besteht aus Regelsätzen, die jeweils aus einem Selektor und einer Deklaration bestehen. Der Selektor bestimmt, auf welche Elemente man die Stilregeln anwendet, während die Deklaration eine oder mehrere Eigenschaften und deren Werte definiert, die man auf die ausgewählten Elemente angewenden möchte.</p>



<h4 class="wp-block-heading">Beispiel:</h4>



<pre class="wp-block-code"><code>h1 {
  color: red;
  font-size: 24px;
}</code></pre>



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



<p>Selektoren sind die grundlegenden Bausteine eines CSS-Stylesheets. Sie bestimmen, welche HTML-Elemente von den definierten Stilregeln betroffen sind. Es gibt verschiedene Arten von Selektoren, wie z.B. Element-Selektoren, Klassen-Selektoren, ID-Selektoren und Pseudoklassen.</p>



<h3 class="wp-block-heading">Das Box-Modell von CSS</h3>



<p>Eines der grundlegenden Konzepte in CSS ist das Box-Modell. Die Darstellung aller Elemente auf einer Webseite erfolgt als rechteckige Box.</p>



<h4 class="wp-block-heading">Diese bestehen aus den folgenden vier Bereichen:</h4>



<ol class="wp-block-list" type="1">
<li>Inhalt</li>



<li>Padding</li>



<li>Border</li>



<li>Margin.</li>
</ol>



<p>Durch die Manipulation dieser Bereiche kann man das Layout und die Anordnung von Elementen auf der Webseite steuern.</p>



<h3 class="wp-block-heading">Responsive Webdesign</h3>



<p>Das Aufkommen von mobilen Geräten hat die Wichtigkeit von Responsive Webdesign signifikant erhöht. CSS bietet verschiedene Techniken, um Websites auf unterschiedlichen Bildschirmgrößen und Geräten optimal darzustellen. Die bekannteste Technik ist die Verwendung von Media Queries, die es ermöglichen, verschiedene Cascading Style Sheet Regeln abhängig von der Bildschirmgröße oder anderen Geräteeigenschaften anzuwenden.</p>



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



<p>CSS ist immer noch ein unverzichtbares Werkzeug für Webdesigner und Entwickler. Durch das Verständnis der Grundlagen und der zugrundeliegenden Konzepte kann man das Aussehen und die Benutzererfahrung von Webseiten und Webanwendungen drastisch verbessern. Die Flexibilität und Leistungsfähigkeit von CSS eröffnen eine Welt der kreativen Möglichkeiten und helfen dabei, das Web nach den eigenen Vorstellungen zu gestalten.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/27/erklaerung-css/">CSS &#8211; Die Sprache für ansprechendes Webdesign und kreative Freiheit</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/02/27/erklaerung-css/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1388</post-id>	</item>
		<item>
		<title>PHP &#8211; Die Sprache für dynamische und interaktive Webanwendungen</title>
		<link>https://ceosbay.com/2023/02/26/erklaerung-php/</link>
					<comments>https://ceosbay.com/2023/02/26/erklaerung-php/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sun, 26 Feb 2023 18:03:00 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Betriebssystem]]></category>
		<category><![CDATA[Big-Data]]></category>
		<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MacOS]]></category>
		<category><![CDATA[Netzwerk]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Sicherheit]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Anwendungsgebiete]]></category>
		<category><![CDATA[API]]></category>
		<category><![CDATA[APIS]]></category>
		<category><![CDATA[Arrays]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[CodeIgniter]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Commerce]]></category>
		<category><![CDATA[Cookies]]></category>
		<category><![CDATA[Dateien]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[E-Commerce]]></category>
		<category><![CDATA[Einfach]]></category>
		<category><![CDATA[Entwicklungszeit]]></category>
		<category><![CDATA[Hombrew]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[Hypertext]]></category>
		<category><![CDATA[Integer]]></category>
		<category><![CDATA[Joomla]]></category>
		<category><![CDATA[Laravel]]></category>
		<category><![CDATA[Magento]]></category>
		<category><![CDATA[Management]]></category>
		<category><![CDATA[Media]]></category>
		<category><![CDATA[Objekte]]></category>
		<category><![CDATA[Online]]></category>
		<category><![CDATA[Open-Source]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Preprocessor]]></category>
		<category><![CDATA[PrestaShop]]></category>
		<category><![CDATA[Programmiersprache]]></category>
		<category><![CDATA[Quelle]]></category>
		<category><![CDATA[Social]]></category>
		<category><![CDATA[Sprache]]></category>
		<category><![CDATA[Standardbibliothek]]></category>
		<category><![CDATA[Strings]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[Web]]></category>
		<category><![CDATA[Web-Services]]></category>
		<category><![CDATA[Webhosting]]></category>
		<category><![CDATA[Webserver]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Zahlen]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1379</guid>

					<description><![CDATA[<p>PHP (Hypertext Preprocessor) ist eine weit verbreitete, serverseitige Skriptsprache, speziell für die Webentwicklung. Ursprünglich von Rasmus Lerdorf 1994 ins Leben gerufen, hat es sich zu einer der wichtigsten und einflussreichsten Skriptsprachen in der Webentwicklung entwickelt. &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/26/erklaerung-php/">PHP &#8211; Die Sprache für dynamische und interaktive Webanwendungen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>PHP (Hypertext Preprocessor) ist eine weit verbreitete, serverseitige Skriptsprache, speziell für die Webentwicklung. Ursprünglich von Rasmus Lerdorf 1994 ins Leben gerufen, hat es sich zu einer der wichtigsten und einflussreichsten Skriptsprachen in der Webentwicklung entwickelt. Es hat den Vorteil, dass man es leicht in <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a> einbetten kann und sich nahtlos in <a href="https://ceosbay.com/2023/02/28/erklaerung-cms/" target="_blank" rel="noreferrer noopener">Content-Management-Systeme</a> wie <a href="https://ceosbay.com/2023/03/01/erklaerung-wordpress/" target="_blank" rel="noreferrer noopener">WordPress</a>, Joomla und Drupal integrieren lässt.</p>



<h3 class="wp-block-heading">Grundprinzipien von PHP</h3>



<p>Es ist eine serverseitige Sprache, was bedeutet, dass man PHP-Skripte ausschließlich auf einem Server ausführt, bevor es das Ergebnis an den Webbrowser des Clients sendet. Dies hat den Vorteil, dass man sensible Daten wie Passwörter oder Datenbankverbindungen nicht direkt im Quellcode des Clients preisgeben muss.</p>



<h4 class="wp-block-heading">Einige der grundlegenden Prinzipien:</h4>



<ul class="wp-block-list">
<li>Einfache Syntax: Es ist bekannt für seine einfache und leicht verständliche Syntax, die es sowohl Anfängern als auch erfahrenen Programmierern ermöglicht, relativ schnell produktiv zu sein.</li>
</ul>



<ul class="wp-block-list">
<li>Dynamisches Typisierungssystem: Im Gegensatz zu streng typisierten Sprachen erlaubt es Variablen, verschiedene Datentypen (z.B. Strings, Zahlen, Arrays und Objekte) während der Laufzeit zu speichern. Dies ermöglicht eine höhere Flexibilität und verkürzt die Entwicklungszeit.</li>
</ul>



<ul class="wp-block-list">
<li>Integration mit <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>: Man kann PHP-Skripte direkt in <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>-Dateien einbetten, wodurch es einfach ist, dynamische Inhalte innerhalb einer statischen <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>-Seite zu erstellen.</li>
</ul>



<ul class="wp-block-list">
<li>Umfangreiche Standardbibliothek: Es bietet eine umfangreiche Sammlung von Funktionen und Klassen, die die Arbeit mit Dateien, Datenbanken, Sitzungen, Cookies, Netzwerkprotokollen und vielem mehr erleichtern.</li>
</ul>



<h3 class="wp-block-heading">Vorteile von PHP</h3>



<ul class="wp-block-list">
<li>Plattformübergreifend: Es ist kompatibel mit verschiedenen Betriebssystemen wie Windows, <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/">Linux</a> und MacOS. Dies macht es zu einer idealen Wahl für Webentwickler, die plattformunabhängige Anwendungen erstellen möchten. Bis vor einigen Iterationen von MacOS konnte man einen Server nativ über das Terminal starten. Dies hat man aber scheinbar aufgrund von Sicherheitsrisiken unterbunden. Möglich ist dies nun via <a href="https://ceosbay.com/2022/10/25/homebrew-der-fehlende-paketmanager-fuer-macos-lassen-wir-fluegel-wachsen/" target="_blank" rel="noreferrer noopener">Homebrew</a>. Hierzu verweise ich gerne auf den folgenden <a href="https://ceosbay.com/2022/10/25/homebrew-der-fehlende-paketmanager-fuer-macos-lassen-wir-fluegel-wachsen/" target="_blank" rel="noreferrer noopener">Artikel</a>.</li>
</ul>



<ul class="wp-block-list">
<li>Leistungsfähigkeit: Man kann komplexe und umfangreiche Webanwendungen verarbeiten und ist in der Lage, auch bei hoher Last stabile Leistung zu liefern.</li>
</ul>



<ul class="wp-block-list">
<li>Kostenfrei und Open Source: Es ist eine <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Software, was bedeutet, dass man sie kostenlos herunterladen, verwenden und modifizieren darf. Dies hat zu einer großen und engagierten Entwicklergemeinschaft geführt, die nach wie vor zur ständigen Verbesserung und Erweiterung der Sprache beiträgt.</li>
</ul>



<ul class="wp-block-list">
<li>Breite Unterstützung: Viele Webhosting-Unternehmen unterstützen PHP von Haus aus und man kann es leicht auf einem Webserver installieren.</li>
</ul>



<h3 class="wp-block-heading">Anwendungsgebiete von PHP</h3>



<p>Wie bereits erwähnt ist es ist eine vielseitige Programmiersprache. Man kann sie aus diesem Grund in einer Vielzahl von Anwendungsfällen einsetzen. Einige der wichtigsten Anwendungsgebiete von PHP sind:</p>



<ul class="wp-block-list">
<li>Content-Management-Systeme (CMS): PHP ist die treibende Kraft hinter einigen der beliebtesten <a href="https://ceosbay.com/2023/02/28/erklaerung-cms/" target="_blank" rel="noreferrer noopener">CMS</a> wie <a href="https://ceosbay.com/2023/03/01/erklaerung-wordpress/" target="_blank" rel="noreferrer noopener">WordPress</a>, Joomla und Drupal. Diese Systeme erleichtern die Erstellung und Verwaltung von Websites ohne tiefgreifende Programmierkenntnisse.</li>
</ul>



<ul class="wp-block-list">
<li>E-Commerce-Plattformen: Man verwendet es häufig zur Entwicklung von Online-Shops und E-Commerce-Plattformen. Beispiele hierfür sind WooCommerce, Magento oder PrestaShop. Die Skalierbarkeit und Flexibilität von PHP ermöglichen es Entwicklern, umfangreiche und leistungsfähige E-Commerce-Websites zu erstellen, die auf die individuellen Bedürfnisse der Kunden zugeschnitten sind.</li>
</ul>



<ul class="wp-block-list">
<li>Webanwendungen: PHP eignet sich hervorragend für die Entwicklung von benutzerdefinierten Webanwendungen und hat eine Vielzahl von <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a> wie Laravel, Symfony oder CodeIgniter, die den Entwicklungsprozess vereinfachen und beschleunigen.</li>
</ul>



<ul class="wp-block-list">
<li>APIs und Web-Services: Aufgrund seiner Fähigkeit, einfach und schnell mit verschiedenen Datenquellen und -formaten zu arbeiten, eignet sich PHP hervorragend zur Entwicklung von APIs und Web-Services, die als Brücke zwischen unterschiedlichen Anwendungen und Plattformen fungieren.</li>
</ul>



<ul class="wp-block-list">
<li>Social-Media-Plattformen: PHP ist die Grundlage einiger bekannter Social-Media-Plattformen wie Facebook, dass man ursprünglich in PHP entwickelt hat. PHP kann man aber auch bei der Entwicklung eigener Social-Media-Plattformen oder bei der Integration von Social-Media-Funktionalitäten in bestehende Anwendungen einsetzen.</li>
</ul>



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



<p>PHP hat sich als eine robuste, vielseitige und weit verbreitete serverseitige Skriptsprache etabliert, die man in einer Vielzahl von Anwendungsbereichen einsetzt. Mit seiner einfachen Syntax, den leistungsfähigen Funktionen und breiten Unterstützung durch Webhosting-Unternehmen, ist PHP eine ausgezeichnete Wahl für Webentwickler, die dynamische, interaktive und benutzerfreundliche Websites und Webanwendungen erstellen möchten. Die engagierte und wachsende Entwicklergemeinschaft garantiert die fortlaufende Verbesserung und Erweiterung der Sprache, was PHP zu einer attraktiven Option für Webentwickler auf der ganzen Welt macht.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/26/erklaerung-php/">PHP &#8211; Die Sprache für dynamische und interaktive Webanwendungen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/02/26/erklaerung-php/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1379</post-id>	</item>
		<item>
		<title>Autodesk Maya &#8211; Für grandiose Welten und atemberaubende visuelle Effekte</title>
		<link>https://ceosbay.com/2023/02/24/erklaerung-autodesk-maya/</link>
					<comments>https://ceosbay.com/2023/02/24/erklaerung-autodesk-maya/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Fri, 24 Feb 2023 20:42:00 +0000</pubDate>
				<category><![CDATA[3D]]></category>
		<category><![CDATA[Animation]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Gaming]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[3ds Max]]></category>
		<category><![CDATA[Anfänger]]></category>
		<category><![CDATA[Animationen]]></category>
		<category><![CDATA[Animationsindustrie]]></category>
		<category><![CDATA[Animationssoftware]]></category>
		<category><![CDATA[Area]]></category>
		<category><![CDATA[Autodesk]]></category>
		<category><![CDATA[Benutzerfreundlichkeit]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Dev]]></category>
		<category><![CDATA[Devs]]></category>
		<category><![CDATA[Editor]]></category>
		<category><![CDATA[Einstellung]]></category>
		<category><![CDATA[Einstellungen]]></category>
		<category><![CDATA[Embedded]]></category>
		<category><![CDATA[Fehlererkennung]]></category>
		<category><![CDATA[Films]]></category>
		<category><![CDATA[Fortgeschritten]]></category>
		<category><![CDATA[Games]]></category>
		<category><![CDATA[HDR]]></category>
		<category><![CDATA[HDRI]]></category>
		<category><![CDATA[Hervorhebung]]></category>
		<category><![CDATA[JPEG]]></category>
		<category><![CDATA[JPG]]></category>
		<category><![CDATA[Komplex]]></category>
		<category><![CDATA[Komplexe]]></category>
		<category><![CDATA[Komplexer]]></category>
		<category><![CDATA[Language]]></category>
		<category><![CDATA[Languages]]></category>
		<category><![CDATA[Light]]></category>
		<category><![CDATA[Mapping]]></category>
		<category><![CDATA[Maya]]></category>
		<category><![CDATA[MEL]]></category>
		<category><![CDATA[Modelle]]></category>
		<category><![CDATA[Modellierung]]></category>
		<category><![CDATA[Modellierungswerkzeuge]]></category>
		<category><![CDATA[NURBS]]></category>
		<category><![CDATA[Paint]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[PNG]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Realismus]]></category>
		<category><![CDATA[Realistisch]]></category>
		<category><![CDATA[Realistischer]]></category>
		<category><![CDATA[Rendering]]></category>
		<category><![CDATA[Ressourcen]]></category>
		<category><![CDATA[Skript]]></category>
		<category><![CDATA[Skripten]]></category>
		<category><![CDATA[Skripting]]></category>
		<category><![CDATA[Smoke]]></category>
		<category><![CDATA[Spiele]]></category>
		<category><![CDATA[Spieleentwicklung]]></category>
		<category><![CDATA[Spot]]></category>
		<category><![CDATA[Sprachen]]></category>
		<category><![CDATA[Subdivision]]></category>
		<category><![CDATA[Surface]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[Texturen]]></category>
		<category><![CDATA[Texturieren]]></category>
		<category><![CDATA[Texturierung]]></category>
		<category><![CDATA[TIFF]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[Werkzeuge]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1427</guid>

					<description><![CDATA[<p>Autodesk Maya ist eine führende 3D-Animationssoftware, die viele professionelle Animationsdesigner und -Entwickler verwenden, um realistische und interaktive 3D-Modelle sowie Animationen zu erstellen. Die Software bietet eine umfangreiche Palette von Funktionen und Werkzeugen, die es Benutzern &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/24/erklaerung-autodesk-maya/">Autodesk Maya &#8211; Für grandiose Welten und atemberaubende visuelle Effekte</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Autodesk Maya ist eine führende 3D-Animationssoftware, die viele professionelle Animationsdesigner und -Entwickler verwenden, um realistische und interaktive 3D-Modelle sowie Animationen zu erstellen. Die Software bietet eine umfangreiche Palette von Funktionen und Werkzeugen, die es Benutzern ermöglichen, komplexe 3D-Projekte zu erstellen und zu realisieren.</p>



<h3 class="wp-block-heading">Tools bzw. Werkzeuge in Maya</h3>



<p>Eine der wichtigsten Funktionen von Autodesk Maya ist die 3D-Modellierung. Die Software bietet verschiedene Arten von Modellierungswerkzeugen. Einschließlich Polygon-Modellierung, NURBS-Modellierung und Subdivision-Surface-Modellierung. Diese Werkzeuge ermöglichen es Benutzern, 3D-Modelle mit verschiedenen Geometrien und Strukturen zu erstellen. Die Modellierungswerkzeuge in Autodesk Maya sind äußerst intuitiv und einfach zu bedienen, was es Anfängern erleichtert, ihre ersten 3D-Modelle zu erstellen.</p>



<p>Eine weitere wichtige Funktion von Autodesk Maya ist die Texturierung. Die Software bietet verschiedene Texturierungswerkzeuge, die Benutzern die Möglichkeit geben, realistische Texturen auf ihre 3D-Modelle anzuwenden. Texture Paint, 2D- und 3D-Mapping-Tools sowie eigene Texturen sind nur einige der Funktionen, die in Autodesk Maya zur Verfügung stehen. Dadurch können Benutzer die Texturen auf ihre 3D-Modelle anpassen und ihr Projekt so realistischer gestalten.</p>



<p>Die Beleuchtung ist ein weiterer wichtiger Aspekt bei der Erstellung von realistischen 3D-Modellen und -Animationen. Autodesk Maya bietet eine Vielzahl von Beleuchtungswerkzeugen, einschließlich Point-Light, Spot-Light, Area-Light und Ambient-Light. Diese Werkzeuge ermöglichen es Benutzern, realistische Lichteffekte in ihre 3D-Projekte zu integrieren. Durch die Anwendung von Beleuchtungseffekten können 3D-Modelle und -Animationen realistischer wirken und eine höhere visuelle Qualität erreichen.</p>



<p>Das Animationswerkzeug in Autodesk Maya ist eine weitere wichtige Funktion. Die Software bietet verschiedene Arten von Animationswerkzeugen, einschließlich Keyframe-Animation, Motion-Capture-Animation und dynamischer Simulation. Dies ermöglicht es Benutzern, komplexe Bewegungen und Interaktionen zwischen verschiedenen 3D-Objekten zu erstellen. Die Animationswerkzeuge sind sehr leistungsfähig und können Anfängern und erfahrenen Animationsdesignern gleichermaßen helfen, ihre Projekte zu erstellen.</p>



<p>Der Rendering-Prozess ist ein weiterer wichtiger Schritt bei der Erstellung von 3D-Modellen und -Animationen. Darüber lassen sich ganze Bücher schreiben doch hier läuft es eher auf einen separaten Beitrag hinaus. Autodesk Maya bietet eine Vielzahl von Rendering-Optionen, einschließlich der Integration von anderen Autodesk-Produkten wie Autodesk 3ds Max und Autodesk Smoke. Auch ist es möglich Drittanbieter Software, wie VRay einzubinden. Doch dazu mehr in einem anderen Beitrag. Die Software ermöglicht es Benutzern, ihre Renderings in verschiedenen Dateiformaten zu exportieren, darunter JPEG, TIFF, PNG und andere. Dadurch können Benutzer ihre 3D-Projekte in verschiedenen Anwendungen verwenden und die gewünschte visuelle Qualität erreichen.</p>



<h3 class="wp-block-heading">Erweiterte bzw. erweiterbare Funktionen</h3>



<h4 class="wp-block-heading">MEL</h4>



<p>Mel für (Maya Embedded Language) ist eine von Autodesk Maya unterstützte Skriptsprache. Es ist eine interpretierte Sprache, die es Benutzern ermöglicht, benutzerdefinierte Skripte und Plugins zu erstellen, um Arbeitsabläufe zu automatisieren und Projekte zu optimieren.</p>



<p>Die Einbindung von Mel in Autodesk Maya ist relativ einfach und unkompliziert. Die Software bietet eine integrierte Mel-Shell, mit der Benutzer Mel-Code direkt in der Benutzeroberfläche von Autodesk Maya ausführen können. Diese Mel-Shell bietet auch eine Vielzahl von Tools und Funktionen, die Benutzern helfen, ihre Skripte zu debuggen und zu testen.</p>



<p>Neben der Mel-Shell bietet es auch eine integrierte Skript-Editor-Umgebung, in der Benutzer ihre Mel-Skripte erstellen, bearbeiten und debuggen können. Der Skript-Editor bietet eine Vielzahl von Tools und Funktionen, darunter Syntax-Hervorhebung, Codevervollständigung, Fehlererkennung und automatische Formatierung. Benutzer können ihre Mel-Skripte auch speichern und in der Zukunft wiederverwenden.</p>



<p>Autodesk Maya unterstützt auch die Erstellung von benutzerdefinierten Mel-Plugins. Diese Plugins kann man mit Mel-Skripts erstellen, um benutzerdefinierte Funktionen und Werkzeuge in Autodesk Maya zu integrieren. Die Erstellung von Mel-Plugins erfordert jedoch fortgeschrittene Kenntnisse in Mel und in der Programmierung im Allgemeinen.</p>



<h4 class="wp-block-heading">Python</h4>



<p>Auch <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a> lässt sich als weitere Skriptsprache, in Autodesk Maya verwenden. Es ist eine sehr leistungsfähige und einfach zu erlernende Sprache, die sich in vielen Bereichen der Programmierung einsetzen lässt. Hier geht es zu dem Beitrag über <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>. Die Integration von <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a> in Autodesk Maya ermöglicht es Benutzern, ihre Arbeitsabläufe zu automatisieren und benutzerdefinierte Werkzeuge und Plug-Ins zu erstellen.</p>



<p>Die Integration von <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a> in Autodesk Maya ist sehr einfach. Die Software bietet eine integrierte <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Shell, mit der Benutzer <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Code direkt in der Benutzeroberfläche von Autodesk Maya ausführen können. Die <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Shell bietet auch eine Vielzahl von Tools und Funktionen, die Benutzern helfen, ihre Skripte zu debuggen und zu testen.</p>



<p>Neben der <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Shell bietet Maya auch eine integrierte <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Skript-Editor-Umgebung, in der Benutzer ihre <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Skripte erstellen, bearbeiten und debuggen können. Der Skript-Editor bietet eine Vielzahl von Tools und Funktionen, darunter Syntax-Hervorhebung, Codevervollständigung, Fehlererkennung und automatische Formatierung. Benutzer können ihre <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Skripte speichern, in der Zukunft wiederverwenden und mit anderen Benutzern teilen.</p>



<p>Maya unterstützt die Erstellung von benutzerdefinierten <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Plugins. Diese Plugins kann man mit <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Skripts erstellen, um benutzerdefinierte Funktionen und Werkzeuge in Autodesk Maya zu integrieren. Die Erstellung von <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>-Plugins erfordert jedoch fortgeschrittene Kenntnisse in <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a> und in der Programmierung im Allgemeinen.</p>



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



<p>Insgesamt ist Autodesk Maya eine leistungsstarke 3D-Animationssoftware, die es Benutzern ermöglicht, komplexe 3D-Modelle und -Animationen zu erstellen. Es ist immer noch ein unverzichtbares Werkzeug für professionelle Animationsdesigner und -Entwickler, die hochwertige 3D-Projekte erstellen möchten. Ich selbst, arbeite bereits seit Ende der 90er Jahren damit. Sei es anfangs noch für Hobby-Projekte oder aber im professionellen Umfeld. Autodesk Maya ist mir ans Herz gewachsen. Darüber hinaus ist es auch sehr beliebt in der Film-, Fernseh- und Spieleindustrie, da es eine Vielzahl von Funktionen bietet, um realistische und interaktive 3D-Modelle und -Animationen zu erstellen. Viele Feature Filme und Werbefilme gehen auf die Kappe von Autodesk Maya.</p>



<p>Die Benutzeroberfläche von Autodesk Maya ist sehr benutzerfreundlich und intuitiv gestaltet. Die meisten Werkzeuge und Funktionen sind leicht zugänglich und einfach zu bedienen. Die Software bietet auch eine Vielzahl von Tutorials, Online-Ressourcen und Schulungen, um Benutzern zu helfen, die verschiedenen Funktionen und Werkzeugen zu verstehen und zu nutzen.</p>



<p>Autodesk Maya wird ständig aktualisiert und weiterentwickelt, um den sich ständig ändernden Anforderungen der Animationsindustrie gewachsen zu sein. Neue Funktionen kommen regelmäßig hinzu, um die Benutzerfreundlichkeit und Effizienz der Software zu verbessern. Die Community ist ebenfalls sehr aktiv und bietet den Benutzern eine Plattform, um ihre Arbeit zu teilen und Feedback zu erhalten.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/24/erklaerung-autodesk-maya/">Autodesk Maya &#8211; Für grandiose Welten und atemberaubende visuelle Effekte</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/02/24/erklaerung-autodesk-maya/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1427</post-id>	</item>
		<item>
		<title>Visual Studio Code &#8211; Das leichte Schwergewicht</title>
		<link>https://ceosbay.com/2023/02/22/visual-studio-code-der-leichte-schwergewicht/</link>
					<comments>https://ceosbay.com/2023/02/22/visual-studio-code-der-leichte-schwergewicht/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Wed, 22 Feb 2023 20:30:00 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Betriebssystem]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MacOS]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[.Net]]></category>
		<category><![CDATA[Angular]]></category>
		<category><![CDATA[Anpassung]]></category>
		<category><![CDATA[Arbeitsbereiche]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[Clean]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Coder]]></category>
		<category><![CDATA[Coding]]></category>
		<category><![CDATA[Core]]></category>
		<category><![CDATA[Cross]]></category>
		<category><![CDATA[Debugging]]></category>
		<category><![CDATA[Definition]]></category>
		<category><![CDATA[Django]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Editor]]></category>
		<category><![CDATA[Erweiterbarkeit]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Frameworks]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Go]]></category>
		<category><![CDATA[Integration]]></category>
		<category><![CDATA[Intelli]]></category>
		<category><![CDATA[IntelliJ]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[live]]></category>
		<category><![CDATA[Live Share]]></category>
		<category><![CDATA[Multifunktionsfenster]]></category>
		<category><![CDATA[Online]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[Plattform]]></category>
		<category><![CDATA[React]]></category>
		<category><![CDATA[Refactoring]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Rust]]></category>
		<category><![CDATA[SHARE]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Studio]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[Terminal]]></category>
		<category><![CDATA[To]]></category>
		<category><![CDATA[TypeScript]]></category>
		<category><![CDATA[Umgebungen]]></category>
		<category><![CDATA[Visual]]></category>
		<category><![CDATA[VS]]></category>
		<category><![CDATA[Vue.js]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1498</guid>

					<description><![CDATA[<p>In der Welt der Softwareentwicklung gibt es unzählige Werkzeuge und Technologien, die Programmierern dabei helfen, effizienter und produktiver zu arbeiten. Eine solche Technologie ist die IDE Visual Studio Code, der sich in kürzester Zeit zu &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/22/visual-studio-code-der-leichte-schwergewicht/">Visual Studio Code &#8211; Das leichte Schwergewicht</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In der Welt der Softwareentwicklung gibt es unzählige Werkzeuge und Technologien, die Programmierern dabei helfen, effizienter und produktiver zu arbeiten. Eine solche Technologie ist die IDE Visual Studio Code, der sich in kürzester Zeit zu einem der beliebtesten Editoren für Entwickler entwickelt hat. In diesem Blog-Beitrag thematisiere ich Visual Studio Code.</p>



<h3 class="wp-block-heading">Hintergrund von Visual Studio Code</h3>



<p>Visual Studio Code (VS Code) ist ein plattformübergreifender <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Code-Editor von Microsoft. Er wurde erstmals im Jahr 2015 veröffentlicht und hat sich seitdem kontinuierlich weiterentwickelt. Der Editor unterstützt Windows, macOS und <a href="https://ceosbay.com/2022/11/22/erklaerung-linux/" target="_blank" rel="noreferrer noopener">Linux</a>. Es bietet Entwicklern eine nahtlose und einheitliche Erfahrung über verschiedene Plattformen hinweg.</p>



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



<p>Visual Studio Code entstand als Teil von Microsofts Bemühungen, Entwicklern leichtgewichtige, leistungsfähige und plattformübergreifende Werkzeuge zur Verfügung zu stellen. Die Geschichte von Visual Studio Code reicht zurück bis ins Jahr 2011. Als Erich Gamma, einer der Erfinder des berühmten Design-Patterns-Buchs und der <a href="https://ceosbay.com/2023/03/19/erklaerung-eclipse/" target="_blank" rel="noreferrer noopener">Eclipse</a>-Plattform, bei Microsoft anfing. Zusammen mit anderen Entwicklern arbeitete er an einem Projekt namens &#8222;Project Monaco&#8220;. Es begann als Experiment, um browserbasierte Entwicklungs-Umgebungen zu erforschen.</p>



<p>Project Monaco fokussierte sich darauf, eine leistungsfähige, webbasierte Code-Editing-Umgebung zu schaffen. Genutzt von mehreren Microsoft-Produkten wie Azure DevOps (früher Visual Studio Online) und OneDrive. Im Laufe der Zeit vergrößerte sich das Projekt immer weiter. Das Team erkannte schon bald, dass die wachsende Codebasis und die leistungsstarken Funktionen das Zeug zu einem eigenständigen Produkt hatten.</p>



<p>Am 29. April 2015 stellte Microsoft Visual Studio Code erstmals während der Build-Konferenz in San Francisco vor. Es war von Anfang an als <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open-Source</a>-Projekt konzipiert und steht unter der MIT-Lizenz der Masse zur Verfügung. Seit der ersten Veröffentlichung hat VS Code eine große Entwickler-Community angezogen, die ständig zur Verbesserung des Produkts beiträgt.</p>



<p>Mit der Veröffentlichung von Visual Studio Code verfolgte Microsoft eine neue Strategie. Sie öffneten die Pforten zu der Technologie und zu den Werkzeugen für Entwickler aller Plattformen und Programmiersprachen. VS Code war eines der ersten Produkte, das diese neue Richtung widerspiegelte. Heute ist VS Code einer der am häufigsten verwendeten Code-Editoren. Darüber hinaus hat es dazu beigetragen, das Bild von Microsoft als Unternehmen zu verändern. Ein Bild der Offenheit und Zusammenarbeit in der Entwicklergemeinschaft.</p>



<h3 class="wp-block-heading">Hauptmerkmale von Visual Studio Code</h3>



<ul class="wp-block-list">
<li><strong>Syntax-Hervorhebung und IntelliSense</strong>: VS Code unterstützt Syntax-Hervorhebung für eine Vielzahl von Programmiersprachen. Es bietet Entwicklern eine klar strukturierte und leicht verständliche Darstellung des Codes. IntelliSense ist eine intelligente Code-Vervollständigungsfunktion. KI-Algorithmen helfen dabei, den Code effizienter und schneller zu schreiben. Dies passiert, indem es automatisch Vorschläge für Variablen, Funktionen und andere Code-Elemente anzeigt.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Git-Integration</strong>: Die Integration von <a href="https://ceosbay.com/2022/11/18/erklaerung-git/" target="_blank" rel="noreferrer noopener">Git</a> ermöglicht es Entwicklern, direkt aus dem Editor heraus Änderungen am Code vorzunehmen. Sowohl das committen und mit Remote-Repositories zu synchronisieren sind möglich. Darüber hinaus erfolgt die Anzeige der Änderungen im Code direkt im Editor. Dadurch kann man leichter erkennen, was, wer, wann verändert hat.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Debugging</strong>: VS Code bietet umfangreiche Debugging-Möglichkeiten für viele Programmiersprachen und Plattformen. Es ermöglicht das Anlegen von Breakpoints, das Verfolgen von Variablenwerten und das Ausführen von Code schrittweise. Dies hilft Entwicklern, Fehler effizienter zu finden und zu beheben.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Anpassung und Erweiterbarkeit</strong>: VS Code ermöglicht es den Nutzern, den Editor individuell anzupassen und mit zusätzlichen Funktionen zu erweitern. Es gibt eine Vielzahl von Plugins und Erweiterungen, die man im Visual Studio Code Marketplace finden und installieren kann.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Terminal-Integration</strong>: VS Code integriert das Terminal direkt in den Editor. Dadurch kann man problemlos Terminal Befehle direkt im Editor ausführen. Auch die Build-Tools lassen sich direkt darüber verwenden. Folglich muss man den Editor nicht verlassen, um auf die Befehlszeile zuzugreifen.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Code-Navigation und -Refactoring</strong>: Mithilfe von Funktionen wie &#8222;Go to Definition&#8220;, &#8222;Find All References&#8220; und &#8222;Rename Symbol&#8220; können Entwickler ihren Code effizienter navigieren und organisieren. Diese Funktionen machen das Code-Refactoring leichter und fördern die Erstellung von sauberem, gut strukturiertem Code. Nachdem ich erst kürzlich diese Funktion in <a href="https://ceosbay.com/2023/03/10/erklaerung-intellij-idea/" target="_blank" rel="noreferrer noopener">IntelliJ</a> auch recht vorteilhaft fand noch der Verweis auf den <a href="https://ceosbay.com/2023/03/10/erklaerung-intellij-idea/" target="_blank" rel="noreferrer noopener">Beitrag</a>.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Unterstützung von Programmiersprachen und Framework</strong>s: VS Code unterstützt eine Vielzahl von Programmiersprachen und <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a>. Darunter <a href="https://ceosbay.com/2022/11/12/javascript/" target="_blank" rel="noreferrer noopener">JavaScript</a>, TypeScript, <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>, C#, <a href="https://ceosbay.com/2023/02/25/erklaerung-c/" target="_blank" rel="noreferrer noopener">C++</a>, <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>, <a href="https://ceosbay.com/2023/02/26/erklaerung-php/" target="_blank" rel="noreferrer noopener">PHP</a>, <a href="https://ceosbay.com/2022/12/19/erklaerung-ruby/" target="_blank" rel="noreferrer noopener">Ruby</a>, Go, Rust und viele mehr. Dank der Unterstützung von zahlreichen <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Frameworks</a> wie <a href="https://ceosbay.com/2023/03/21/erklaerung-angular/" target="_blank" rel="noreferrer noopener">Angular</a>, <a href="https://ceosbay.com/2022/12/21/erklaerung-react/" target="_blank" rel="noreferrer noopener">React</a>, Vue.js, Django und .NET Core sind Entwickler in der Lage, in ihren bevorzugten Sprachen und Umgebungen zu arbeiten.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Arbeitsbereiche und Multifunktionsfenster</strong>: VS Code ermöglicht das Öffnen mehrerer Projekte und Arbeitsbereiche gleichzeitig und unterstützt auch das Teilen von Fenstern, sodass man problemlos mehrere Dateien nebeneinander anzeigen und bearbeiten kann. Dies erleichtert die Zusammenarbeit an komplexen Projekten erheblich.</li>
</ul>



<ul class="wp-block-list">
<li><strong>Live Share</strong>: Mit der Live Share-Funktion können Entwickler ihre Arbeitsbereiche in Echtzeit mit anderen teilen und gemeinsam am Code arbeiten. Dies ist besonders hilfreich für Teamarbeit, Pair-Programming und das Lösen von Problemen gemeinsam mit Kollegen.</li>
</ul>



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



<p>Visual Studio Code ist ein mächtiges und vielseitiges Tool für Entwickler, das sich in den letzten Jahren zu einem unverzichtbaren Bestandteil der Softwareentwicklung entwickelt hat. Durch die kontinuierliche Weiterentwicklung und die Anpassungsfähigkeit des Editors befindet sich VS Code mit an der Spitze der IDE’s bzw. Code Editoren und hilft Entwicklern dabei, produktiver und effizienter zu arbeiten. Obwohl es viele großartige Funktionen in Visual Studio Code gibt, ist es wichtig, sich daran zu erinnern, dass kein Tool oder Editor perfekt ist. Davon abgesehen hat jeder Entwickler seine eigenen Präferenzen und Arbeitsweisen. Wenn man jedoch auf der Suche nach einem leistungsstarken, anpassungsfähigen und umfangreichen Code-Editor ist, kann man Visual Studio Code auf jeden Fall in Betracht ziehen.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/02/22/visual-studio-code-der-leichte-schwergewicht/">Visual Studio Code &#8211; Das leichte Schwergewicht</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/02/22/visual-studio-code-der-leichte-schwergewicht/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1498</post-id>	</item>
		<item>
		<title>Python &#8211; Die Sprache für schnelle Prototypen, Datenanalyse und künstliche Intelligenz</title>
		<link>https://ceosbay.com/2022/12/20/erklaerung-python/</link>
					<comments>https://ceosbay.com/2022/12/20/erklaerung-python/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Tue, 20 Dec 2022 20:24:58 +0000</pubDate>
				<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Künstliche Intelligenz]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Raspberry Pi]]></category>
		<category><![CDATA[3]]></category>
		<category><![CDATA[ABC]]></category>
		<category><![CDATA[Autodesk]]></category>
		<category><![CDATA[Blender]]></category>
		<category><![CDATA[Cinema]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Coder]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Flying]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[Grafik]]></category>
		<category><![CDATA[Komplex]]></category>
		<category><![CDATA[Learning]]></category>
		<category><![CDATA[Lernen]]></category>
		<category><![CDATA[Machine]]></category>
		<category><![CDATA[Maschinensprache]]></category>
		<category><![CDATA[Mathematik]]></category>
		<category><![CDATA[Monty]]></category>
		<category><![CDATA[Open]]></category>
		<category><![CDATA[Paradigma]]></category>
		<category><![CDATA[Paradigmen]]></category>
		<category><![CDATA[Programme]]></category>
		<category><![CDATA[Programmiersprache]]></category>
		<category><![CDATA[Py]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[Quanten]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Sprache]]></category>
		<category><![CDATA[Syntax]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1012</guid>

					<description><![CDATA[<p>Python ist eine universelle gut lesbare höhere Programmiersprache. Code-Blöcke werden statt mit geschweiften Klammern durch Einrückungen strukturiert. Python unterstützt die objektorientierte, aspektorientierte und die funktionale Programmierung, wenn es um die Programmierparadigmen geht. Ferner bietet es &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/20/erklaerung-python/">Python &#8211; Die Sprache für schnelle Prototypen, Datenanalyse und künstliche Intelligenz</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Python ist eine universelle gut lesbare höhere Programmiersprache. Code-Blöcke werden statt mit geschweiften Klammern durch Einrückungen strukturiert.</p>



<p>Python unterstützt die objektorientierte, aspektorientierte und die funktionale Programmierung, wenn es um die Programmierparadigmen geht. Ferner bietet es eine dynamische Typisierung. Wie viele dynamische Sprachen wird Python oft als Skriptsprache genutzt. Die Sprache weist ein offenes, gemeinschaftsbasiertes Entwicklungsmodell auf, dass durch die gemeinnützige <a href="https://www.python.org/psf-landing/" target="_blank" rel="noreferrer noopener">Python Software Foundation</a> gestützt wird, die die Definition der Sprache in der Referenzumsetzung CPython pflegt.</p>



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



<p>Die Sprache wurde Anfang der 1990er Jahre von Guido van Rossum am Centrum Wiskunde &amp; Informatica in Amsterdam als Nachfolger für die Programmiersprache ABC entwickelt und war ursprünglich für das verteilte Betriebssystem Amoeba gedacht.</p>



<p>Wie in meinem Beitrag über <a href="https://ceosbay.com/2022/11/19/erklaerung-github/" target="_blank" rel="noreferrer noopener">GitHub</a> bereits erwähnt, geht der Name nicht auf die gleichnamige Schlangengattung zurück, sondern bezog sich ursprünglich auf die englische Komikertruppe Monty Python. In der Dokumentation finden sich daher auch einige Anspielungen auf Sketche aus dem Flying Circus. Trotzdem etablierte sich die Assoziation zur Schlange, was sich unter anderem in der Programmiersprache Cobra sowie dem Python-Toolkit „Boa“ und schlussendlich in dem heutigen Logo wiederfindet. Die erste Vollversion erschien im Januar 1994 unter der Bezeichnung Python 1.0. Gegenüber früheren Versionen wurden einige Konzepte der funktionalen Programmierung implementiert, die allerdings später wieder aufgegeben wurden.</p>



<p>Python 2.0 erschien am 16. Oktober 2000. Neue Funktionen umfassten eine voll funktionsfähige Garbage Collection (automatische Speicherbereinigung) und die Unterstützung für den Unicode-Zeichensatz. In Version 2.6 wurde eine Hilfe eingebaut, mit der angezeigt werden konnte, welche Code-Sequenzen vom Nachfolger Python 3 nicht mehr unterstützt werden und daher in darauf aufbauenden Versionen nicht mehr funktionsfähig sind.</p>



<p>Python 3.0 (auch 3000 genannt) erschien am 3. Dezember 2008 nach längerer Entwicklungszeit. Es beinhaltet einige tiefgreifende Änderungen an der Sprache, etwa das Entfernen von Redundanzen bei Befehlssätzen und veralteten Konstrukten. Da Python 3.0 hierdurch teilweise inkompatibel zu früheren Versionen ist, beschloss die Python Software Foundation, 2.7 parallel zur Version 3 bis Ende 2019 weiter mit neuen Versionen zu unterstützen.</p>



<p>Freuen dürfen wir uns auf die mittlerweile Version 3.12, die im Oktober dieses Jahres folgen soll.</p>



<h3 class="wp-block-heading">Wieso Python?</h3>



<p>Es wurde mit dem Ziel größter Einfachheit und Übersichtlichkeit entworfen. Die Sprache kommt mit relativ wenigen Schlüsselwörtern aus und ist mit einer reduzierten Syntax auf Übersichtlichkeit optimiert. Dadurch lassen sich Python-basierte Skripte deutlich kleiner bzw. kompakter formulieren als in anderen Sprachen.</p>



<p>Van Rossum legte bei der Entwicklung großen Wert auf eine Standardbibliothek, die überschaubar und leicht erweiterbar ist. Dies war das Ergebnis seiner schlechten Erfahrung mit der Sprache ABC, in der das Gegenteil der Fall ist. Dieses Konzept ermöglicht, Module aufzurufen, die in anderen Programmiersprachen geschrieben wurden, etwa um Schwächen von Python auszugleichen. Beispielsweise können für zeitkritische Teile in maschinennäheren Sprachen wie C implementierte Routinen aufgerufen werden. Umgekehrt lassen sich damit Module und Plug-ins für andere Programme schreiben, die die entsprechende Unterstützung bieten. Dies ist unter anderem bei Blender, Cinema 4D, GIMP, Maya, OpenOffice bzw. LibreOffice, PyMOL, SPSS, QGIS oder KiCad der Fall. Über die ich bereits geschrieben habe und noch schreiben werde.</p>



<p>Wie bereits erwähnt, ist Python eine Multiparadigmensprache. Dies bedeutet, es zwingt den Programmierer nicht zu einem bestimmten Programmierstil, sondern erlaubt, dass für die jeweilige Aufgabe am besten geeignete Paradigma zu wählen. Die Freigabe nicht mehr benutzter Speicherbereiche erfolgt durch Referenzzählung. Datentypen werden dynamisch verwaltet, eine automatische statische Typprüfung wie z. B. bei C++ gibt es nicht. Jedoch unterstützt Python ab Version 3.5 optionale Typ-Annotationen, um eine statische Typprüfung mithilfe externer Software, wie zum Beispiel Mypy, zu vereinfachen.</p>



<h3 class="wp-block-heading">Wann Python?</h3>



<p>Python ist für die meisten gängigen Betriebssysteme frei erhältlich und bei den meisten Linux-Distributionen im Standardumfang enthalten. Um es in Webserver einzubinden, wird Webserver-umgreifend WSGI verwendet, welches die Nachteile von CGI umgeht. WSGI stellt eine universelle Schnittstelle zwischen Webserver und Python(-Framework) zur Verfügung.</p>



<p>Sowohl in der Wirtschaft, Wissenschaft als auch in der Spielebranche erfreut sich Python einer großen Beliebtheit, da es auf der einen Seite einsteigerfreundlich ist und auf der anderen Seite auch leistungsfähig genug, um theoretische Grundlagen der Programmierung zu vermitteln bzw. um moderne Anwendungen bis hin zu komplexen Datenanalysen, grafischer Programmierung oder Datenbankanwendungen zu entwickeln. Ganz zu schweigen von den Möglichkeiten in Bezug auf Machine learning bzw. künstliche Intelligenz. Doch diese Themen werde ich auch in zukünftigen Beiträgen angehen.</p>



<p>An dieser Stelle sei auch das Projekt „100-Dollar-Laptop“ erwähnt. Denn da wurde Python als Standardsprache der Benutzeroberfläche verwendet. Da der 100-Dollar-Rechner für die Schulausbildung von Kindern konzipiert war, sollte bei Benutzung der dafür gestalteten grafischen Benutzeroberfläche „Sugar“ auf Knopfdruck der gerade laufende Python-Quellcode angezeigt werden. Damit sollte Kindern die Möglichkeit gegeben werden, die dahinter liegende Informationstechnik real zu erleben und nach Belieben „hinter die Kulissen“ zu schauen oder sogar anzupassen. Doch darüber schreibe ich in einem zukünftigen Beitrag, da sich dieses Projekt komplexer entwickelt hat, als man es annehmen möchte.</p>



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



<p>Python kann verhältnismäßig schnell erlernt werden und man kann damit sehr kurze Programmtexte schreiben. Dies verbessert die Verständlichkeit einer Anwendung, erleichtert die Fehlersuche und verkürzt die Entwicklungszeit. Es unterstützt unterschiedliche Paradigmen (Programmierstile).</p>



<p>Auch gibt es viele frei verfügbare Erweiterungen (sogenannte Module) für spezielle Anwendungsbereiche wie etwa Grafik, Astronomie, Mathematik, Spracherkennung, Quantencomputer und künstliche Intelligenz.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/12/20/erklaerung-python/">Python &#8211; Die Sprache für schnelle Prototypen, Datenanalyse und künstliche Intelligenz</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/12/20/erklaerung-python/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1012</post-id>	</item>
		<item>
		<title>GitHub &#8211; Das Zentrum kollaborativer Softwareentwicklung und der Ort, um Code, Ideen und Innovationen zu teilen</title>
		<link>https://ceosbay.com/2022/11/19/erklaerung-github/</link>
					<comments>https://ceosbay.com/2022/11/19/erklaerung-github/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sat, 19 Nov 2022 05:30:00 +0000</pubDate>
				<category><![CDATA[Cloud]]></category>
		<category><![CDATA[Datenbanken]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[MacOS]]></category>
		<category><![CDATA[Soziale Medien]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[2008]]></category>
		<category><![CDATA[Apfel]]></category>
		<category><![CDATA[BBC]]></category>
		<category><![CDATA[CLI]]></category>
		<category><![CDATA[Cloud Service]]></category>
		<category><![CDATA[Code]]></category>
		<category><![CDATA[Computer]]></category>
		<category><![CDATA[Entwickler]]></category>
		<category><![CDATA[Git]]></category>
		<category><![CDATA[GitHub]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[Hosting]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Repo]]></category>
		<category><![CDATA[Repository]]></category>
		<category><![CDATA[Smartphone]]></category>
		<category><![CDATA[Syntax]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[Versionskontrollsystem]]></category>
		<category><![CDATA[Zusammenarbeit]]></category>
		<category><![CDATA[Zweige]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=563</guid>

					<description><![CDATA[<p>Nachdem ich im gestrigen Beitrag über Git geschrieben habe, widme ich mich heute kurzerhand GitHub. Im Grunde genommen ist es ein Cloud-basierter Dienst, der Entwicklern dabei hilft, Code zu speichern und zu verwalten sowie Änderungen &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/19/erklaerung-github/">GitHub &#8211; Das Zentrum kollaborativer Softwareentwicklung und der Ort, um Code, Ideen und Innovationen zu teilen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Nachdem ich im gestrigen Beitrag über Git geschrieben habe, widme ich mich heute kurzerhand <a href="https://github.com" target="_blank" rel="noreferrer noopener">GitHub</a>. Im Grunde genommen ist es ein Cloud-basierter Dienst, der Entwicklern dabei hilft, Code zu speichern und zu verwalten sowie Änderungen darin zu verfolgen und zu kontrollieren. Im Prinzip macht es ja an sich nicht viel anders als <a href="https://ceosbay.com/2022/11/18/erklaerung-git/">Git</a> &#8211; Oder?</p>



<p>Da die Programmierung so stark auf einer exakten Syntax beruht, sind die Namenskonventionen für Programmiersprachen und Ressourcen alles andere als intuitiv. Java und JavaScript sind in etwa so eng miteinander verwandt wie Äpfel und Birnen, und das Python-Logo mag zwar ein Bild von ineinander verschlungenen Schlangen sein, aber eigentlich ist es nach &#8222;Monty Python&#8217;s Flying Circus&#8220;, einer BBC-Comedy-Serie aus den 70er Jahren benannt. Aber dies ist nur die Spitze des Eisbergs :). Für jemanden, der zum ersten Mal von Git und GitHub hört, ist die offensichtliche Verbindung vielleicht nicht ganz so offensichtlich.</p>



<p>Ist es nun dasselbe? Wenn nicht, sind sie in irgendeiner Weise miteinander verbunden? Oder ist die Verbindung, wie bei Java und JavaScript, nur oberflächlich?</p>



<p>Dies sind durchaus gerechtfertigte Fragen. Immerhin war Microsoft im Jahr 2018 bereit, 7,5 Milliarden Dollar für die Übernahme auszugeben, sodass Entwickler aller Qualifikationsstufen aufhorchen sollten. Die Wahrheit ist, dass Beiden viel enger miteinander verbunden sind als Java und JavaScript &#8211; aber mit einigen wichtigen Unterschieden, die sie voneinander unterscheiden. Nachdem ich gestern bereits über Git geschrieben habe, hier die Eigenschaften von GitHub.</p>



<h3 class="wp-block-heading">Was ist GitHub?</h3>



<p>In der Diskussion wurde oft der Vergleich gezogen, dass GitHub für <a href="https://ceosbay.com/2022/11/18/erklaerung-git/">Git</a> das ist, was Facebook für das tatsächliche Gesicht ihrer Nutzer ist. Folglich ist Facebook eine Art Online-Gesichtsdatenbank und GitHub ist als Hosting-Service für Git-Repositories konzipiert.</p>



<h3 class="wp-block-heading">Und was genau ist ein Git-Repository-Hosting-Dienst? </h3>



<p>Es handelt sich um eine Online-Datenbank, mit der Git-Versionskontrollprojekte außerhalb des lokalen Computers/Servers gemeinsam genutzt werden können. Während Git lokal betrieben bzw. selbst gehosted werden muss, ist GitHub ausschließlich Cloud-basiert und ein kostenpflichtiger Dienst (Die grundlegenden Repository-Hosting-Funktionen sind kostenlos verfügbar, wenn man ein Profil erstellt ;). Was GitHub zu einer beliebten Wahl für <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open-Source</a>-Projekte macht).</p>



<p>Das liegt daran, dass es nicht nur alle Funktionen und Vorteile von Git bietet, sondern auch die Grundfunktionen von Git erweitert. Es bietet eine äußerst intuitive, GUI (Graphical User Interface &#8211; Grafische Benutzeroberfläche) und stellt Programmierern integrierte Kontroll- und Aufgabenverwaltungswerkzeuge zur Verfügung. Zusätzliche Funktionen können über den Marketplace-Dienst implementiert werden. Und da GitHub cloudbasiert ist, kann jede autorisierte Person von jedem Computer oder Smart-Device, ja, auch mit dem Smartphone, überall auf der Welt auf die Git-Repositories zugreifen (Vorausgesetzt, die Person verfügt über eine Internetverbindung).</p>



<p>Man kann darüber den eigenen Code mit anderen teilen und im Zuge der Kollaboration die Möglichkeit nutzen, Überarbeitungen an den verschiedenen Git-Zweigen vorzunehmen. Auf diese Weise können sich ganze Teams in Echtzeit in diversen Projekten abstimmen. Wenn Änderungen vorgenommen werden, werden neue Zweige erstellt, so dass das Team den Code weiter überarbeiten kann, ohne die Arbeit der anderen zu überschreiben. Diese Zweige sind wie Kopien, und die darin vorgenommenen Änderungen werden nicht in den Hauptverzeichnissen auf den Rechnern der anderen Benutzer wiedergegeben, es sei denn, die Benutzer entscheiden sich dafür, die Änderungen zu pushen (schieben) oder zu pullen (ziehen), um sie zu übernehmen. Es gibt auch eine Desktop-Anwendung, die einige zusätzliche Funktionen für erfahrene Entwickler bietet. </p>



<p>Es gibt auch andere Git-Repository-Hosting-Dienste wie GitLab, BitBucket und SourceForge, die allesamt brauchbare Alternativen darstellen und mit denen ich auch schon in verschiedenen Projekten gearbeitet habe. GitLab bietet sogar eine integrierte Option, mit der die Nutzer ihre Projekte direkt nach GitLab migrieren können.</p>



<h3 class="wp-block-heading">Tabellarische Gegenüberstellung</h3>



<figure class="wp-block-table"><table><tbody><tr><td>Git ist eine Software.</td><td>GitHub ist ein Dienst.</td></tr><tr><td>Git ist ein Befehlszeilenwerkzeug</td><td>GitHub hat eine grafische Benutzeroberfläche</td></tr><tr><td>Git wird lokal auf dem System installiert</td><td>GitHub wird im Internet gehostet</td></tr><tr><td>Git wird von Linux verwaltet</td><td>GitHub wird von Microsoft verwaltet.</td></tr><tr><td>Git konzentriert sich auf Versionskontrolle und Code-Sharing</td><td>GitHub konzentriert sich auf das zentralisierte Hosting von Quellcode</td></tr><tr><td>Git ist ein Versionskontrollsystem zur Verwaltung der Quellcode-Historie</td><td>GitHub ist ein Hosting-Dienst für Git-Repositories</td></tr><tr><td>Git wurde erstmals 2005 veröffentlicht</td><td>GitHub wurde 2008 eingeführt</td></tr><tr><td>Git hat keine Funktion zur Benutzerverwaltung</td><td>GitHub verfügt über eine integrierte Benutzerverwaltungsfunktion</td></tr><tr><td>Git ist <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open-Source</a>-lizenziert</td><td>GitHub umfasst eine kostenlose und eine kostenpflichtige Ebene</td></tr><tr><td>Git hat eine minimale externe Werkzeugkonfiguration</td><td>GitHub hat einen aktiven Marktplatz für die Integration von Tools</td></tr><tr><td>Git bietet eine Desktop-Oberfläche namens Git Gui</td><td>GitHub bietet eine Desktop-Oberfläche namens GitHub Desktop</td></tr><tr><td>Git konkurriert mit CVS, Azure DevOps Server, Subversion, Mercurial, etc.</td><td>GitHub konkurriert mit GitLab, Git Bucket, AWS Code Commit, usw.</td></tr></tbody></table><figcaption class="wp-element-caption">Tabellarischer Vergleich Git und GitHub</figcaption></figure>



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



<p>Alles in allem ist Git ein Versionskontrollsystem, mit dem man den Quellcode verwalten und verfolgen kann. GitHub ist ein Cloud-basierter Hosting-Dienst, mit dem man die Git-Repositories verwalten kann. Wenn man ein <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/">Open-Source</a>-Projekt hat, welches Git verwendet, dann soll es helfen, dieses einfacher zu verwalten.</p>



<p>Schließlich sind die Namenskonventionen in der Welt der Programmierung nicht immer intuitiv. Deshalb lohnt es sich, die Verbindungen und Unterschiede zwischen den ähnlich benannten Lösungen zu erkennen. Beide bieten Programmierern wertvolle Versionskontrollfunktionen, sodass man laufend Software erstellen kann, ohne die Befürchtung zu haben, dass alles durcheinander kommt, da viele Menschen daran arbeiten. In diesem Fall verderben viele Köche nicht wirklich den Brei. GitHub geht nur ein bisschen weiter als Git. Es bietet ein paar Funktionen mehr sowie Ressourcen wie den Online-Speicherplatz und erleichtert die Zusammenarbeit an Projekten durch eine einfach zu bedienende Benutzeroberfläche.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2022/11/19/erklaerung-github/">GitHub &#8211; Das Zentrum kollaborativer Softwareentwicklung und der Ort, um Code, Ideen und Innovationen zu teilen</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2022/11/19/erklaerung-github/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">563</post-id>	</item>
	</channel>
</rss>
