S O F T W A R E H Y G I E N E X P D A Y S S T U T T G A R T
|
|
- Meta Kneller
- vor 5 Jahren
- Abrufe
Transkript
1 SOFTWARE HYGIENE XPDAYS STUTTGART 2017
2 oder was man von Blutgruppen über die Strukturierung von Software lernen kann
3 sven bange jens himmelreich NEULAND - BÜRO FÜR INFORMATIK
4 AGILE ARCHITEKTUR
5 DER EINSAME ARCHITEKT
6 Plan
7 ARCHITEKT
8 ARCHITEKT
9 ARCHITEKTUR evolvierend, inkrementell
10 Werte
11 Muster
12 Werte und Muster werden global kommuniziert und machen lokal handlungsfähig.
13 Big Ball of Mud
14 willkürlich chaotisch wuchernd schmutzig sauber einfach strukturiert aufgeräumt
15 1848 Ignaz Semmelweis
16 HYGIENE Erkennung, Behandlung und Prävention von Infektionskrankheiten
17 ERKENNUNG Erkennung, Behandlung und Prävention von Infektionskrankheiten
18 AB0 Bedside-Test
19 0 A B AB
20 Spender Empfänger 0 A B AB 0 x x x x A B AB x x x x x
21 Serafol ABO Anti-A Anti-B
22 Serafol AB0 Anti-A Anti-B
23 Serafol AB0 Anti-A Anti-B
24 Serafol AB0 Anti-A Anti-B
25 Big Ball of Mud
26 QUASAR Johannes Siedersleben sd&m
27 Software, die sich unterschiedlich schnell ändert, wird in unterschiedliche Module aufgeteilt. David Parnas
28 0 A B AB
29 0 A T AT
30 0 A T AT universell verfügbare Software
31 0 A T AT Anwendungs-Software
32 0 A T AT Technische Software
33 0 A T AT Big Ball of Mud
34 0 A T AT/R Repräsentation
35 0 A T R
36 Aufgerufener Aufrufer 0 A T R 0 x x x x A T R x x x x x
37 Quasar AT0 Anti-A Anti-T Quasar
38 HYGIENE Erkennung, Behandlung und Prävention von Infektionskrankheiten
39 BEHANDLUNG Erkennung, Behandlung und Prävention von Infektionskrankheiten
40 TREN NUNG
41 Domain Driven Design Eric Evans, Vaughn Vernon
42 A B C I. Bounded Context
43 II. A-Software T-Software
44 III. Domain Model
45 Trennwand
46 R-Software
47 Hexagon
48 Port and Adapter Application Domain Hexagon
49 Port and Adapter WebRequest WebController Application AppService Domain Aggregate Repository DomainEvent DomainService ValueObject Entity RepositoryImpl JDBCObject Hexagon
50 Port and Adapter WebRequest WebController Application AppService Domain Aggregate Repository DomainEvent DomainService ValueObject Entity RepositoryImpl JDBCObject A-Software
51 Port and Adapter WebRequest WebController Application AppService Domain Aggregate Repository DomainEvent DomainService ValueObject Entity RepositoryImpl JDBCObject T-Software
52 Port and Adapter WebRequest WebController Application AppService Domain Aggregate Repository DomainEvent DomainService ValueObject Entity RepositoryImpl JDBCObject R-Software
53 BEISPIEL
54 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
55 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
56 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
57 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
58 @Controller public class WebController { private GreetingApplicationService public String home(model model) { GreetingData greeting = greetingapplicationservice.welcomepeople(); model.addattribute("salutation", greeting.getsalutation()); model.addattribute("name", greeting.getname()); return "home"; }
59 @Controller public class WebController { private GreetingApplicationService public String home(model model) { GreetingData greeting = greetingapplicationservice.welcomepeople(); model.addattribute("salutation", greeting.getsalutation()); model.addattribute("name", greeting.getname()); return "home"; }
60 @Controller public class WebController { private GreetingApplicationService public String home(model model) { GreetingData greeting = greetingapplicationservice.welcomepeople(); model.addattribute("salutation", greeting.getsalutation()); model.addattribute("name", greeting.getname()); return "home"; }
61 @Controller public class WebController { private GreetingApplicationService public String home(model model) { GreetingData greeting = greetingapplicationservice.welcomepeople(); model.addattribute("salutation", greeting.getsalutation()); model.addattribute("name", greeting.getname()); return "home"; }
62 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
63 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
64 @Service public class GreetingApplicationService private GreetingRepository repository; } public GreetingData welcomepeople() { Greeting greeting = repository.firstgreeting(); GreetingData greetingdata = new GreetingData(greeting); return greetingdata; }
65 @Service public class GreetingApplicationService private GreetingRepository repository; } public GreetingData welcomepeople() { Greeting greeting = repository.firstgreeting(); GreetingData greetingdata = new GreetingData(greeting); return greetingdata; }
66 @Service public class GreetingApplicationService private GreetingRepository repository; } public GreetingData welcomepeople() { Greeting greeting = repository.firstgreeting(); GreetingData greetingdata = new GreetingData(greeting); return greetingdata; }
67 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
68 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
69 @Repository public class JpaGreetingRepository implements GreetingRepository private HibernateGreetingRepository hibernategreetingrepository; public Greeting firstgreeting() { Iterable<GreetingTable> rows = hibernategreetingrepository.findall(); GreetingTable r = rows.iterator().next(); Greeting greeting = new Greeting( new Salutation(r.getSalutation()), new Name(r.getName())); return greeting; }
70 @Repository public class JpaGreetingRepository implements GreetingRepository private HibernateGreetingRepository hibernategreetingrepository; public Greeting firstgreeting() { Iterable<GreetingTable> rows = hibernategreetingrepository.findall(); GreetingTable r = rows.iterator().next(); Greeting greeting = new Greeting( new Salutation(r.getSalutation()), new Name(r.getName())); return greeting; }
71 @Repository public class JpaGreetingRepository implements GreetingRepository private HibernateGreetingRepository hibernategreetingrepository; public Greeting firstgreeting() { Iterable<GreetingTable> rows = hibernategreetingrepository.findall(); GreetingTable r = rows.iterator().next(); Greeting greeting = new Greeting( new Salutation(r.getSalutation()), new Name(r.getName())); return greeting; }
72 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
73 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
74 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
75 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
76 public class XpdemoApplication { } public static void main(string[] args) { SpringApplication.run(XpdemoApplication.class, args); }
77 public class XpdemoApplication { } public static void main(string[] args) { SpringApplication.run(XpdemoApplication.class, args); }
78 java de.neuland.xpdemo XpdemoApplication.java application GreetingApplicationService.java GreetingData.java domain.model Greeting.java GreetingInterest.java GreetingRepository.java Name.java Salutation.java port.adapter persistence GreetingTable.java HibernateGreetingRepository.java JpaGreetingRepository.java web WebController.java resources application.properties static templates home.html
79 PRÄVENTION Erkennung, Behandlung und Prävention von Infektionskrankheiten
80 Quasar AT0 Anti-A Anti-T Bedside-Test your Code!
81 FRAGEN?
82 QUELLEN Vaughn Vernon, Implementing Domain Driven Design Johannes Siedersleben, Moderne Softwarearchitektur
Hexagonale Architektur
Hexagonale Architektur Domain zentrierte Microservices Javaland 2019-19.03.2019 Christian Iwanzik @chrisiwanzik c.iwanzik@tarent.de Christian Iwanzik (33) Softwareentwickler Dipl-Inf. (FH) - FH Köln Steckenpferde:
MehrSoftwarearchitektur mit dem Quasar- Architekturstil
Softwarearchitektur mit dem Quasar- Architekturstil Prof. Dr. U. Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie http://www-st.inf.tu-dresden.de
MehrDeklaration einer Klasse Innere innerhalb Klassen einer in Ja anderen v a Klasse
Innere Klassen in Java Java 1.0: nur top-level Klassen Seit Java Version 1.1: Innere Klassen Deklaration einer Klasse innerhalb einer anderen Klasse Illustration Eigenschaften Vorteile Anwendungsmöglichkeiten
MehrEnterprise JavaBeans Überblick
Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 2. Einführung Java EE 5 Plattform 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5.
MehrDDD MIT ONION ARCHITECTURE & STEREOTYPES
ZÜRICH / 22.11.2018 JAVA USER GROUP SWITZERLAND DDD MIT ONION ARCHITECTURE & STEREOTYPES DIE APPLIKATIONSARCHITEKTUR FÜR DOMAIN-DRIVEN DESIGN Christian Stettler INNOQ Schweiz CHRISTIAN STETTLER Senior
MehrInformatik II. Woche 13, Giuseppe Accaputo
Informatik II Woche 13, 30.03.2017 Giuseppe Accaputo g@accaputo.ch 1 Programm für heute Nachbesprechung Self-Assessment Test Nachbesprechung Übung 5 Java: Objektorientierte Programmierung Klassen und Objekte
MehrUniversität Karlsruhe (TH)
Universität Karlsruhe (TH) Lehrstuhl für Programmierparadigmen Fortgeschr. Objektorientierung SS 2009 http://pp.info.uni-karlsruhe.de/ Dozent: Prof. Dr.-Ing. G. Snelting snelting@ipd.info.uni-karlsruhe.de
MehrIT S ALL ABOUT THE DOMAIN, HONEY!
IT S ALL ABOUT THE DOMAIN, HONEY! Fachliche Architektur In hoher Qualitaet durch Domain-Driven design @hschwentner Was ist das für 1 Design? @hschwentner Vong Domain her @hschwentner HENNING SCHWENTNER
MehrErzeugungsmuster. Kapselung der Objekt-Erzeugung
Erzeugungsmuster Kapselung der Objekt-Erzeugung Definition Erzeugungsmuster dienen für die Lose Koppelung, bei der erst zur Laufzeit der Typ des zu erzeugenden Objekts festgelegt wird. Abstract Factory
MehrJAVA - Methoden,... T.Bosse
COMA JAVA -,... Anweisungblöcke Manche Blöcke werden mehrfach benötigt. Sauberer Code Java - /... //gabe double x=3.0; // Vorschrift double y=math.pow(x,); System.out.println("Ergebnis:"+y); //Rückgabe
MehrLebenszyklus von Threads
Threads Umgangssprachlich Faden, Diskussionsfaden, Gewinde, Faser, Garn, roter Faden Threads ermöglichen Nebenläufigkeit (parallele Ausführung von Anwendungsteilen). Typisch für Threads ist,dass sie zu
Mehr... Created by Michael Kirsch & Beat Rossmy
PROCESSING... Created by Michael Kirsch & Beat Rossmy INHALT JAVAFX WIE KÖNNEN WIR IN JAVA GRAFISCHEN OUTPUT ERZEUGEN? JAVAFX JavaFX ist ein Framework, dass es uns ermöglicht gra sche Elemente und die
MehrBuild Management Tool
Build Management Tool Build-Prozess? Source Code 3rd Party libraries Veröffentlichung Download all 3rd Party libs by hand Compile your sources: javac -sourcepath./src1;./src2 Byte Code -cp lib1.jar;lib2.jar
MehrBuild Management Tool?
Build Management Tool? Funktionen Dependency Management Kompiliert den Sourcecode in Binaries Führt automatisierte Tests aus Installiert Software oder Lädt sie in Repositories Erstellt eine Dokumentation
MehrCoMa 04. Java II. Paul Boeck. 7. Mai Humboldt Universität zu Berlin Institut für Mathematik. Paul Boeck CoMa 04 7.
CoMa 04 Java II Paul Boeck Humboldt Universität zu Berlin Institut für Mathematik 7. Mai 2013 Paul Boeck CoMa 04 7. Mai 2013 1 / 13 Verzweigungen Wenn-Dann Beziehungen if (BEDINGUNG) { else if (BEDINGUNG2)
MehrDecorator Pattern. Analyse- und Design-Pattern CAS SWE FS14. Roland Müller Samuel Schärer
Decorator Pattern Analyse- und Design-Pattern CAS SWE FS14 Roland Müller Samuel Schärer Entwurfsmuster der «Gang of Four» Strukturmuster fassen Klassen und Objekte zu grösseren Strukturen zusammen Adapter
MehrWeb-Testen mit JUnit und HttpUnit. Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum
1 Web-Testen mit JUnit und HttpUnit Kai Schmitz-Hofbauer Lehrstuhl für Software-Technik Ruhr-Universität Bochum 2 Inhalt Entwicklertests in der Praxis Unit-Testing JUnit HttpUnit Praktisches Beispiel Bewertung
MehrJava Einführung Methoden. Kapitel 6
Java Einführung Methoden Kapitel 6 Inhalt Deklaration und Aufruf von Methoden Lokale und globale Namen (Bezeichner) Sichtbarkeit und Lebensdauer von Variablen in Methoden Überladen von Methoden 2 Methoden
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt 26.03.2014 tobias.witt@hhu.de 25.12.01.30 Bürozeiten: 09 Uhr - 12 Uhr FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert
MehrBuild Management Tool?
Build Management Tool? Funktionen Dependency Management Kompiliert den Sourcecode in Binaries Führt automatisierte Tests aus Installiert Software oder Lädt sie in Repositories Erstellt eine Dokumentation
MehrErste Java-Programme (Scopes und Rekursion)
Lehrstuhl Bioinformatik Konstantin Pelz Erste Java-Programme (Scopes und Rekursion) Tutorium Bioinformatik (WS 18/19) Konstantin: Konstantin.pelz@campus.lmu.de Homepage: https://bioinformatik-muenchen.com/studium/propaedeutikumprogrammierung-in-der-bioinformatik/
MehrJava Tools JDK. IDEs. Downloads. Eclipse. IntelliJ. NetBeans. Java SE 8 Java SE 8 Documentation
Java Tools JDK http://www.oracle.com/technetwork/java/javase/ Downloads IDEs Java SE 8 Java SE 8 Documentation Eclipse http://www.eclipse.org IntelliJ http://www.jetbrains.com/idea/ NetBeans https://netbeans.org/
MehrWas du ererbt von Deinen Vätern hast, erwirb es, um es zu besitzen. J. W. v. Goethe.
Was du ererbt von Deinen Vätern hast, erwirb es, um es zu besitzen. J. W. v. Goethe http://www.zitate-online.de/autor/goethe-johann-wolfgang-von/ http://www.weimar-lese.de/files_weimar_lese/johann_wolfgang_von_goethe_bearbeitet_von_andreas_werner.jpg
MehrLehrstuhl für Bioinformatik Einführung in die Programmierung für Bioinformatiker Prof. B. Rost, Dr. L. Richter Blatt
Lehrstuhl für Bioinformatik Einführung in die Programmierung für Bioinformatiker Prof. B. Rost, Dr. L. Richter Blatt 13 30.1.2017 Threads II Aufgabe 13.1. Synchronisiertes Lesen und Schreiben Betrachten
MehrSymonics GmbH - Bericht aus der Praxis (Spring Boot)
Symonics GmbH - Bericht aus der Praxis (Spring Boot) Vorlesung Grundlagen des Internets Tübingen, den 22. Januar 2015 Dr. Christian Hoene Geschäftsführer, Symonics GmbH Dr. Christian Hoene Promovierte
MehrTest-Driven Design: Ein einfaches Beispiel
Test-Driven Design: Ein einfaches Beispiel Martin Wirsing in Zusammenarbeit mit Matthias Hölzl, Piotr Kosiuczenko, Dirk Pattinson 05/03 2 Ziele Veranschaulichung der Technik des Test-Driven Design am Beispiel
MehrKapitel 9. Programmierkurs. Attribute von Klassen, Methoden und Variablen. 9.1 Attribute von Klassen, Methoden und Variablen
Kapitel 9 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Objektorientierte Programmierung Attribute von Klassen, Methoden und Variablen Interfaces WS 07/08 1/ 18 2/ 18
MehrResilient Software Design Patterns
Resilient Software Design Patterns Version: 17.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Orientation
MehrObjektorientierte Programmierung Studiengang Medieninformatik
Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 13 14.06.2017 Heute: Anonyme Objekte Lokale Klassen Anonyme Klassen Anonyme Funktionen "Anonym"
MehrKapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions
Kapitel 10 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Exceptions Behandlung von Exceptions Verschiedene Exceptions Mehrere catch-anweisungen Der finally-block WS
MehrInternetanwendungstechnik (Übung)
Internetanwendungstechnik (Übung) JacORB S. Bissell, G. Mühl Technische Universität Berlin Fakultät IV Elektrotechnik und Informatik Kommunikations- und Betriebssysteme (KBS) Einsteinufer 17, Sekr. EN6,
MehrInfo B VL 11: Innere Klassen/Collections
Info B VL 11: Innere Klassen/Collections Objektorientiere Programmierung in Java 2003 Ute Schmid (Vorlesung) Elmar Ludwig (Übung) FB Mathematik/Informatik, Universität Osnabrück Info B VL 11: Innere Klassen/Collections
MehrResilientSoftware Design Patterns
Resilient Software Design Patterns Version: 17.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler Orientation
MehrRemote Method Invocation
Remote Method Invocation Spezielle Technik aus dem Java-Umfeld Ausführung von Methoden auf einem entfernten Rechner Analogon zum RPC (Remote Procedure Call) Zweck: Objekte in verschiedenen Java-VMs Aufruf
MehrJava: Vererbung. Teil 3: super() www.informatikzentrale.de
Java: Vererbung Teil 3: super() Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und IMMER zuerst den Konstruktor der Elternklasse auf! Konstruktor und Vererbung Kindklasse ruft SELBSTSTÄNDIG und
MehrJava und Eclipse Installation, erstes Beispielprogramm
Java und Eclipse Installation, erstes Beispielprogramm Bernfried Geiger, Intellisys GmbH, Sindelfingen www.intellisys.de Jens-B. Augustiny, LIGONET GmbH, Lobsigen bei Bern www.ligonet.ch Agenda Ziele /
MehrMedientechnik Sommersemester 2016
Medientechnik Sommersemester 2016 Übung 02 (MVC, Observer & Co.) Medientechnik SS 2016 - Übung 02-1 Terminübersicht Nr Zeitraum Thema 1 18.04. - 21.04. Organisatorisches, Bildbearbeitung 2 09.05. - 12.05.
MehrBeispielhafe Erweiterung einer Legacy-Anwendung
Beispielhafe Erweiterung einer Legacy-Anwendung Markus Deibel @msdeibel XP Days DE 2017 #xdde17 Mein Hintergrund Diplom Informatiker (FH) 2007-2016 MES Entwickler (Java, C#) 2017-heute Legacy Code-Bändiger
MehrEclipse Tutorial.doc
Berner Fachhochschule Hochschule für Technik und Informatik, HTI Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik Eclipse Tutorial 2005, HTI Burgdorf R. Weber Dateiname: Eclipse
MehrVerteidigung Großer Beleg
Verteidigung Großer Beleg Die GoF-Entwurfsmuster in Java Corinna Herrmann ch17@inf.tu-dresden.de Gliederung 1. Aufgabenstellung 2. Entwurfsmuster 3. Verwandte Arbeiten 4. Beispiele: 4.1. Adapter 4.2. Flyweight
MehrAufgabe11. Methode test1. import java.util.hashmap; import java.util.arraylist; public class Aufgabe11 {
Hochschule Harz Programmierung1 Aufgabe 10: FB Automatisierung und Informatik Dipl.-Inf. Dipl.-Ing. (FH) M. Wilhelm Programmierung 1 für MI / WI Thema: Hashing und Generische Klassen Versuchsziele Kenntnisse
MehrImplementieren von Klassen
Implementieren von Klassen Felder, Methoden, Konstanten Dr. Beatrice Amrhein Überblick Felder/Mitglieder (Field, Member, Member-Variable) o Modifizierer Konstanten Methoden o Modifizierer 2 Felder und
MehrVerbesserung der Architektur der DPP- Software Saros (Vortrag 2) Slawa Belousow Institut für Informatik FU Berlin
Verbesserung der Architektur der DPP- Software Saros (Vortrag 2) Slawa Belousow Institut für Informatik FU Berlin 03.02.2011 Inhalt der Präsentation 1.Arbeit und Vortrag 1 2.Aktuelle Saros-Architektur
MehrProgrammieren in Java
Programmieren in Java Vorlesung 06: Das Visitor Pattern Prof. Dr. Peter Thiemann (vertreten durch Luminous Fennell) Albert-Ludwigs-Universität Freiburg, Germany SS 2015 Peter Thiemann (Univ. Freiburg)
MehrVergleich verschiedener OO-Programmiersprachen
Vergleich verschiedener OO-Programmiersprachen - Schnellumstieg in 15 Minuten - C++ Java Visual C++ C# Programmbeispiel in Visual C++, C#, Java und C++ Dr. Ehlert, Juni 2012 1 Inhaltsverzeichnis 1. Problemstellung
MehrREST-Services mit Dropwizard ruck-zuck erstellt, dokumentiert und getestet
.consulting.solutions.partnership REST-Services mit Dropwizard ruck-zuck erstellt, dokumentiert und getestet Alexander Schwartz, Principal IT Consultant Berlin Expert Days 2015 REST-Services ruck-zuck
MehrObjektorientierte Programmierung Studiengang Medieninformatik
Objektorientierte Programmierung Studiengang Medieninformatik Hans-Werner Lang Hochschule Flensburg Vorlesung 1 15.03.2017 Objektorientierte Programmierung (Studiengang Medieninformatik) Form: Prüfung:
MehrEreignisse (Events) Asynchrones Versenden von Informationen Sender (Herausgeber) Empfänger (Abonnent) Dr. Beatrice Amrhein
Ereignisse (Events) Asynchrones Versenden von Informationen Sender (Herausgeber) Empfänger (Abonnent) Dr. Beatrice Amrhein Überblick Definition eines Ereignisses Sender und Empfänger Einfache Ereignisse
MehrObjektorientierte Programmierung
Universität der Bundeswehr Fakultät für Informatik Institut 2 Priv.-Doz. Dr. Lothar Schmitz FT 2006 Übungsblatt 9 Lösungsvorschlag Objektorientierte Programmierung 26. 06. 2006 Aufgabe 19 (Sieb des Erathostenes)
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Tafelübung 03 Vererbung, Polymorphie, Sichtbarkeit, Interfaces Clemens Lang T2 11. Mai 2010 14:00 16:00, 00.152 Tafelübung zu AuD 1/26 Klassen und Objekte Klassen und Objekte
MehrEinführung in das Seminar Einführung in XNA Vorstellung der Teilnehmer Gruppenfindung
Computerspielentwicklung Einführung in das Seminar Einführung in XNA Vorstellung der Teilnehmer Gruppenfindung 1 Computerspielentwicklung Einführung in das Seminar Einführung in XNA Vorstellung der Teilnehmer
Mehr7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.
7.1.5 Java RMI Remote Method Invocation (http://java.sun.com/products/jdk/rmi) (http://java.sun.com/j2se/1.3/docs/guide/rmi/spec/rmitoc.html) bietet leider nur begrenzte Verteilungsabstraktion Unterstützung
Mehr7. Klassenmethoden Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi
7. Klassenmethoden Einführung in die Programmierung (fbw) Sommersemester 2008 Prof. Dr. Bernhard Humm Hochschule Darmstadt, fbi 1 Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung
MehrNaviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org
Naviki GPS-Anwendungsentwicklung für Mobiltelefone www.naviki.org Fachhochschule Münster Labor für Software Engineering luzar@fh-muenster.de www.naviki.org 1 Naviki die Idee www.naviki.org 2 Wie funktioniert
MehrAnalyse und Modellierung von Informationssystemen
Analyse und Modellierung von Informationssystemen Dr. Klaus Höppner Hochschule Darmstadt Wintersemester 2014/2015 1 / 21 Beobachter-Muster 2 / 21 Das Beobachter-Muster Das Beobachter-Muster (observer,
MehrInformatik Funktionen
Informatik Seite 1 Funktion Mathematik: Zuordnung Argumentwert(e) => Ergebniswerte Beispiel: f(x,y) = 2*x+y Informatik / Programmierung: Zusammenfassung von Anweisungen die von Argumentwerten abhängen
MehrGrundlagen der Objektorientierten Programmierung Static
static - Komponenten Das Schlüsselwort static steht vor einer Klassenkomponente (Attribut oder Methode) und kennzeichnet diese als zur Klasse gehörig und nicht zu einem bestimmten Objekt. Was bedeutet
MehrVersuchsziele Kenntnisse in der Anwendung von: Sortieren mit Klassen Benutzung von generischen Klassen o Definition o Sortierung.
Hochschule Harz Programmierung1 Tutorial 11: FB Automatisierung und Informatik Dipl.-Inf. Dipl.-Ing. (FH) M. Wilhelm Programmierung 1 für MI / WI Thema: Sortieren und generische Klassen Versuchsziele Kenntnisse
Mehr46 Softwarearchitektur mit dem Quasar-Architekturstil
46 Softwarearchitektur mit dem Quasar-Architekturstil Prof. Dr. U. Aßmann Technische Universität Dresden Institut für Software- und Multimediatechnik Lehrstuhl Softwaretechnologie http://st.inf.tu-dresden.de
MehrInformatik II. Giuseppe Accaputo, Felix Friedrich, Patrick Gruntz, Tobias Klenze, Max Rossmannek, David Sidler, Thilo Weghorn FS 2017
1 Informatik II Übung 6 Giuseppe Accaputo, Felix Friedrich, Patrick Gruntz, Tobias Klenze, Max Rossmannek, David Sidler, Thilo Weghorn FS 2017 Heutiges Programm 2 1 Klassen - Technisch 2 Prediscussion
MehrSoftware Entwicklung 1. Rekursion. Beispiel: Fibonacci-Folge I. Motivation. Annette Bieniusa / Arnd Poetzsch-Heffter
Software Entwicklung 1 Annette Bieniusa / Arnd Poetzsch-Heffter AG Softech FB Informatik TU Kaiserslautern Rekursion Bieniusa/Poetzsch-Heffter Software Entwicklung 1 2/ 27 Motivation Beispiel: Fibonacci-Folge
MehrWiederholung Wozu Methoden? Methoden Schreiben Methoden Benutzen Rekursion?! Methoden. Javakurs 2012, 3. Vorlesung
Wiederholung Wozu? Schreiben Benutzen Rekursion?! Javakurs 2012, 3. Vorlesung maggyrz@freitagsrunde.org 5. März 2013 Wiederholung Wozu? Schreiben Benutzen Rekursion?! 1 Wiederholung 2 Wozu? 3 Schreiben
Mehr7. Java Fehler und Ausnahmen
Fehler und Ausnahmen in Java 7. Java Fehler und Ausnahmen Fehler und Ausnahmen unterbrechen die normale Programmausführung abrupt und stellen eine nicht geplantes Ereignis dar. Ausnahmen sind böse, oder
MehrHeap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen
Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen
MehrJava: Kapitel 1. Überblick. Programmentwicklung WS 2008/2009. Holger Röder Holger Röder
Java: Kapitel 1 Überblick Programmentwicklung WS 2008/2009 Holger Röder holger.roeder@informatik.uni-stuttgart.de Was ist Java? Die Java-Technologie umfasst die Programmiersprache Java sowie die Java-Plattform
MehrVariablenarten. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java
Variablenarten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 10.12.07 G. Bohlender (IANM UNI Karlsruhe) OOP und Klassen 10.12.07 1 / 15
MehrProblemstellung. Object1:Klasse1. Object2:Klasse2 att1: Klasse1 att2: 9. att1: att2: 17. Klasse1 att1 att2 Klasse2 att1 att2
Problemstellung Objekt mit aggregierten Objekten: att1: att2: 17 Object1:Klasse1 Object2:Klasse2 att1: Klasse1 att2: 9 serialisiert als Datei: Klasse1 att1 att2 Klasse2 att1 att2 -Speicherung von Objekten
Mehr6 Speicherorganisation
Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen Speicherbereich für
MehrPrüfung Softwareentwicklung II (IB)
Hochschule für angewandte Wissenschaften München Fakultät für Informatik und Mathematik Studiengruppe IB 2 B, IB 2 C Sommersemester 2013 Prüfung Softwareentwicklung II (IB) Datum : 11.07.2013, 08:30 Uhr
MehrEnterprise JavaBeans Überblick
Enterprise JavaBeans Überblick 1. Überblick Java EE 5 und Komponententechnologien 2. Einführung Java EE 5 Plattform 3. Enterprise JavaBeans Architektur 4. Ressourcen Management und Primäre Services 5.
MehrEINFÜHRUNG IN DIE PROGRAMMIERUNG
EINFÜHRUNG IN DIE PROGRAMMIERUNG FORTGESCHRITTENE KONZEPTE Tobias Witt!! 26.03.2014 FEHLERBEHANDLUNG KLASSISCHER ANSATZ Fehlercode als Rückgabewert von Methoden! String Fehlercode als String! int Fehlercode
MehrRene Schneider GEBIT Solutions GmbH. Integrity - ein innovatives Tool zur Acceptance-Test-Automatisierung
Rene Schneider GEBIT Solutions GmbH Integrity - ein innovatives Tool zur Acceptance-Test-Automatisierung Über mich Über mich Software Consultant bei GEBIT Solutions Über mich Software Consultant bei GEBIT
MehrRegionaltreffen Rhein-Main: 25 Jahre DOAG
Regionaltreffen Rhein-Main: 25 Jahre DOAG Industrialisierung der IT Dr. Michael Faden Peter Welkenbach 17. September 2013 BASEL BERN BRUGG LAUSANNE ZÜRICH DÜSSELDORF FRANKFURT A.M. FREIBURG I.BR. HAMBURG
MehrHeap vs. Stack vs. statisch. 6 Speicherorganisation. Beispiel Statische Variablen. Statische Variablen
Heap vs. vs. statisch Der Speicher des Programms ist in verschiedene Speicherbereiche untergliedert Speicherbereiche, die den eigentlichen Programmcode und den Code der Laufzeitbibliothek enthalten; einen
MehrSystemprogrammierung. Projekt: Java RMI. Wintersemester 2006 / 2007
Systemprogrammierung Projekt: Java RMI Wintersemester 2006 / 2007 Systemprogrammierung 1. Einleitung 2. Einführung in RPC 3. RMI 4. Code Beispiele 5. Live Vorstellung 6. Ausblick 7. Fazit 2 1. Einleitung
MehrJUnit. Unit testing unter Java
JUnit Unit testing unter Java Was ist Junit? einfaches Framework zum Schreiben von wiederholbaren Tests Besonders geeignet für unit testing Erlaubt Hierarchie von Testsuites Schreiben eines Test Case 1.
MehrCode Quality in Practice
Code Quality in Practice Orientation in Objects GmbH Entwicklertag Karlsruhe Mai 2017 Version: 1.2 Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater,
MehrProbleme bei der Nutzung der Bean Validation in JPA
Probleme bei der Nutzung der Bean Validation in JPA Die aktuelle Netbeans-Installation 6.9.1 bietet als JPA-Realisierung EclipseLink in der Version 2.0.2, die in der Zusammenarbeit mit der Referenzimplementierung
MehrNetzprogrammierung: Java RMI - Remote Method Invocation (Teil 3)
Netzprogrammierung: Java RMI - Remote Method Invocation (Teil 3) Robert Tolksdorf und Peter Löhr Überblick 1. Aktivierung und Deaktivierung von Objekten http://java.sun.com/javase/6/docs/technotes/guides/rmi/activation/overview.html
MehrProgrammentwicklung ohne BlueJ
Objektorientierte Programmierung in - Eine praxisnahe Einführung mit Bluej Programmentwicklung BlueJ 1.0 Ein BlueJ-Projekt Ein BlueJ-Projekt ist der Inhalt eines Verzeichnisses. das Projektname heißt wie
MehrDie Klasse java.lang.object. Thorsten Treffer
Die Klasse java.lang.object Thorsten Treffer 6. Dezember 2003 1 java.lang.object Die Klassenhierarchie von Java kann als Baum aufgezeichnet werden, dessen Wurzel die Klasse Object ist. Mit anderen Worten:
MehrProgrammieren in Java
Programmieren in Java Vorlesung 03: Schleifen Prof. Dr. Peter Thiemann Albert-Ludwigs-Universität Freiburg, Germany SS 2017 Peter Thiemann (Univ. Freiburg) Programmieren in Java JAVA 1 / 12 Inhalt Codequalität
MehrFakultät IV Elektrotechnik/Informatik
Fakultät IV Elektrotechnik/Informatik Probeklausur Einführung in die Informatik I Hinweis: Diese Probeklausur ist eine kleine Aufgabensammlung, die etwa dem Schwierigkeitsgrad der Teilleistung TL 2 (Programmiertest)
MehrPlay Framework, MySQL, JPA, HQL, HTML, jquery,
Play Framework, MySQL, JPA, HQL, HTML, jquery, Wer Mit wem Resultat 1.Kunde Schalter: Bibliothekarin Bestimmt,welcher Archivar die Zeitschrift holen geht 2. Schalter: Bibliothekarin Archivar Kontrollübergabe
MehrObjekte und Klassen. INE2 M. Thaler, Office TG ZHAW, M. Thaler, K. Rege, G. Burkert, E.
Objekte und Klassen INE2 M. Thaler, tham@zhaw.ch Office TG208 http://www.zhaw.ch/~tham 1 Um was geht es? typedef struct Konto { double saldo; int id; Konto; Modul "konto" konto.h konto.c Prozedurale Programmierung:
MehrVererbung. Gerd Bohlender. Institut für Angewandte und Numerische Mathematik. Vorlesung: Einstieg in die Informatik mit Java 14.1.
Vererbung Gerd Bohlender Institut für Angewandte und Numerische Mathematik Vorlesung: Einstieg in die Informatik mit Java 14.1.08 G. Bohlender (IANM UNI Karlsruhe) Vererbung 14.1.08 1 / 11 Übersicht 1
MehrProgrammierung für Mathematik HS10 Übung 8
Department of Informatics software evolution & architecture lab Programmierung für Mathematik HS10 Übung 8 1 Aufgabe: Codeverständnis (Repetition) 1.1 Lernziele 1. Code verstehen können. 2. Fehler im Code
MehrMicroservices. - Integration der Benutzeroberfläche - Version: Orientation in Objects GmbH. Weinheimer Str.
Microservices - Integration der Benutzeroberfläche - Version: 18.1 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Ihr Sprecher Thorsten Maier Trainer, Berater, Entwickler
MehrEJB3.0 Unit-Testing Reloaded
EJB3.0 Unit-Testing Reloaded Werner Eberling werner.eberling@mathema.de www.mathema.de Werner Eberling, MATHEMA Software GmbH - EJB3.0 - Unit-Testing Reloaded (G4 - Folie 1) Java Forum Stuttgart 2007 Automatisiertes
MehrProgrammieren I. Methoden-Spezial Heusch --- Ratz 6.1, Institut für Angewandte Informatik
Programmieren I Methoden-Spezial Heusch --- Ratz 6.1, 6.2 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Parameterübergabe bei primitivem Datentypen (Wertkopie) public class MethodParameters
MehrProgrammierung für Mathematik HS11
software evolution & architecture lab Programmierung für Mathematik HS11 Übung 8 1 Aufgabe: Codeverständnis (Repetition) 1.1 Lernziele 1. Code verstehen können. 2. Fehler im Code finden und korrigieren
MehrHinter den Kulissen: Die Magie von Spring Boot
Leipzig, 12. April 2018 JUG Saxony Hinter den Kulissen: Die Magie von Spring Boot Michael Simons @rotnroll666 INNOQ Beratung Konzeption Entwicklung Training 3 Über mich Michael Simons Senior Consultant
MehrKlassenvariablen, Klassenmethoden
Einstieg in die Informatik mit Java, Vorlesung vom 11.12.07 Übersicht 1 Klassenmethoden 2 Besonderheiten von Klassenmethoden 3 Aufruf einer Klassenmethode 4 Hauptprogrammparameter 5 Rekursion Klassenmethoden
MehrMultimedia im Netz Wintersemester 2012/13
Multimedia im Netz Wintersemester 2012/13 Übung 10 Ludwig-Maximilians-Universität München Multimedia im Netz WS 2012/13 - Übung 10-1 Lösung zu Übungsblatt 08 Ludwig-Maximilians-Universität München Multimedia
Mehr