\documentclass[compress]{beamer}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{listings}
\usepackage{fontspec}
\usepackage{graphicx}

\usetheme{Nik}

\setmainfont{Yanone Kaffeesatz}
\setsansfont{Andika New Basic}
\setmonofont{Fira Code}

% listing
\lstset{
	language=Java,                			% choose the language of the code
	numbers=left,                   		% where to put the line-numbers
	%stepnumber=1,                   		% the step between two line-numbers.        
	%numbersep=5pt,                  		% how far the line-numbers are from the code
	numberstyle=\tiny\color{DraculaGreen}\ttfamily,
	backgroundcolor=\color{DraculaBackground},  		% choose the background color. You must add \usepackage{color}
	showspaces=false,               		% show spaces adding particular underscores
	showstringspaces=false,         		% underline spaces within strings
	showtabs=false,                 		% show tabs within strings adding particular underscores
	tabsize=4,                      		% sets default tabsize to 4 spaces
	captionpos=b,                   		% sets the caption-position to bottom
	breaklines=true,                		% sets automatic line breaking
	breakatwhitespace=true,         		% sets if automatic breaks should only happen at whitespace
	title=\lstname,                 		% show the filename of files included with \lstinputlisting;
	basicstyle=\color{DraculaForeground}\ttfamily,					% sets font style for the code
	keywordstyle=\color{DraculaPink}\ttfamily,	% sets color for keywords
	stringstyle=\color{DraculaYellow}\ttfamily,		% sets color for strings
	commentstyle=\color{DraculaComment}\ttfamily,	% sets color for comments
	emph={format_string, eff_ana_bf, permute, eff_ana_btr},
	emphstyle=\color{DraculaCyan}\ttfamily
}

% table of contents
\AtBeginSection[]
{
	\begin{frame}[c,noframenumbering,plain]
		\tableofcontents[sectionstyle=show/hide,subsectionstyle=show/show/hide]
	\end{frame}
}

\AtBeginSubsection[]
{
	\begin{frame}[c,noframenumbering,plain]
		\tableofcontents[sectionstyle=show/hide,subsectionstyle=show/shaded/hide,subsubsectionstyle=show/show/hide]
	\end{frame}
}

\author{Niklas Birk}
\title{Niks Theme}
\subtitle{Dracula Style}
\institute{TUBAF / RWU}

\begin{document}
		
	\begin{frame}[plain]
		\maketitle
	\end{frame}
	
	\section{Niks Theme}
	
	\subsection{Normales}
	\subsubsection{Aufzählungen und Texte}
	\begin{frame}
		\frametitle{Normales}
		\framesubtitle{Aufzählungen und Texte}
		
		\begin{itemize}
			\item Information und Mathematik $\rightarrow$ Computer?
			\item Information und Automatik $\rightarrow$ Computer?
		\end{itemize}
	\end{frame}
	\subsubsection{Zitat}
	\begin{frame}
		\frametitle{Normales}
		\framesubtitle{Zitat}
		
		\begin{quote}
			\centering
			„In der Informatik geht es genau so wenig um Computer, wie in der Astronomie um Teleskope.“\\
			- Edsger Dijsktra
		\end{quote}
	\end{frame}

	\subsection{Blöcke und Listings}
	\subsubsection{Normal, Beispiel und Achtung}
	\begin{frame}
		\frametitle{Blöcke}
		\framesubtitle{Normal, Beispiel und Achtung}
		
		\begin{block}{Aussage}
			Eine \emph{Aussage} ist ein sprachliches Gebilde, 
			dem eindeutig ein Wahrheitswert (\emph{wahr} oder \emph{falsch}) zugeordnet werden kann.
		\end{block}
		
		\begin{exampleblock}{Beispiel}
			Eine \emph{Aussage} ist ein sprachliches Gebilde, 
			dem eindeutig ein Wahrheitswert (\emph{wahr} oder \emph{falsch}) zugeordnet werden kann.
		\end{exampleblock}
		
		\begin{alertblock}{Achtung!}
			Eine \emph{Aussage} ist ein sprachliches Gebilde, 
			dem eindeutig ein Wahrheitswert (\emph{wahr} oder \emph{falsch}) zugeordnet werden kann.
		\end{alertblock}
	\end{frame}
	\subsubsection{Listings}
	\begin{frame}[fragile]
		\frametitle{Blöcke und Listings}
		\framesubtitle{Listings}
		
\begin{lstlisting}
int i = 10;
do { 
    i = i - 3;
} while (i > 5);
\end{lstlisting}
	
		\begin{exampleblock}{Beispiel}
\begin{lstlisting}
for (int i=1; i <= 10; i++) {
    System.out.println("Ausgabe:" + i);
} 
\end{lstlisting}
		\end{exampleblock}
	\end{frame}
\end{document}