KunterBuntesSeminar-WS09/Erste Schritte mit LaTeX/Quellcode Beispiel Seminararbeit
Zur Navigation springen
Zur Suche springen
\documentclass[a4paper,pointednumbers,abstracton]{scrartcl}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{lmodern}
\usepackage{graphicx}
\usepackage{listings}
\usepackage{blindtext}
\usepackage{color}
\definecolor{DarkPurple}{rgb}{0.4,0.1,0.4}
\definecolor{DarkCyan}{rgb}{0.0,0.5,0.4}
\definecolor{LightLime}{rgb}{0.4,0.6,0.5}
\definecolor{Blue}{rgb}{0.0,0.0,1.0}
\usepackage{beramono}
% für Java-Bezeichner und -Keywords im Fließtext
\newcommand{\code}[1]{\small\lstinline[style=InlineJava]!#1!\normalsize}
%\newcommand{\code}[1]{\scriptsize\texttt{#1}\normalsize}
% für Listings mit Eintrag im Inhaltsverzeichnis
\newcommand{\newlisting}[2]{
\subsubsection*{Listing \ref{lst:#1}: #2}
\addcontentsline{toc}{subsubsection}{\ref{lst:#1}. #2}}
\lstdefinestyle{Java}
{
language=Java,
numbers=left,
firstnumber=1,
stepnumber=5,
numberfirstline,
numberstyle=\tiny\sffamily,
tabsize=5,
captionpos=b,
aboveskip=1em,
belowskip=1em,
columns=flexible,
xleftmargin=2em,
xrightmargin=1em,
frame=single,
frameround=tttt,
commentstyle=\itshape\color{LightLime},
keywordstyle=\bfseries\color{DarkPurple},
basicstyle=\footnotesize\ttfamily,
stringstyle=\color{Blue},
showstringspaces=false,
}
\lstdefinestyle{InlineJava}
{
language=Java,
columns=flexible,
basicstyle=\bfseries\footnotesize\ttfamily\color{DarkCyan},
showstringspaces=false,
}
\title{Titel der Arbeit}
\author{Vorname1 Nachname1, Vorname2 Nachname2}
\date{X. Monat 20ab}
\begin{document}
\sffamily
\maketitle
\thispagestyle{empty}
\vfill
\begin{center}
Seminararbeit im Seminar
\Large
\vspace{0.5cm}
\textbf{"`Titel des Seminars"'}
\normalsize
\vspace{0.3cm}
im \{Winter/Sommer\}semester 20ab
\vspace{0.5cm}
Dozenten: Dozent 1, Dozent 2
\end{center}
\vfill
\scriptsize
\parbox{0.5\linewidth}{
\parskip 0.3em
Seminar 64-NMR im \{Winter/Sommer\}semester 20ab
Arbeitsbereich Xylophonzugänge (XyZ)
Department Informatik
Universität Hamburg
}
\hfill
\parbox{4.2cm}{
\includegraphics[height=2.0cm]{Bilder/logo-fbi}
\hfill
\includegraphics[height=2.0cm]{Bilder/logo-uhh}
}
\addtolength{\voffset}{2cm}
% Ende des Deckblatts, Anfang des Inhaltsverzeichnisses
\newpage
\addtolength{\voffset}{-2cm}
\normalsize
\rmfamily
\setcounter{tocdepth}{3}
\tableofcontents
% Anfang des Fließtextes
\newpage
\def\abstractname{Kurzfassung}
\begin{abstract}
Dieses Paper befasst sich mit Dingen. \blindtext{1}
\end{abstract}
\section{Einführung}
Das sind alles Dinge (vgl. \cite{Gamma1995}). Es gibt noch mehr Dinge (vgl.
\cite{Freeman2004}).
\blindtext
\section{Dinge}
\blindtext
Das erkennt man in Listing \ref{lst:helloworld}.
\section{Mehr Dinge}
\blindtext
\section{Zusammenfassung}
\blindtext
% Ende des Fließtextes
% Es folgt der Anhang
\newpage
% Beginn des Anhangs
\appendix
\addcontentsline{toc}{section}{Anhang}
\section*{Quelltext-Listings}
\addcontentsline{toc}{subsection}{Quelltext-Listings}
\newlisting{helloworld}{Hello World}
\lstinputlisting[name=HelloWorld,label=lst:helloworld,
caption={Hello World in Java},
title={\sffamily HelloWorld.java},
style=Java,inputencoding={latin1}]
{Listings/HelloWorld.java}
% Ende des Anhangs und des Inhaltstextes
% Es folgt noch das Literaturverzeichnis
\newpage
\addcontentsline{toc}{section}{Literatur}
\bibliographystyle{alphadin}
\bibliography{literatur}
\end{document}
literatur.bib:
@BOOK{Freeman2004,
title = {Head First Design Patterns},
publisher = {O'Reilly Media},
year = {2004},
author = {Freeman, Elisabeth and Freeman, Eric and Bates, Bert and Sierra,
Kathy},
address = {Sebastopol},
howpublished = {Paperback}
}
@BOOK{Gamma1995,
title = {Design Patterns: Elements of Reusable Object-Oriented Software},
publisher = {Addison-Wesley},
year = {1995},
author = {Gamma, Erich and Helm, Richard and Johnson, Ralph and Vlissides,
John},
address = {Boston}
}
@BOOK{Gosling2005,
title = {Java Language Specification},
publisher = {Addison-Wesley},
year = {2005},
author = {Gosling, James and Joy, Bill and Steele, Guy and Bracha, Gilad},
address = {Boston},
edition = {Third Edition}
}
Listings/HelloWorld.java (als Latin1 abspeichern, Listings kann kein UTF-8!)
/**
* Wie der Volksmund weiß, ist in Java alles eine
* Klasse. Daher müssen wir zunächst eine Klasse
* definieren. Das geschieht durch das Schlüsselwort:
* "class" gefolgt vom Namen der Klasse. Die Definition,
* also die eigentliche Programmierung der Klasse, folgt
* innerhalb geschweifter Klammern.
*/
class HelloWorld {
/**
* Die "main"-Methode (Funktion) ist der Einstiegspunkt
* des Programms. Sie wird von der Laufzeitumgebung
* automatisch aufgerufen, wenn das Programm gestartet
* wird. Die Definition (Programmierung) der Methode erfolgt
* anschließend innerhalb der geschweiften Klammern.
*
* @param args Die Methode bekommt ein Zeichenkettenarray
* als Parameter übergeben dass die Kommandozeilenparameter
* enthält (wird hier nicht verwendet).
*/
public static void main(String[] args) {
// Definiere eine Zeichenkette.
String message = "Hello World!";
// Gebe die Zeichenkette an der Konsole aus.
System.out.println(message);
}
}