ppls
ppls
ppls
Fichier Détails
Cartes-fiches | 58 |
---|---|
Langue | Deutsch |
Catégorie | Chimie |
Niveau | École primaire |
Crée / Actualisé | 31.03.2018 / 31.03.2018 |
Lien de web |
https://card2brain.ch/box/20180331_ppls
|
Intégrer |
<iframe src="https://card2brain.ch/box/20180331_ppls/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>
|
Créer ou copier des fichiers d'apprentissage
Avec un upgrade tu peux créer ou copier des fichiers d'apprentissage sans limite et utiliser de nombreuses fonctions supplémentaires.
Connecte-toi pour voir toutes les cartes.
Was heißt ORM und was weißt du dazu?
Object-Relation Mapping
- Datenbank: relational, Programmierung: objektorientiert -> nicht kompatibel
- Abbildung ist eine Herausforderung
- Technologien: Hibernate, Java Persistence API (JPA)
Was weißt du über Database Access Layer?
- Persistenz Schicht, zwischen Applikation und relationaler Datenbank
- Notifizierungsmechanismus zum konsistenten Abgleich
- Anforderungen:
- CRUD Methoden
- Transaktionen (ACID)
- Lazy Loading (nur laden was benötigt wird)
- Cursor - Prinzip
Was ist die Idee von Lazy Loading?
- Lade (große) Objekte erst, wenn sie wirklich benötigt werden
- kann auch mit Virtual Proxy umgesetzt werden
Wie kann Dependency Injection umgesetzt werden?
- Umsetzung per Resource File, Java Annotations, Reflections, Methoden Signaturen
- Field Injection, Constructor Injection, Setter Injection
- Problem: Wie lang kann übergebende Referenz in Objekt bestehen? Unter welchen Bedingungen kann Referenz injiziert oder ausgetauscht werden?
Wie ist die Definition von MicroServices?
- eigene Laufzeitumgebung, unabhängig von anderen Microservices
- eigenes Domain Model
- Kommunikation mit anderen (REST, HTTP)
- flexibles Deployment (Docker)
- Nanoservice (wenige Zeilen Code)
- eigenes Datenbanksystem
Was heißt Bounded Context?
- kein universelles Datenmodell zwischen Microservices
- vertikale Aufteilung von Funktionen und Daten
Wie ist die Architektur von JEE?
- Web Browser kommuniziert mit Web Container (HTTP)
- Web Container besteht aus Servlet und Java Server Faces
- Web Containter kommuniziert mit EJB Container
- Java Application kommuniziert mit EJB Containter (RMI)
Was weißt du zu Enterprise Java Bean? Und welche Arten davon gibt es?
- serverseitiges Komponentenmodell zur Realisierung der Geschäftslogik
- realisieren
- skalierbare
- transaktionale
- sichere
- und wiederverwendbare Applikationen
- Entity (Bean) - persistentes, fachliches Object
- Session Bean
- Stateless Session Bean
- Stateful Session Bean
- Singleton Session Bean
- Message-driven Bean (asynchrone Kommunikation)
Wie ist das Packaging bei JEE?
- Enterprise Archive (ear) - enthält .war .jar .rar
- EJB-JAR (Enterprise Java Bean Archive, jar) - enthält EJBs
- Web Application Archive (war) - Web-basierten Komponenten
Erzähl was über Session Beans. Wie lauten die Annotationen?
- Session Bean implementiert Use Cases
- musste bis Version 2.x eine Reihe von Interfaces implementieren
- ab 3.0 durch POJO realisiert, Annotations werden verwendet
Entfernter Zugriff erfolgt mehr RMI (Remote Method Invocation).
Annotationen (Folie 28ff)
- @Stateless für Stateless Bean
- @Remote für das Interface welches Remote verwendet werden soll (die EJB implementiert dann das Interface)
- @Local für das Interface welches Lokal verwendet werden soll
- @EJB an eine Variable injiziert dann die lokale EJB in die Variable
Erzähle was über Stateless Session Beans.
Wie lauten die Zustände?
- beliebige Zuweisung aus Pool
- Instanzvariablen können, sollten aber besser nicht belegt werden
- Geschäftslogik sollte in einem Methodenaufruf erledigt werden
- Vorteile Pooling:
- kleine Anzahl Beans kann theoretisch größere Anzahl von Clients bedienen
- benötigen weniger Server Ressourcen
- Hohe Skalierbarkeit
- Auslastung des Application Server sinkt
Erzähle was über Singleton Seassion Bean
Sowie über die Zustände
- es existiert nur eine Session
- Einsparung von Ressourcen
- nicht thread-safe
- Methoden zur Unterbindung nicht performant
- gut für gleichzeitige Lesezugriffe mit wenigen Updates
Lösung (Folie 30)
- synchronized -> inperformant
- Alternativ `@ConcurrencyManagement?
- Vorteil: Read-Lock und Write-Lock
- Read-Lock beliebig viele, aber nicht wenn Write-Lock vorhanden
- Write-Lock nur genau einmal
Was bedeuted ACID?
- Atomicity; nicht zerlegbar; entweder ganz oder gar nicht
- Consistency; eine Transaktion hinterlässt einen konsistenten Datenbankzustand
- Isolation; nebenläufige Transaktionen beeinflussen sich nicht
- Durability; Wirkung einer erfolgreichen Transaktion bleibt dauert in der DB erhalten
Was weißt du über Transaktionen?
Nenne auch die Transaktionsattribute
- Problem: Aus einer Transaktion können weitere Methoden anderer Session Beans aufgerufen werden; Gültigkeitsbereich einer Transaktion?
- Abhängig von Transaktionsattributen
- REQUIRED (Default) - neue Transaktion in gleicher Transaktion
- REQUIRES_NEW - neue Transaktion in eigener Transaktion
- MANDATORY - neue Transaktion in eigener Transaktion; wenn keine Transaktion existiert -> FEHLER
Was versteht man unter Architekturstile und -muster
- beschreibt Dekomposition eines einzelnen Software-Sytems
- Definieren Richtlinien und Vorgaben
Was sind klassische Architekturstile?
- Layer
- Peer-To-Peer
- Pipes-And-Filter
- Shared Data
- Client-Server
Architektur Elemente
- Elemente können hierarchisch angeordnet sein
- Zugriff auf Funktionen erfolgt über Interfaces
Wie können Interaktionen stattfinden?
- lokal
- Verteilt
- durch Mittlerkomponente
Was sind Direktiven?
Sind zusätzliche Eigenschaften, Richtlinien und Einschränken welche sich nicht unmittelbar aus der Dekomposition ergeben.
Oft durch: Qualitätsanforderungen, technische Anforderungen, grundlegenden Architekturstil, organisatorische Rahmenbedingungen
Was sind technische Schulden?
- Qualitätseinbußen, (un)bewusst falsche oder suboptimale technische Entscheidungen
- Implementationsschulden (Code-Smells), Architekturschulden, Testschulden, Dokumentationsschulden
Was ist die Idee und das Ziel der Komponentenorientierung?
- Idee: Erstellung von Software durch Komposition von vorgefertigten, unabhängigen Software Komponenten
- (Zusammenbau von Systemen aus einzelnen Teilen)
- Ziel: Reduktion von Kosten und Zeit
Wie wird eine Komponente implementiert?
- wird implementiert durch ein Objekt
- kann mehrere Interfaces besitzen
- weißt Abhängigkeiten aus
Was zeichnet einen Microservice aus?
- besitzt eine Implementierung
- kann ein UI besitzen
- kann mehrere REST-Interfaces besitzen
- besitzt einen Datenhaushalt
- hat eine Laufzeitumgebung
Welche Rollen gibt es bei der Entwicklung von Komponenten?
- -Entwickler
- -Zusammensteller (zum Teil Endanwender)
- Entwickelt Applikation durch (Wieder)verwendung von Komponenten
- System-Architekt
- Setzt LFU für Komponenten auf
- Einhaltung von Qualitätsanforderungen
Welche Eigenschaften hat eine Komponente?
Deployment ist wichtigste Eigenschaft einer Komponente!
Standardisiert Müssen standardisierten Komponentenmodell entsprechen; Vorgabe von Schnittstellen, Metadaten, Dokumentation, Zusammenstellungsart, Bereitstellung
Unabhängig Sollte ohne Abhängigkeiten auskommen; falls benötigt sollte die Abhängigkeit spezifiziert sein
Einsetzbar (deployable)Kann in LZU eingesetzt werden; liegen in Binärform vor; LZU baut auf OS auf
Dokumentiert Vollständig dokumentiert, damit Benutzer entscheiden können ob Ansprüche erfüllt sind; Beschreibung Syntax und Semantik
Zusammenstellbar Kann mit (mehreren) anderen zu höherwertigen Komposition zusammengestellt werden; Interaktion über öffentliche Schnittstellen
Was sind die Grundparadigmen der Objektorientierung?
- Kapselung des Zustands
- Abstraktion
- Generalisierung und Spezialisierung
- Polymorphie
Unterscheide Klasse und Komponente
- Komponenten legen keine Datentypen fest
- Implementierung von Komponenten sind verschlossen
- Komponenten sind sprachunabhängig
- Komponenten sind standardisiert
Komponente:
- Binärform
- Wird in LZU deployed
- kann aus LZU entfernt werden
- Deployment während der Laufzeit
Objekt:
- Source Code
- Java: nur Kompolierung der Klasse, dann flexibles Einsetzen in Classpath möglich, keine Verlinkung
Wofür stehts COTS und was zeichnet es aus?
Commerciall Off-the-Shelf
- seriengefertigte Komponenten, gleichartig aufgebaut
- geringe bis gar keine Konfiguration
- vollständige Software-Lösung
Was zeichnet ein Framework aus?
- Rahmenwerk
- Definiert Software-Architektur
- Enthält Klassen, Bibliotheken und LZU
- nicht unmittelbar ausführbar, hohe Anpassung notwendig
-
- 1 / 58
-