Inhalte / Module
JAVAInstallation und erste Schritte mit Java und Eclipse: Einführung und Installation der Entwicklungsumgebung Eclipse · Java-Dokumentation · Projekte erstellen, kompilieren und ausführen · Arbeiten mit Workspaces · Anwendungen mit javac und java erstellen · Anweisungen mit JShell testenProgrammaufbau, Variablen, Konstanten, Datentypen und Operatoren. Ein- und Ausgabe: Programmaufbau und Kommentare · Bildschirmausgabe · Operatoren, Variablen und Konstanten · Datentypen · Arbeiten mit Variablen unterschiedlicher DatentypenLogische Operatoren und Vergleichsoperatoren, Kontrollstrukturen und Schleifen. Methoden: Logische Operatoren und Vergleichsoperatoren · Kontrollstrukturen: Verzweigungen mit if… else… und Mehrfachauswahl mit switch… case… · Schleifen: kopfgesteuert, fußgesteuert, Zählerschleife, break und continue · Methoden in JavaBezugsrahmen von Variablen. Arrays und Strings. Aufzählungstypen: Bezugsrahmen von Variablen · Regeln für das Arbeiten mit lokalen Variablen und Klassenvariablen · Arrays: Mehrdimensionale Arrays · Zeichenketten · AufzählungstypenEinführung in die objektorientierte Programmierung: Objekte, Klassen und Instanzen · Attribute, Attributwerte und Methoden · Objektidentität · Kommunikation zwischen Objekten · Klassen und Objekte in Java · Unterscheidung zwischen Klassenmethoden und Instanzmethoden · Unterscheidung zwischen Klassenvariablen und Instanzvariablen · Verkettete Liste mit Java umsetzenFortgeschrittene Techniken bei der objektorientierten Programmierung: Konstruktoren und Finalisierer · Überladen von Methoden und Konstruktoren · Das Konzept der Vererbung · Vererbung in Java · Polymorphismus und überschriebene MethodenDatenkapselung, Pakete und Wiederverwendung: Private und öffentliche Vereinbarung von Methoden und Variablen · Zugriff auf geerbte Instanzvariablen · Sichtbarkeiten private und public · Pakete in Java · Arbeiten mit QuelltextenFehlersuche und Ausnahmebehandlung: Den Debugger von Eclipse verstehen und anwenden · Erweiterte Debugger Funktionen: Arbeiten mit Haltepunkten · Qualitätsprüfung von Software · Ausnahmebehandlung: Exceptions, try und catch · Eigene Ausnahmen auslösen · Die Anweisung finallyDatenbanken: Erstellen der Datenbank · Die JDBC-Schnittstelle · Apache Derby · Verbindung zwischen Datenbank und Anwendung · Das Bearbeiten von Datensätzen: Navigation durch Ergebnismenge, Löschen und Ändern eines DatensatzesEin E-Mail-Programm: Grundsätzliche Vorgehensweise zum Erstellen eines E-Mail-Programms · Die Datenbank für das E-Mail-Programm · Die Klasse MiniDBTools · Das Sendemodul zum Verschicken und Anzeigen der Nachricht · Das Empfangsmodul zum Empfangen und Anzeigen der NachrichtDIGITALISIERUNGGrundlagen der Digitalisierung: Vom Internet der Dinge, Dienste und Daten: Technische Entwicklung als Grundlage der Digitalisierung · Gesetze zum digitalen Zeitalter · Vom Internet der Dinge zum Internet der Dienste · Vom Internet der Dienste und Dinge zu Big DataTrends der Digitalisierung und Big-Data-Nutzung: Techniktrends und Digitalisierung in der gesamten Wertschöpfungskette · Digitalisierung in Marketing und Vertrieb · Digitalisierung im Logistikbereich · Digitalisierung in der Produktion · Digitalisierung im Office-Bereich und den Supportprozessen (Nutzung von KI)Digitale Transformation gestalten: Management, Arbeitsprozesse und Methoden: Herausforderungen zur Gestaltung der digitalen Transformation (VUCA Welt, Lean Start-up, Agiles Mindset) · Agile Methoden (Design Thinking, Scrum, Kanban) · Management der digitalen Transformation (Unternehmensführung in der VUCA-Welt, neue Führungskultur in agilen Organisationen) · Gesellschaftliche Folgen der digitalen Transformation (Qualifizierung · Digitalisierung nutzen, Datenschutz, Moral und Ethik)WEBANWENDUNGEN, JAVASCRIPT UND FRAMEWORKSKonzepte und Werkzeuge: Bedeutung von Web Anwendungen · Grundbegriffe der Entwicklung (unter anderem Unterschiede zwischen App und Anwendung, mobile Anwendungen, Responsive Design, Mobile First) · Architektur von Web-Anwendungen · Modularisierung von Web-Anwendungen · Verteilung von Web-Anwendungen · Sicherheit von Web-Anwendungen · Wichtige Frameworks und Bibliotheken für die Entwicklung im Überblick · Agile Vorgehensmodelle und -methoden für die Entwicklung (vor allem Scrum und Extreme Programming) · Installation von Visual Studio Code · Visual Studio Code im Überblick · Projekte mit Visual Studio Code bearbeitenKomplexere Web-Anwendungen erstellen: Praktische Umsetzung komplexerer Anwendungen mit unterschiedlichen Frameworks und Bibliotheken · Entwurfsmuster, Model View Controller, Factory Method, SingletonJavaScript: Funktionsweise von Webseiten: HTML, CSS und JavaScript · Die Entwicklung von JavaScript: DOM, AJAX, JSON und Bibliotheken · Einführung in JavaScript · Daten speichern, Variablen und Funktionen in Java · Arbeiten mit Objekten in JavaScript - Interaktivität und Animation: CSS, Event-Handler, Drag & Drop · Formulare und BenutzerdatenNode.js: Aufbau von Node.js · Einsatzgebiete von Node.js · Installation · Visual Studio Code und Node.js · Aufbau einer Anwendung – Bibliotheken · Node Package Manager · Interaktiver Modus (REPL) · Hello World mit Node.js · Module von Node.js – Server mit Node.js erstellen · Streams und Dateien · Express FrameworkAngular: Aufbau von Angular · Einsatzgebiete von Angular · Installation · Visual Studio Code und Angular · Aufbau einer Anwendung · Einführung in TypeScript · Hello World mit Angular · Komponenten · Property Bindings · Event Bindings · FormularverarbeitungVue.js: Aufbau von Vue.js · Einsatzgebiete von Vue.js · Installation · Visual Studio Code und Vue. js · Hello World mit Vue.js · Aufbau einer Anwendung · View-, Input und Event Binding · Vue-Instanz · Templates · Komponenten · Lebenszyklus von Komponenten · Direktiven · Single-File-KomponentenONLINE-VERANSTALTUNGENWEBINAR SPRING BOOT (OPTIONAL)Spring Boot als Java-Framework für die Entwicklung komplexer und skalierbarer Anwendungen: Begriffserklärungen und Beispiele mit Spring Boot · Reaktive und sichere Webanwendungen erstellen · Daten persistent speichern · Mit Cloud-Services arbeiten · Microservices implementierenONLINE-SCRUM-PROJEKT (OPTIONAL)Grundlagen des agilen Konzepts und des Scrum-Vorgehensmodells: Leitsätze und Prinzipien · Das Scrum-Vorgehensmodell · Die Scrum-Grundwerte: Selbstverpflichtung, Mut, Offenheit, Fokus, Respekt · Scrum-Rollen: Aufgabengebiete und Einflüsse (Product Owner, Scrum Master, Entwicklungsteam, Stakeholder/Kunde)Teilnahme an allen Scrum-Ereignissen und konstruktiv mitwirken: Daily Scrum · Sprint Planning · Sprint · Sprint Review · Sprint Retrospective · Backlog RefinementScrum-Artefakte mit ihren Zuständigkeiten: User Story · Product Backlog · Sprint Backlog · Produkt-Inkrement · Definition of Done · Definition of ReadyMethoden und Tools, die vom Scrum-Entwicklungsteam benötigt werden: Estimation Poker / Planning Poker · T-Shirt-Methode · Swimlane Sizing – Arbeitspaketerstellung · IPM / Planning · Continous Integration · Retrospective · Stand-upTools für die Zusammenarbeit: JIRA & Confluence: Aufbau und die Funktionsweise · Projekt- und Sprintorganisation in JIRA & Confluence · Konzeption der Nutzung eines Ressourcen-Tools · Entwicklungsplanung der Software gemäß den Anforderungen der Endnutzer · Dokumentation der Abnahme von SoftwareErkennen von Prozessen und Nutzen von Software Tools zur Automatisierung: Unterstützung durch JIRA im Führen von Anforderungen · Nutzung von JIRA zur Einschätzung von Anforderungen · Analysieren von Anforderungen und Umsetzung in Programmcode · Dokumentation für Entwickler in Confluence · Teamzusammenarbeit in gemeinsamer Versionskontrolle · Nutzen von Continuous Integration in der agilen Entwicklung.