SPR-004: Core Spring.NET Tagesübersicht
Core Spring .NET ist ein dreitägiges Training, das folgende Inhalte abdeckt:
• Die leichtgewichtige Spring.NET Container Architektur, einschließlich Inversion of Control
• Agile, domänengetriebene Design-Techniken mit Spring.NET
• Effektiver ADO.NET Daten-Zugriff
• Deklaratives Transaktions Management
• Pragmatisches AOP
• Isoliertes Unit-Testen
• Schnelle Integrations-Tests
• Spring.NET ASP.NET Framework
Übersicht
In diesem dreitägigen Training lernen Sie, wie Sie mit Spring.NET gut-designte, testbare Geschäftsapplikationen agil entwickeln können.
- Tag 1 – Spring.NET Framework Grundlagen
- Einführung in die leichtgewichtige Container-Architektur und den Spring.NET ApplicationContext
- Wie Sie mit Dependency Injection und TDD einfach strukturierte, hochkonfigurierbare und einfach zu testende Applikationen schnell entwickeln
- Wie Spring.NET Ihnen hilft, besseren, einheitlichen Code zu schreiben mit Diskussion der relevanten Design-Patterns
- Übungen anhand eines realistischen Geschäftsfalles – dieser wird im Verlauf des Trainings weiter ausgebaut
- Tag 2 – Effektive Middle-Tier-Architektur
- Pragmatisches Spring AOP im Middle-Tier, mit Beispielen
- Effektive Persistenz: Best Practices für einen Persistenz-Layer mit Spring.NET
- Erörterung der verschiedenen Persistenz-Strategien und ihrer Trade-Offs, einschließlich NHibernate und Spring ADO.NET
- Transaktions-Management-Strategien mit Spring.NET im Service-Layer
- Strategien für Unit- und Integrationstests im Middle-Tier
- Tag 3 – Effektive Web-Architektur und -Design
- Verdeutlichung der Vorteile des Spring ASP.NET Framework anhand einer realistischen Beispiel-Anwendung
- Konfigurieren von mit Spring.NET gemanagten Services für verteilten Zugriff ohne Code
Detaillierte Tagesplanung
Tag 1
Der erste Tag beginnt mit einer detaillierten Erläuterung der Konzepte Inversion of Control und Dependency Injection. Sie lernen, wie Sie diese fundamentalen Prinzipien anwenden können, um die Testbarkeit Ihres Codes zu erhöhen und gut-designte, mehrschichtige Applikationen zu erstellen. Sie wenden Design-Patterns an, die typischerweise in leichtgewichtigen Containern Verwendung finden, und Sie sehen Beispiele, wie Sie die Wiederverwertbarkeit Ihres Codes maximieren können.
Danach tauchen wir in die Welt des Spring.NET ApplicationContexts ein, das Herzstück von Spring. Sie werden nicht nur die grundlegenden Eigenschaften des ApplicationContexts kennen lernen, sondern auch die fortgeschrittenen Techniken, um wartbare und erweiterbare Applikationen zu entwickeln. Dabei lernen Sie konkret:
- Effektives Organisieren von Spring.NET Konfigurations-Dateien durch Modularisierung
- Definieren von FactoryObjects zur Kapselung der Logik zum Erzeugen bzw. zum Lookup
- Implementierung eigener Erweiterungen an wohl-definierten Punkte im Lebenszyklus des ApplicationContext
- Einsatz von Spring Namespaces für prägnante XML-Konfiguration
- Verwendung der Spring.NET Integrationstest-Klassen, die einen ApplicationContext laden und Objekte für den Test bereitstellen
Am Ende des ersten Tage verstehen Sie die leichtgewichtige Spring.NET Container-Architektur und wie sie es erlaubt, aus lose gekoppelten Teilen schnell ein komplexes System zusammenzusetzen. Die Grundkonzepte von Spring.NET sind Ihnen klar und Sie wissen, wie Spring.NET Ihnen hilft, Anwendungen mit hoher Qualität schneller zu schreiben.
Tag 1 endet mit einem Geschäftsbeispiel, das Sie auch an den folgenden Tagen in den Übungen verwenden werden. Der Tag beinhaltet verschiedene Übungen, in denen Sie sich mit den Grundlagen von Spring.NETs leichtgewichtigem Container praktisch vertraut machen. Dabei verfolgen Sie einem testgetriebenem Ansatz. Sie lernen, Mocks und Stubs effektiv anzuwenden, um das parallele Entwickeln im Team zu erleichtern, und sehen, was dafür benötigt wird. Sie sammeln Erfahrung beim Gestalten einer Business-Facade, und setzen Techniken ein, um Geschäfts-Vorgänge in Code zu überführen. Sie entwickeln Integrations-Tests, um diese Geschäfts-Vorgänge frühzeitig zu validieren, und setzen den Spring.NET Test-Support ein, um eine Test-Umgebung zu errichten. Dasselbe Geschäftsbeispiel wird auch an den folgenden Trainingstagen für die Übungen zu Persistenz, Web-Schichten und Integration verwendet.
Tag 2
Der zweite Tag schließt direkt an den ersten an: Wir bauen das Geschäftsbeispiel zu einer realistischen Middle-Tier-Applikation aus. Wenn wir jetzt die Kern-Anwendungs-Logik mit Services wie Transaktions-Management versehen, tauchen Sie in die Welt der aspekt-orientierten Programmierung (AOP) ein. Sie sehen, wo Sie AOP einsetzen können und wie Sie Crosscutting Concerns erkennen können.
Sie lernen, wie sie die in Spring.NET enthaltenen Aspekte verwenden können und werden einen eigenen Aspekt entwickeln. Nachdem Sie die Grundlagen von Spring AOP verinnerlicht haben, gehen wir auf die Rolle von Spring.NET im Transaktions-Management und beim Daten-Zugriff ein. Am Ende des Tages haben Sie gelernt, wie Sie die Komplexität Ihres Daten-Zugriffs-Code deutlich verringern können, in dem Sie Spring.NET zum Resourcen-Management, zur Exception-Übersetzung und für deklarative Transaktionen einsetzen.
Nach einer Übersicht über Springs Middle-Tier-Support schreiten wir fort zur Implementierung der Persistenz-Schicht. Sie setzen sowohl NHibernate als auch ADO.NET ein, um Ihre Anwendung mit der Datenbank zu verbinden. Mit Springs DaoSupport-Klassen und den Templates implementieren Sie eine zuverlässige und performante Persistenz-Schicht mit sehr wenig Code. Sie lernen praktisch, ADO.NET effektiv zu nutzen, wenn hohe Performance und komplexe relationale Operationen erforderlich sind. Sie werden sehen, dass Spring.NET Ihnen die einmalige Möglichkeit bietet, NHibernate und ADO.NET in einer Anwendung gemeinsam zu nutzen.
Als nächstes implementieren Sie Transaktionen mit Hilfe der Spring.NET Transaktions-Infrastruktur. Es werden sowohl deklaratives als auch programmatisches Transaktions-Management abgedeckt. Sie lernen die IPlatformTransactionManager-Implementierungen kennen und die Möglichkeit zum Mischen von ADO.NET- und NHibernate-Zugriff in ein und derselben Transaktion. Sie lernen, wie man ohne Code-Änderungen zwischen lokalem und globalem Transaktions-Management wechseln kann. Sie setzen deklarativ Transaktions-Grenzen, definieren Rollback-Regeln und lernen, wie Sie die Transaktions-Infrastruktur für Ihre Anwendung einsetzen. Durch den Autoproxy-Creator fügen Sie Transaktions-Verhalten automatisch zu Objekten hinzu und lernen, wie Sie Transaktions-Regeln mit Attributen als Metadaten anlegen.
Am Ende des Tages bauen Sie eine voll-funktionale Middle-Tier mit der Kern-Logik Ihrer Applikation. Sie werden die Komponenten der Anwendung in Isolation testen wie auch als Teil eines End-to-End Integrations-Tests. Sie erfahren aus erster Hand die Vorzüge des Test-Driven-Developments (TDD). Sie werden verstehen, wie Sie NHibernate und ADO.NET effektiv anwenden können, und wie Spring.NET es ermöglicht, Ihre Business Services deklarativ und dynamisch mit Infrastruktur-Elementen zu versehen.
Tag 3
Der dritte Tag geht detailliert auf effektive Web-Architektur ein, indem er Springs ASP.NET Framework im Detail abdeckt. Sie entwickeln ein Web Front End, das die Middle-Tier-Funktionalität nutzt, die Sie in den letzten Tagen entwickelt haben. Dabei werden alle Funktionalitäten von Springs ASP.NET Framework abgedeckt. Sie werden sehen, wie Sie ASP.NET-Seiten und -Controls mit Dependency Injection konfigurieren, um Middle-Tier-Dienste anzusprechen. Weitere Punkte sind bidirektionales Databinding zwischen Page Controls und Ihrem Daten Modell, deklarative Validierung und die Externalisierung der Seitenabfolgen. Sie sehen, wie Sie Ihre Anwendung internationalisieren und einschließlich der Bilder branden können, und mit welchen Techniken Sie die Benutzeroberfläche für Ihre Kunden verbessern.
Nachdem Sie die fundamentale AOP-Bausteine kennen gelernt haben, können Sie nun auf diesem Wissen aufbauen, da Spring.NET die gleichen generellen Techniken für Enterprise Integration verwendet. Sie exportieren einen transaktionalen Service mit einer Reihe von Protokollen mit Hilfe von Spring.NETs Remoting Support an entfernte Clients.
Grundlegende Informationen
Methode
Durch unsere Trainings profitieren Sie von der großen Erfahrung und dem Fachwissen bezüglich Software-Architektur unseres Teams. Wir vermitteln dieses Wissen durch ein interaktiven Training mit zahlreichen praktischen Übungen.
Der Core Spring.NET Kurs vermittelt nicht nur die Spring.NET Features und ihrer Verwendung, sondern auch grundlegende architektonische Ansätze. Es ist wichtig zu wissen, wie man bestimmte Teile eines Frameworks verwendet, aber noch wichtiger ist es, dass man entscheiden kann, wann man sie einsetzen soll.
Voraussetzungen zur Teilnahme an diesem Kurs
Wir gehen davon aus, dass die Teilnehmer einen gutes Verständnis von den Grundlagen von .NET APIs und C# haben, sowie Basiswissen über generelle .NET-Konzepte und APIs, wie zum Beispiel ADO.NET, Transaktionen und ASP.NET. Da wir auch objekt-relationale Mapping Techniken (ORM) in diesem Kurs abdecken, setzen wir auch Basiswissen über ORM-Konzepte voraus.
Übungen
Da dieser Kurs sowohl auf Spring.NET als auch auf die Entwicklung von leicht wart- und erweiterbaren Anwendungen eingeht, ist er zu 40% Theorie- und zu 60% Übungs-orientiert.
Da Übungen den Großteil des Kurses ausmachen, werden Sie in diesem Kurs mit einem Computer arbeiten. Für die öffentlichen Trainings stellen wir einen entsprechend konfigurierten PC zur Verfügung. Sie können Ihren Laptop mitbringen, aber es ist nicht unbedingt notwendig.
Kontaktieren Sie uns
Haben Sie Fragen zu diesem Training oder möchten weitere Informationen, kontaktieren Sie uns bitte Kontaktformular.

