SOLID Grafik in der Softwarearchitektur Slide
This commit is contained in:
@@ -95,26 +95,63 @@ sequenceDiagram
|
|||||||
```
|
```
|
||||||
|
|
||||||
|
|
||||||
## Softwarearchitektur
|
## Von Commit zu Paket
|
||||||
|
|
||||||
|
|
||||||
|
\begin{tikzpicture}[
|
||||||
|
node distance=1cm,
|
||||||
|
stepnode/.style={circle, minimum size=1.2cm, draw, line width=1.5pt, fill=white, inner sep=0pt},
|
||||||
|
labelnode/.style={align=center, font=\small\bfseries},
|
||||||
|
textnode/.style={align=center, font=\scriptsize, color=gray},
|
||||||
|
track/.style={line width=2pt, gray!20}
|
||||||
|
]
|
||||||
|
% Central Track
|
||||||
|
\draw[track] (-1,0) -- (12,0);
|
||||||
|
|
||||||
|
\node[stepnode, draw=gray] (n1) at (0,0) {\color{gray}\small\faCodeBranch};
|
||||||
|
\node[stepnode, draw=green!60!black, right=of n1] (n2) {\color{green!60!black}\small\faCheckCircle};
|
||||||
|
\node[stepnode, draw=blue!60!black, right=of n2] (n3) {\color{blue!60!black}\small\faCogs};
|
||||||
|
\node[stepnode, draw=orange, right=of n3] (n4) {\color{orange}\small\faBoxOpen};
|
||||||
|
\node[stepnode, draw=orange!70!black, right=of n4] (n5) {\color{orange!70!black}\small\faDatabase};
|
||||||
|
|
||||||
|
% Labels Above
|
||||||
|
\node[labelnode, below=0.2cm of n1, color=gray] {Commit};
|
||||||
|
\node[labelnode, below=0.2cm of n2, color=green!60!black] {Tag};
|
||||||
|
\node[labelnode, below=0.2cm of n3, color=blue!60!black] {CI/CD};
|
||||||
|
\node[labelnode, below=0.2cm of n4, color=orange] {.deb Paket};
|
||||||
|
\node[labelnode, below=0.2cm of n5, color=orange!70!black] {Registry};
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\vspace{1em}
|
||||||
|
|
||||||
|
**Ablauf:**
|
||||||
|
|
||||||
|
1. laufende Entwicklung
|
||||||
|
2. Commit zu einem Release zusammenfassen (Tag)
|
||||||
|
3. CI/CD Pipeline beginnt zu laufen
|
||||||
|
4. .deb Paket wird gebaut
|
||||||
|
5. .deb Paket wird in der Registry abgelegt
|
||||||
|
|
||||||
|
## Softwarearchitektur (.NET / Oqtane)
|
||||||
|
|
||||||
|
**Design Patterns:**
|
||||||
|
|
||||||
|
\begin{tikzpicture}[
|
||||||
|
node distance=0.15cm,
|
||||||
|
stepnode/.style={rectangle, draw, line width=1.5pt, minimum width=1.5cm, minimum height=1.5cm, fill=white, inner sep=0pt},
|
||||||
|
]
|
||||||
|
\node[stepnode, draw=gray!60!black] (n1) at (0,0) {\LARGE\color{gray!60!black}S};
|
||||||
|
\node[stepnode, draw=green!60!black, right=of n1] (n2) {\LARGE\color{green!60!black}O};
|
||||||
|
\node[stepnode, draw=blue!60!black, right=of n2] (n3) {\LARGE\color{blue!60!black}L};
|
||||||
|
\node[stepnode, draw=orange, right=of n3] (n4) {\LARGE\color{orange}I};
|
||||||
|
\node[stepnode, draw=orange!70!black, right=of n4] (n5) {\LARGE\color{orange!70!black}D};
|
||||||
|
\end{tikzpicture}
|
||||||
|
|
||||||
|
\vspace{1em}
|
||||||
|
|
||||||
- Open-Closed Principle
|
- Open-Closed Principle
|
||||||
- Strategy Pattern
|
- Dependency Injection (IServiceProvider)
|
||||||
- Dependency Injection
|
- Repository-Pattern (EntityFramework)
|
||||||
|
|
||||||
## Technischer Vergleich
|
|
||||||
|
|
||||||
Bisherige Erfahrungen:
|
|
||||||
|
|
||||||
- Go
|
|
||||||
- Typescript
|
|
||||||
- GRPC (interprozess Kommunikation)
|
|
||||||
|
|
||||||
Untersuchungsgebiete:
|
|
||||||
|
|
||||||
- Typisierung
|
|
||||||
- Konsistenz
|
|
||||||
|
|
||||||
## Teamleitung
|
|
||||||
|
|
||||||
::: columns
|
::: columns
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user