\documentclass[12pt, a4paper] {ncc}
\usepackage[utf8] {inputenc}
\usepackage[T2A]{fontenc}
\usepackage[english, russian] {babel}
\usepackage[usenames,dvipsnames]{xcolor}
\usepackage{listings,a4wide,longtable,amsmath,amsfonts,graphicx,tikz,tabularx}

\lstset{
	basicstyle=\footnotesize,
	breakatwhitespace=false,
	breaklines=true,
	extendedchars=true,
	frame=single,
	keepspaces=true,
	keywordstyle=\bfseries,
	language=Java,
	numbers=left,
	numbersep=5pt,
	numberstyle=\tiny,
	showspaces=false,
	showstringspaces=false,
	showtabs=false,
	stepnumber=1,
	stringstyle=\emph,
	tabsize=8
}

\begin{document}
\pagestyle{empty}

% ============================ ТИТУЛЬНЫЙ ЛИСТ ================================
\begin{center}
			Университет ИТМО.
\end{center}
\vspace{\stretch{2}}
\begin{center}
			  {Лабораторная работа №1.}
\end{center}
\vspace{\stretch{3}}
\begin{flushright}
				Работу выполнил студент группы 2125\\
				\emph{Халанский Дмитрий Владимирович}
\end{flushright}
\vspace{\stretch{4}}
\begin{center}
				2014
\end{center}
\newpage
% ======================== КОНЕЦ ТИТУЛЬНОГО ЛИСТА ============================

% ================================ ОТЧЁТ =====================================
\section{Листинг программы}
\lstinputlisting{helloworld.java}

\section{Основные утилиты \emph{JDK}}
\begin{description}
	\item[java] Загрузчик Java-приложений, интерпретатор
		\texttt{class}-файлов, генерируемых утилитой \textsl{javac}.
		Имеет два режима работы: {\tt java -jar file.jar} и {\tt java
		class}. При использовании первой формы происходит запуск
		приложения, запакованного в jar-архив, второй~--- отдельного
		класса.

		Основные флаги:
		\begin{description}
			\item[-classpath] Задать путь для поиска объявленных
				классов (стандартное значение~--- текущая
				директория).
			\item[-jar] Исполнить программу, представленную
				\texttt{jar}-файлом.
			\item[-verbose] По ходу исполнения предоставлять
				информацию о загружаемых классах.
		\end{description}

	\item[javac] Компилятор Java-классов в байткод. Для компиляции
		нужно передать ему список файлов или как набор аргументов,
		или как название файла, содержащее этот список, предварённое
		символом \texttt{@}.

		Основные флаги:
		\begin{description}
			\item[-classpath] Задать путь для поиска объявленных
				классов (стандартное значение~--- текущая
				директория).
			\item[-d] Путь к директории, в которой следует
				разместить скомпилированные файлы.
			\item[-g] Помещать расширенную информацию для дебага
				в скомпилированные файлы.
		\end{description}

	\item[javadoc] Генератор HTML-документации из исходного кода Java.
		Данная утилита производит разбор комментариев к программе и
		составляет из них описание результирующего программного
		комплекса.

	\item[jar] Упаковщик Java-приложений к jar-архивы. Java-приложение
		состоит из ряда классов, манифеста, а также, возможно,
		некоторых ресурсов. Манифест~--- особый файл, где описывается
		общее поведение программы, ресурсы~--- некоторые сторонние
		файлы, которые не являются байткодом Java, но используются при
		выполнении программы. Примером ресурсов могут являться
		графические элементы, нарисованные для приложения.
\end{description}

\section{Выводы}
В результате проделанной работы я ознакомился со средствами работы с JDK в
командной строке Unix, а также с основными принципами работы \textit{class
loader}~--- загрузчика байткода классов во время исполнения.
\end{document}
