<?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>Kern Archive - CEOsBay</title>
	<atom:link href="https://ceosbay.com/tag/kern/feed/" rel="self" type="application/rss+xml" />
	<link>https://ceosbay.com/tag/kern/</link>
	<description>It&#039;s all about Tech</description>
	<lastBuildDate>Tue, 11 Jul 2023 20:43:47 +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>Kern Archive - CEOsBay</title>
	<link>https://ceosbay.com/tag/kern/</link>
	<width>32</width>
	<height>32</height>
</image> 
<site xmlns="com-wordpress:feed-additions:1">211828771</site>	<item>
		<title>Design Thinking &#8211; Kreativität und Innovation fördern</title>
		<link>https://ceosbay.com/2023/07/11/design-thinking-kreativitaet-und-innovation-foerdern/</link>
					<comments>https://ceosbay.com/2023/07/11/design-thinking-kreativitaet-und-innovation-foerdern/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Tue, 11 Jul 2023 20:43:33 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Design]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Dezentralisierung]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Akzeptanz]]></category>
		<category><![CDATA[Brainstorming]]></category>
		<category><![CDATA[Definition]]></category>
		<category><![CDATA[Denken]]></category>
		<category><![CDATA[Design-Thinking]]></category>
		<category><![CDATA[Einbeziehen]]></category>
		<category><![CDATA[Erfolg]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Förderung]]></category>
		<category><![CDATA[Gestaltung]]></category>
		<category><![CDATA[Interview]]></category>
		<category><![CDATA[Kern]]></category>
		<category><![CDATA[Kreativität]]></category>
		<category><![CDATA[Lösungsorientiert]]></category>
		<category><![CDATA[Methode]]></category>
		<category><![CDATA[Methoden]]></category>
		<category><![CDATA[Nutzer]]></category>
		<category><![CDATA[Offenheit]]></category>
		<category><![CDATA[Op]]></category>
		<category><![CDATA[Ops]]></category>
		<category><![CDATA[Prinzipien]]></category>
		<category><![CDATA[Problem]]></category>
		<category><![CDATA[Prototyping]]></category>
		<category><![CDATA[Protoyp]]></category>
		<category><![CDATA[Stanford]]></category>
		<category><![CDATA[Techniken]]></category>
		<category><![CDATA[Thinking]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[User]]></category>
		<category><![CDATA[Zeitreise]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1859</guid>

					<description><![CDATA[<p>In der heutigen dynamischen Geschäftswelt ist der Begriff &#8222;Design Thinking&#8220; immer häufiger zu hören. Was genau bedeutet er und warum ist er so wichtig? In diesem Blogbeitrag geht es um die Konzepte und Prinzipien. Unter &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/07/11/design-thinking-kreativitaet-und-innovation-foerdern/">Design Thinking &#8211; Kreativität und Innovation fördern</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>In der heutigen dynamischen Geschäftswelt ist der Begriff &#8222;Design Thinking&#8220; immer häufiger zu hören. Was genau bedeutet er und warum ist er so wichtig? In diesem Blogbeitrag geht es um die Konzepte und Prinzipien. Unter anderem auch darum, wie man es nutzen kann, um Innovationen zu fördern und Probleme zu lösen.</p>



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



<p>Es ist im Grunde genommen eine problemlösende Methode, die darauf abzielt, innovative Lösungen zu entwickeln, indem sie sich auf die menschliche Erfahrung, Experimente, Zusammenarbeit und kreatives Denken konzentriert. Es ist nicht nur auf Produktdesign beschränkt. Man kann es auf alle Bereiche des Lebens anwenden, in denen innovative Lösungen erforderlich sind.</p>



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



<p>Der Ursprung des Konzepts lässt sich auf das letzte Jahrhundert zurückverfolgen und ist eng mit mehreren führenden Denkern und Institutionen verknüpft.</p>



<p>Die frühe Verbindung kann man auf den britischen Designer und Theoretiker John Christopher Jones zurückführen, der in den 1960er Jahren die Idee vorstellte, dass Design ein Denkprozess ist, der nicht auf die Gestaltung von Produkten beschränkt ist.</p>



<p>In den 1970er Jahren prägte der amerikanische Architekt und Städteplaner Horst Rittel den Begriff &#8222;wicked problems&#8220; für komplexe Probleme, die nicht man nicht durch herkömmliche lineare oder logische Ansätze lösen konnte. Diesen Begriff hat man später in den Prozess des Design Thinking integriert.</p>



<p>Die Popularisierung und Weiterentwicklung des Konzepts kann man der <a href="https://www.stanford.edu" target="_blank" rel="noreferrer noopener">Stanford University</a> und dem Hasso-Plattner-Institut für Design (besser bekannt als die &#8222;d.school&#8220;) zuschreiben. Den Begriff selbst haben jedoch erstmals David M. Kelley, dem Gründer von IDEO und Professor an der <a href="https://www.stanford.edu">Stanford Universit</a><a href="https://www.stanford.edu" target="_blank" rel="noreferrer noopener">y</a> sowie Tim Brown, dem CEO von IDEO, in die Geschäftswelt eingeführt. Sozusagen, die Ersten, die Design Thinking als Methode für Innovation und für die Problemlösung definierten und systematisierten.</p>



<p>Es ist demnach nicht nur auf die historischen Persönlichkeiten und Institutionen beschränkt. Es ist ein dynamisches und sich ständig weiterentwickelndes Feld, das Beiträge von Designern, Forschern, Pädagogen und Praktikern aus der ganzen Welt beinhaltet.</p>



<p>Seit der Entstehung hat sich Design Thinking von einer Nischenmethode zu einer weit verbreiteten Praxis entwickelt, die in einer Vielzahl von Kontexten Anwendung findet. Von Produkt- und Servicedesign über soziale Innovation, bis hin zu strategischer Planung und Bildung.</p>



<h3 class="wp-block-heading">Die Prinzipien des Design Thinking</h3>



<h4 class="wp-block-heading">Es basiert auf fünf Kernprinzipien:</h4>



<ol class="wp-block-list">
<li>Empathie für den Nutzer: Hier geht es darum, die Bedürfnisse und Erwartungen der Nutzer zu verstehen, um Lösungen zu finden, die wirklich relevant und effektiv sind.<br></li>



<li>Definieren des Problems: Hier wird das Problem klar und präzise definiert, um den Fokus auf die tatsächlichen Herausforderungen zu legen.<br></li>



<li>Ideenfindung: In diesem Schritt generiert man möglichst viele Lösungsansätze, ohne sie zu bewerten. Der Zweck besteht darin, kreatives Denken und die Innovation zu fördern.<br></li>



<li>Prototyping: Hierbei setzt man ausgewählte Ideen in konkrete Modelle um, um zu sehen, wie sie in der Praxis funktionieren.<br></li>



<li>Testen: In dieser Phase testet man die Prototypen auf ihre Effektivität und gegebenenfalls nimmt man noch Anpassungen vor.</li>
</ol>



<h3 class="wp-block-heading">Warum ist Design Thinking wichtig?</h3>



<p>In einer sich schnell verändernden Welt sind traditionelle Methoden oft nicht mehr ausreichend, um neue Herausforderungen zu bewältigen. Es bietet einen flexiblen und kreativen Ansatz, der es Unternehmen und Individuen ermöglicht, Probleme zu lösen und Innovationen zu entwickeln, die den Bedürfnissen der Nutzer entsprechen.</p>



<p>Durch die Einbeziehung des Nutzers in den Designprozess und die Förderung des kreativen Denkens kann Design Thinking dazu beitragen, Produkte und Dienstleistungen zu schaffen, die wirklich auf die Bedürfnisse der Nutzer abgestimmt sind. Dies kann zu einer höheren Kundenzufriedenheit und zu einem nachhaltigen Geschäftserfolg führen.</p>



<h3 class="wp-block-heading">Wie man Design Thinking in der Praxis anwendet</h3>



<p>Die Anwendung von Design Thinking erfordert ein offenes Denken, Experimentierfreude und die Bereitschaft, aus Fehlern zu lernen. Im Folgenden sind einige Schritte, die man befolgen kann, um es in einer Organisation zu implementieren:</p>



<p>Man beginnt mit Schulungen und Workshops, um das Bewusstsein für Design Thinking zu schaffen und um die notwendigen Fähigkeiten zu entwickeln.</p>



<p>Zielsetzung ist die Förderung einer Kultur der Kreativität und Offenheit, in der neue Ideen willkommen sind und bei der man Fehler als Lernchancen sieht.</p>



<p>Design Thinking-Tools und -Techniken, wie Brainstorming, Storyboarding, Nutzerinterviews und Prototyping helfen dabei, kreative Lösungen zu entwickeln.</p>



<p>Es empfiehlt sich, vielfältige Teams zu bilden, die verschiedene Perspektiven und Fähigkeiten einbringen, um kreative Lösungen zu entwickeln bzw. um die Betrachtung von Herausforderungen aus verschiedenen Blickwinkeln zu ermöglichen.</p>



<p>Schließlich kann man den Erfolg von Design Thinking-Initiativen messen, um zu sehen, ob sie zu den gewünschten Ergebnissen führen und wo man gegebenenfalls ansetzt, um weitere Anpassungen vorzunehmen.</p>



<h3 class="wp-block-heading">Zusammenhang Design Thinking und DevOps</h3>



<p>Der Zusammenhang zwischen Design Thinking und <a href="https://ceosbay.com/2023/03/02/erklaerung-devops/">DevOps</a> liegt in ihrer gemeinsamen Ausrichtung auf kontinuierliche Verbesserung, Benutzerorientierung und Kollaboration. Man kann Design Thinking am Anfang des Produktentwicklungsprozesses anwenden, um Benutzerbedürfnisse zu verstehen, Probleme zu definieren und innovative Lösungen zu entwerfen. Im Anschluss kann man <a href="https://ceosbay.com/2023/03/02/erklaerung-devops/">DevOps</a> nutzen, um diese Lösungen schnell und effizient zu entwickeln, zu testen und zu releasen, wobei man auch eine Kultur der Zusammenarbeit und des kontinuierlichen Verbesserns fördert.</p>



<p>Wenn man Design Thinking und <a href="https://ceosbay.com/2023/03/02/erklaerung-devops/">DevOps</a> zusammen anwendet, kann es dabei helfen, Produkte und Dienstleistungen zu erschaffen, die nicht nur technisch hochwertig und zuverlässig sind, sondern auch die Bedürfnisse und Erwartungen der Benutzer in einem größeren Umfang erfüllen. Diese Synergie kann zu höherer Benutzerzufriedenheit, schnellerer Markteinführungszeit und insgesamt besseren Geschäftsergebnissen führen.</p>



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



<p>Design Thinking ist eine mächtige Methode, um Innovation zu fördern und um Probleme zu lösen. Indem man Empathie für den Nutzer entwickelt, kreatives Denken fördert und durch iterative Prozesse lernt, kann man Produkte und Dienstleistungen entwickeln, die wirklich den Bedürfnissen der Kunden entsprechen.</p>



<p>Ganz unabhängig davon, ob man ein neues Produkt entwickelt, eine Dienstleistung verbessert oder eine geschäftliche Herausforderung bewältigen möchte, Design Thinking kann dabei helfen, effektive und innovative Lösungen zu finden. Es ist eine Reise, die Neugier, Empathie und Mut erfordert, aber die Ergebnisse können es wert sein.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/07/11/design-thinking-kreativitaet-und-innovation-foerdern/">Design Thinking &#8211; Kreativität und Innovation fördern</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/07/11/design-thinking-kreativitaet-und-innovation-foerdern/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1859</post-id>	</item>
		<item>
		<title>Eclipse &#8211; Die flexible Entwicklungsumgebung</title>
		<link>https://ceosbay.com/2023/03/19/erklaerung-eclipse/</link>
					<comments>https://ceosbay.com/2023/03/19/erklaerung-eclipse/#respond</comments>
		
		<dc:creator><![CDATA[CEO]]></dc:creator>
		<pubDate>Sun, 19 Mar 2023 20:47:00 +0000</pubDate>
				<category><![CDATA[Agile]]></category>
		<category><![CDATA[DevOps]]></category>
		<category><![CDATA[Entwicklung]]></category>
		<category><![CDATA[IDE]]></category>
		<category><![CDATA[Internet]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Programmieren]]></category>
		<category><![CDATA[Testing]]></category>
		<category><![CDATA[Website]]></category>
		<category><![CDATA[C]]></category>
		<category><![CDATA[c#]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[CDT]]></category>
		<category><![CDATA[Client]]></category>
		<category><![CDATA[DPP]]></category>
		<category><![CDATA[Eclipse]]></category>
		<category><![CDATA[Entwicklungsumgebung]]></category>
		<category><![CDATA[Erweiterungen]]></category>
		<category><![CDATA[Fazit]]></category>
		<category><![CDATA[Framework]]></category>
		<category><![CDATA[GEF]]></category>
		<category><![CDATA[GUI]]></category>
		<category><![CDATA[IBM]]></category>
		<category><![CDATA[IntelliJ]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[JFace]]></category>
		<category><![CDATA[Jupiter]]></category>
		<category><![CDATA[Jupyter]]></category>
		<category><![CDATA[JVM]]></category>
		<category><![CDATA[Kern]]></category>
		<category><![CDATA[Machine]]></category>
		<category><![CDATA[Mylyn]]></category>
		<category><![CDATA[oasp4j]]></category>
		<category><![CDATA[Oomph]]></category>
		<category><![CDATA[Ops]]></category>
		<category><![CDATA[OSGi]]></category>
		<category><![CDATA[Perspektiven]]></category>
		<category><![CDATA[Plugins]]></category>
		<category><![CDATA[PP]]></category>
		<category><![CDATA[Programmiersprache]]></category>
		<category><![CDATA[Projekt]]></category>
		<category><![CDATA[Quellcode]]></category>
		<category><![CDATA[Rich]]></category>
		<category><![CDATA[Ruby]]></category>
		<category><![CDATA[Saros]]></category>
		<category><![CDATA[Scala]]></category>
		<category><![CDATA[Sichten]]></category>
		<category><![CDATA[Source]]></category>
		<category><![CDATA[Speicher]]></category>
		<category><![CDATA[Sprache]]></category>
		<category><![CDATA[Tools]]></category>
		<category><![CDATA[UI]]></category>
		<category><![CDATA[UML]]></category>
		<category><![CDATA[Werkzeug]]></category>
		<category><![CDATA[Werkzeuge]]></category>
		<category><![CDATA[Work]]></category>
		<category><![CDATA[Yatta]]></category>
		<guid isPermaLink="false">https://ceosbay.com/?p=1190</guid>

					<description><![CDATA[<p>Eclipse „Sonnenfinsternis“, ist ein Open Source Programm zur Entwicklung von Software verschiedener Art. Ihren Ursprung hat Eclipse als integrierte Entwicklungsumgebung (IDE) für die Programmiersprache Java. Mittlerweile nutzt man es aufgrund der Erweiterbarkeit auch für viele &#8230;</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/19/erklaerung-eclipse/">Eclipse &#8211; Die flexible Entwicklungsumgebung</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p>Eclipse „Sonnenfinsternis“, ist ein <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open Source</a> Programm zur Entwicklung von Software verschiedener Art. Ihren Ursprung hat Eclipse als integrierte Entwicklungsumgebung (IDE) für die Programmiersprache <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>. Mittlerweile nutzt man es aufgrund der Erweiterbarkeit auch für viele andere Entwicklungsaufgaben. Für Eclipse gibt es eine Vielzahl sowohl quelloffener als auch kommerzieller Erweiterungen. Es selbst basiert auf <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>. Ab Version 3.0 auf dem OSGi-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> Equinox. Die OSGi Alliance (früher Open Services Gateway initiative) spezifizierte eine hardwareunabhängige dynamische Softwareplattform, die es erleichtert, Anwendungen und ihre Dienste per Komponentenmodell („Bundle“/„Service“) zu modularisieren und zu verwalten („Service Registry“). Die OSGi-Plattform setzt eine <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> Virtual Machine (JVM) voraus und bietet darauf aufbauend das OSGi-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a>. Während Equinox (Tag-und-Nacht-Gleiche) ein von der Eclipse Foundation entwickeltes <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>-basiertes <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> ist, dass die OSGi-Kernspezifikation implementiert und das Gerüst der integrierten Entwicklungsumgebung Eclipse bildet.</p>



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



<p>Eclipse ist im Grunde genommen der Nachfolger von IBM Visual Age for <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> 4.0. Der Quellcode dafür wurde im Jahr 2001 von IBM freigegeben. Im Jahr 2004 beschloss das von IBM geführte Eclipse-Konsortium die Ausgründung der rechtlich eigenständigen Eclipse Foundation, die seitdem für die Entwicklung von Eclipse verantwortlich ist. Es unterstützt die <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>-Version 5 ab Version 3.1 und <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> 6 ab Version 3.2. Ab dem Jahr 2006 wurden die Veröffentlichungstermine neuer Versionen der wichtigsten Eclipse-Komponenten harmonisiert, um Versionskonflikte zu vermeiden und Eclipse-Anwendern die Nutzung zu erleichtern. Man hat den Veröffentlichungszyklus ab der Version 2018-09 auf Quartalsaktualisierungen verkürzt, da ab <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> 9 nicht mehr alle 3 Jahre, sondern alle 6 Monate eine neue <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> Version erscheint. Es folgt nun einem Rolling Release Modell.</p>



<h3 class="wp-block-heading">Rolling Release</h3>



<p>(„rollen“ und „veröffentlichen“. Sinngemäß handelt es sich dabei um die kontinuierliche Aktualisierung der Software und ist ein Begriff aus der Softwareentwicklung. Bei einem Betriebssystem, dass das Rolling-Release-Prinzip anwendet, gibt es keine Betriebssystem-Versionen, bei denen bei einem Versions-Upgrade eine große Menge an Software auf einmal aktualisiert wird. Die einzelnen Software-Pakete werden vielmehr immerfort aktualisiert. Dies schließt sogenannte Releases, also Veröffentlichungen des Betriebssystems, aber nicht aus. Im Gegensatz zu einem Betriebssystem ohne Rolling Releases sind die Veröffentlichungen jedoch keine Versionen, sondern sogenannte Snapshots. Dies bedeutet, eine Kopie aller im Moment im Repository liegenden Software-Versionen. Diese Snapshots dienen meistens auch als Installations-Medien.</p>



<p>Die Projektnamen waren bisher nach den Jupitermonden (Callisto, Europa und Ganymede), den Raumsonden Galileo und Helios, die Version 3.7 nach der für Eclipse typischen Farbe Indigo benannt. Die Anfangsbuchstaben der Projektnamen werden ab Version 3.5 in alphabetischer Reihenfolge vergeben. Die Version 3.8 erschien gleichzeitig mit der Version 4.2. Um mit dem schnelleren Release-Zyklus von <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> mitzuhalten, hat man 2018 von einem jährlichen Release auf vier Releases pro Jahr umgestellt. Damit hat man auch das Namensschema der Release-Versionen auf „{Jahreszahl}-{Monat}“ vereinfacht, also beispielsweise „2018-09“. Die einzelnen Versionen werden jeweils als Grundversion oder als Zusammenstellung aus verschiedenen Programmpaketen veröffentlicht. Einzelne Programmpakete kann man jedoch auch später noch nachinstallieren. Die Benutzeroberfläche von Eclipse ist standardmäßig englischsprachig. Es gibt jedoch zu jeder Version Babel-Language-Packs, die man sich in den entsprechenden Sprachen als Plugin installieren kann.</p>



<p>Darauf gehe ich so explizit ein, da ich mich in den letzten Tagen mit Kollegen über Eclipse ausgetauscht und in einem Quellcode verweise auf „Jupiter“ entdeckt habe. In der jüngsten Vergangenheit habe ich mich mit <a href="https://ceosbay.com/2022/12/30/erklaerung-projekt-jupyter/" target="_blank" rel="noreferrer noopener">Jupyter</a> beschäftigt. Daher auch hier ein Verweis auf den Beitrag damit es zu keiner Verwechslung der Themen kommt. Beides von Grund auf verschiedene Themen bzw. Dinge 😉</p>



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



<p>Bis einschließlich zur Version 2.1 ist Eclipse als erweiterbare IDE konzipiert gewesen. Ab Version 3.0 ist es selbst nur der Kern, der die einzelnen Plug-ins lädt, die dann die eigentliche Funktionalität zur Verfügung stellt. Diese Funktionalität basiert, wie bereits erwähnt, auf Equinox. Sowohl Eclipse als auch die Plugins sind vollständig in <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> implementiert. Zur Erstellung der GUI (grafischen Benutzeroberfläche) wurde SWT verwendet. Zur Darstellung der GUI-Komponenten basiert SWT ähnlich wie AWT auf den nativen GUI-Komponenten des jeweiligen Betriebssystems. Eclipse steht für 14 verschiedene Systeme und Architekturen zur Verfügung und gilt somit als plattformunabhängig. Die Plugins lassen sich direkt von einem Update-Server, über den „Market Place“, oder durch Entpacken einer Installationsdatei installieren.</p>



<p>Das frei verfügbare Eclipse SDK umfasst die Eclipse-Plattform, Werkzeuge zur <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>-Entwicklung (<a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> Development Tools, JDT) und die Umgebung zur Entwicklung von Eclipse-Plugins (Plugin Development Environment, PDE).</p>



<h3 class="wp-block-heading">Rich Client Platform</h3>



<p>Eclipse bietet eine Rich Client Platform, welche es Anwendungsentwicklern ermöglicht, basierend auf dem Eclipse-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a>, von der Eclipse-IDE unabhängige Anwendungen zu schreiben. Die folgenden Komponenten (Plugins) werden typischerweise mindestens für eine Eclipse-Rich-Client-Platform-Anwendung verwendet:</p>



<ul class="wp-block-list">
<li>Eclipse Core Platform – steuert den Lebenszyklus einer Eclipse-Anwendung</li>



<li>Eclipse Platform UI – stellt die Workbench mit den Konzepten Sichten, Editoren, Perspektiven, Menüs und Toolbars zur Verfügung</li>



<li>Standard Widget Toolkit (SWT)</li>



<li>JFace</li>
</ul>



<p>Weitere Eclipse-Komponenten, wie das Hilfesystem oder das automatische Aktualisierungssystem, kann man ebenfalls einsetzen. In der Regel nutzt man das Eclipse-OSGi-<a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> Equinox zum Kombinieren (bundling) der Komponenten.</p>



<h3 class="wp-block-heading">Das UI (User Interface)</h3>



<p>Eclipse ist in Komponenten (parts) gegliedert, die in Sichten (views) und Editoren (editors) gegliedert sind. Wobei die Unterscheidung in view und editor sich an der Nutzung orientiert und nicht technischer Natur ist. Diese Fenster kann man durch Drag and Drop beliebig anordnen oder minimieren.</p>



<p><strong>Sichten</strong></p>



<p>Mit Hilfe der views kann man Daten direkt bearbeitet und darunterliegende Datenstrukturen verändern.</p>



<p>Beispiele für views sind die auch aus den meisten anderen Editoren bekannte Navigator-View, die im Projektverzeichnis enthaltene Dokumente anzeigt, der Klassenexplorer, der baumartig strukturiert Symbole für die Klassen, Funktionen, Variablen und Importe eines geöffneten Quelltextes anzeigt oder das Suchfenster, dass die Ergebnisse einer Suche auflisten kann.</p>



<p><strong>Editoren</strong></p>



<p>Editoren sind Komponenten, die nur das jeweils geöffnete Datenelement bearbeiten und in denen der Nutzer explizit speichern muss, um Daten zu verändern. Beispiele sind Fenster, die meist den Quelltext mit Syntaxhervorhebung anzeigen, wobei es für viele Programmiersprachen einen eigenen Editor gibt. Beispielsweise für <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a>, C, PHP, <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>, <a href="https://ceosbay.com/2022/12/29/erklaerung-html/" target="_blank" rel="noreferrer noopener">HTML</a>, aber auch einen einfachen Texteditor. Genauso gibt es auch visuelle Editoren (beispielsweise UML-Editoren, GUI-Builder) oder solche, die Baumstrukturen anzeigen (etwa der <a href="https://ceosbay.com/2022/12/27/erklaerung-xml/" target="_blank" rel="noreferrer noopener">XML</a>-Editor). Editoren nehmen normalerweise den meisten Raum des Programmfensters in Anspruch. Mehrere geöffnete Quelltexte kann man als Reiter öffnen, die man dann über Tabs am oberen Rand in den Vordergrund bringen kann. Außerdem kann man Tabs fixieren, damit man beispielsweise den zugehörigen Quelltext nicht versehentlich schließt. Auch kann man die Editoren weitestgehend frei per Drag and Drop anordnen. Davon abgesehen ist es möglich, eine Datei in mehreren Editoren gleichzeitig zu öffnen.</p>



<p><strong>Perspektiven</strong></p>



<p>Perspektiven sind vollständige Anordnungen von parts. Ein editor bleibt beim Perspektivwechsel erhalten. Perspektiven sind weitestgehend frei konfigurierbar und man kann benutzerdefinierte Konstellationen speichern sowie laden. Meistens stellen Plugins, die man nachinstalliert, vorkonfigurierte Perspektiven zur Verfügung, diese passt man dann meisten den eigenen Wünschen und Vorlieben an.</p>



<h3 class="wp-block-heading">Plugins und Erweiterungen</h3>



<p>Es gibt zahlreiche Erweiterungen für Eclipse. Teils proprietär, teils frei verwendbar bzw. <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open Source</a>. Primär verwendet man es als <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> IDE. Dabei kommen vor allem die in den <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> Development Tools zusammengefassten Plugins zum Einsatz. Es existieren aber etliche Plugins für andere Sprachen, die ich bereits unter Editoren erwähnt habe. Hinzu kommt noch die Entwicklung von OSGi-Bundles. Dazu zählt vor allem das CDT-Projekt, welches C und C++ unterstützt und unter Anderem die GNU Compiler Collection sowie die LLVM (-Clang und -GCC) abdeckt. Darüber hinaus gibt es auch Plugins für Perl, PHP, ColdFusion, <a href="https://ceosbay.com/2022/12/19/erklaerung-ruby/" target="_blank" rel="noreferrer noopener">Ruby</a>, <a href="https://ceosbay.com/2022/12/20/erklaerung-python/" target="_blank" rel="noreferrer noopener">Python</a>, C#, Fortran, Ada2005, Scala usw. Diese kann man über ein Menü in Eclipse einbinden. Neben Plugins für konkrete Programmiersprachen gibt es auch solche, die allgemeine Entwicklungsprozesse unterstützen, wie beispielsweise Mylyn für „aufgabenorientierte Entwicklung“ oder Saros für Verteilte Paarprogrammierung auch Distributed Pair Programming, DPP oder Pair Programming, PP genannt. Oft sind diese Ergänzungen – anders als das Kernprogramm – ausschließlich in der englischen Sprache erhältlich.</p>



<p>Neben den <a href="https://ceosbay.com/2023/03/16/erklaerung-java/" target="_blank" rel="noreferrer noopener">Java</a> Development Tools gibt es viele weitere Projekte, die man ebenfalls auf der Eclipse-Website koordiniert. Ein solches Projekt ist das Eclipse Tools Project, dass verschiedene Hilfsmittel entwickelt, die Entwickler erweitern können. Weitere Projekte sind das Eclipse Modeling <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> (EMF), das Graphical Editing <a href="https://ceosbay.com/2022/11/14/erklaerung-frameworks/" target="_blank" rel="noreferrer noopener">Framework</a> (GEF) und die eingestellte Eclipse Riena Platform (Riena). Mit EMF lässt sich ein Datenmodell erstellen, das zum Beispiel auf UML basieren kann. GEF ist ein Projekt, dass es Entwicklern erlaubt, mit Hilfe eines existierenden Datenmodells schnell einen grafischen Editor zu erstellen. Riena unterstützt Entwickler bei der Ausstattung einer Anwendung mit einem benutzerfreundlichen Interaktionskonzept und ansprechenden Oberflächenelementen.</p>



<p>Basierend auf diesen Erweiterungen und dem modularen Aufbau von Eclipse selbst, lassen sich für Projekte spezifische Eclipse-Bundles erstellen. Diese enthalten alle für ein bestimmtes Projekt notwendigen Teile und Erweiterungen von Eclipse, ohne mit unnötigen Teilen Hauptspeicher und Rechenleistung zu verbrauchen.</p>



<p>Inzwischen gibt es auch <a href="https://ceosbay.com/2022/11/16/erklaerung-open-source/" target="_blank" rel="noreferrer noopener">Open Source</a>-Erweiterungen, die eine automatisierte Bereitstellung und Konfiguration erheblich erleichtern. Dazu zählen oasp4j-ide, Oomph und Yatta Profiles, von denen ich einige in zukünftigen Beiträgen thematisiere.</p>



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



<p>Durch den quelloffenen Ansatz und der kostenfreien Nutzungsmöglichkeit ist Eclipse neben <a href="https://ceosbay.com/2023/03/10/erklaerung-intellij-idea/" target="_blank" rel="noreferrer noopener">IntelliJ</a> eines der beliebteren IDEs. Man kann durch Plugins und Erweiterungen viele Programmiersprachen bedienen. Der Programmkern von Eclipse stellt in dem Zusammenhang die einzige versionsübergreifende Konstante dar. Jede Aktualisierung führt Neuerungen in den Kern ein und die integrierten Plugins bzw. Erweiterungen erfordern dadurch meist eine Anpassung an die neue Version.</p>



<p>Die grafische Oberfläche von Eclipse ist auf eine effiziente Arbeitsweise ausgerichtet. Der konzeptionelle Aufbau durch Views, Editoren und Perspektiven sorgt für eine anpassbare Optik und eine bequeme Arbeitsweise mit und in der IDE. Man kann sowohl die Funktionalitäten als auch die GUI von Eclipse durch die manuelle oder automatische Installation von Plugins bzw. Erweiterungen anpassen. Entsprechende Möglichkeiten finden sich in dem standardmäßig integrierten Market Place von Eclipse.</p>
<p>Der Beitrag <a href="https://ceosbay.com/2023/03/19/erklaerung-eclipse/">Eclipse &#8211; Die flexible Entwicklungsumgebung</a> erschien zuerst auf <a href="https://ceosbay.com">CEOsBay</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://ceosbay.com/2023/03/19/erklaerung-eclipse/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1190</post-id>	</item>
	</channel>
</rss>
