\documentclass{schulein}
\usepackage[utf8]{inputenc}
\usepackage{schulinf}

% Dieses Dokument ist in der Zusammenarbeit von Informatikreferendaren und
% ehemaligen Informatikreferendaren der Studienseminare (heute ZfsL) Arnsberg,
% Hamm und Solingen entstanden.
%
% Das Dokument steht unter der Lizenz: Creative Commons by-nc-sa Version 4.0
% http://creativecommons.org/licenses/by-nc-sa/4.0/deed.de
%
% Nach dieser Lizenz darf das Dokument beliebig kopiert und bearbeitet werden,
% sofern das Folgeprodukt wiederum unter gleichen Lizenzbedingungen vertrieben
% und auf die ursprünglichen Urheber verwiesen wird.
% Eine kommerzielle Nutzung ist ausdrücklich ausgeschlossen.
%
% Die Namensnennung durch einen Verweis und die Lizenzangabe der ursprünglichen
% Urheber auf den Materialien für Schülerinnen und Schüler ist erforderlich.
%
% Die Sammlung der Dokumente steht unter
% http://ddi.uni-wuppertal.de/material/materialsammlung/
% zur Verfügung.
%
% Das LaTeX-Paket zum Setzen der Dokumente der Sammlung steht
% unter  http://www.ctan.org/pkg/schule
% zur Verfügung.

\usepackage[pdfauthor={Referendare der Informatikfachseminare Arnsberg, Hamm und Solingen}]{hyperref}
\includexmp{lizenz}
\cclizenz{byncsaeu}
\footerQRLink{materialsammlung_qr_url.pdf}

\svnid{$Id: info_06_import.tex 1466 2016-03-24 23:20:17Z pieper $}

\dokName{Import von Klassen}
\jahrgang{EF}

%%%Speziell
\newcommand{\methodenBesch}[4]{Methode \textbf{\texttt{#1}}\\[1ex]
	\begin{tabular}{p{2.5cm}p{10cm}}
		Parameter:    & {#2}\\
		Rückgabewert: & {#3}\\
		Beschreibung: & {#4}
	\end{tabular}}

\def\bodydir{./}

\begin{document}

\section*{Import von Klassen aus einer Datei}

Um Klassen zu nutzen, die in einer anderen Datei implementiert wurden, gibt es 
in Python den Befehl: \texttt{import}. In unserem Fall bekommen Sie die Datei 
\texttt{turniertabelle\_ds.py} zur Verfügung gestellt, in der verschiedene 
Klassen implementiert wurden, die zur Berechnung, Sortierung und Ausgabe einer 
Tabelle benötigt werden. Für die Nutzung in Ihrem Programm müssen Sie aus der Datei nur die 
Klasse \texttt{SpielTabelle} importieren. 
Sie bildet die Schnittstelle Ihrer Implementierung und der von uns vorbereiteten 
Tabellenkalkulation. Die erste Zeile Ihres Programms sollte also wie 
folgt aussehen:  

\texttt{from turniertabelle\_ds import SpielTabelle}\\

Der Name nach dem \texttt{from} ist der Dateiname (ohne \texttt{.py}) -- in der
Datei ist die jeweilige Klasse definiert. Hinter dem \texttt{import} steht der 
Klassenbezeichner für die Klasse, die aus der angegebenen Datei importiert 
werden soll. Durch diese Anweisung zu Beginn Ihres Programms können Sie ein 
Objekt der Klasse \texttt{SpielTabelle} erzeugen und ihre Methoden nutzen. 

\section*{Methoden der Klasse SpielTabelle}
Objekte der Klasse \texttt{SpielTabelle} haben die folgenden Methoden:

\begin{itemize}
 \item \methodenBesch{\_\_init\_\_(mannschaft1, mannschaft2, 
  mannschaft3, \ldots)}
	{\texttt{mannschaft1, mannschaft2, mannschaft3, \ldots} -- die teilnehmenden 
	  Mannschaften als Objekte}
	{keiner}
	{Konstruktor}
 \item \methodenBesch{ergebnisEintragen(spiel)}
	{\texttt{spiel} -- Das Objekt der Spielbegegnung, dessen Ergebnis in der 
	  Tabelle berücksichtigt werden soll}
	{keiner}
	{Die Methode ändert -- je nach Spielausgang -- die Anzahl der Siege und die 
	 Punktdifferenz der beiden beteiligten Mannschaften und speichert sie intern 
	 in einer Tabelle.}
 \item \methodenBesch{ausgabe()}
	{keine}
	{keiner}
	{Die Methode gibt über mehrere \texttt{print}-Befehle die komplette 
	 Tabelle aus.}
 \item \methodenBesch{gibTabellenFuehrer()}
	{keine}
	{Objekt der Mannschaft, die Tabellenführer ist}
	{Die Methode überprüft, wer aktuell Tabellenführer ist und gibt diese 
	 Mannschaft als Objekt zurück.}
\end{itemize}


\end{document}
