almost full book

This commit is contained in:
Ivan I. Ovchinnikov 2023-01-19 19:10:17 +03:00
parent 88a759b9ca
commit 6f0bcb21c6
11 changed files with 74 additions and 83 deletions

Binary file not shown.

BIN
build/jtc3-03-workshop.pdf Normal file

Binary file not shown.

View File

@ -35,11 +35,12 @@
\chapter{Java Development Kit} \chapter{Java Development Kit}
%\subfile{jtd6-11a} %\subfile{jtd6-11a}
\newpage
\appendix \appendix
\setcounter{secnumdepth}{5}
\printnomenclature[40mm] \printnomenclature[40mm]
\chapter{Семинары} \chapter*{Семинары}
\addcontentsline{toc}{chapter}{Семинары}
\renewcommand{\thesection}{\Asbuk{section}} \renewcommand{\thesection}{\Asbuk{section}}
\subfile{jtc1-01-workshop} \subfile{jtc1-01-workshop}
\newpage \newpage

View File

@ -2,7 +2,7 @@
\begin{document} \begin{document}
\pagestyle{plain} \pagestyle{plain}
\tableofcontents %\tableofcontents
\section{Платформа: история и окружение} \section{Платформа: история и окружение}
\subsection{В этом разделе} \subsection{В этом разделе}
Краткая история (причины возникновения); инструментарий, выбор версии; CLI; структура проекта; документирование; некоторые интересные способы сборки проектов. Краткая история (причины возникновения); инструментарий, выбор версии; CLI; структура проекта; документирование; некоторые интересные способы сборки проектов.
@ -466,6 +466,7 @@ Docker-образ и, как следствие, Docker-контейнеры в
\item *Создать два Docker-образа. Один должен компилировать Java-проект обратно в папку на компьютере подьзователя, а второй забирать скомпилированные классы и исполнять их. \item *Создать два Docker-образа. Один должен компилировать Java-проект обратно в папку на компьютере подьзователя, а второй забирать скомпилированные классы и исполнять их.
\end{itemize} \end{itemize}
\printnomenclature[40mm] % \newpage
% \printnomenclature[40mm]
\end{document} \end{document}

View File

@ -1,10 +1,9 @@
\documentclass[j-spec.tex]{subfiles} \documentclass[j-spec.tex]{subfiles}
\begin{document} \begin{document}
%\setcounter{tocdepth}{3}
\setcounter{section}{1} \setcounter{section}{1}
\pagestyle{plain} \pagestyle{plain}
\tableofcontents %\tableofcontents
\section{Специализация: данные и функции} \section{Специализация: данные и функции}
\subsection{В предыдущем разделе} \subsection{В предыдущем разделе}
\begin{itemize} \begin{itemize}
@ -689,7 +688,7 @@ Constare - (лат. стоять твёрдо). Константность эт
\item Написать метод, которому можно передать в качестве аргумента массив, состоящий строго из единиц и нулей (целые числа типа \code{int}). Метод должен заменить единицы в массиве на нули, а нули на единицы и не содержать ветвлений. Написать как можно больше вариантов метода. \item Написать метод, которому можно передать в качестве аргумента массив, состоящий строго из единиц и нулей (целые числа типа \code{int}). Метод должен заменить единицы в массиве на нули, а нули на единицы и не содержать ветвлений. Написать как можно больше вариантов метода.
\end{enumerate} \end{enumerate}
\newpage % \newpage
\printnomenclature[40mm] % \printnomenclature[40mm]
\end{document} \end{document}

View File

@ -5,7 +5,7 @@
\setlength{\columnsep}{22pt} \setlength{\columnsep}{22pt}
\pagestyle{plain} \pagestyle{plain}
\sloppy \sloppy
\tableofcontents %\tableofcontents
\section{Специализация: ООП} \section{Специализация: ООП}
\subsection{В предыдущем разделе} \subsection{В предыдущем разделе}
Будет рассмотрен базовый функционал языка, то есть основная встроенная функциональность, такая как математические операторы, условия, циклы, бинарные операторы. Далее способы хранения и представления данных в Java, и в конце способы манипуляции данными, то есть функции (в терминах языка называющиеся методами). Будет рассмотрен базовый функционал языка, то есть основная встроенная функциональность, такая как математические операторы, условия, циклы, бинарные операторы. Далее способы хранения и представления данных в Java, и в конце способы манипуляции данными, то есть функции (в терминах языка называющиеся методами).
@ -1187,7 +1187,7 @@ public class Cat extends Animal {
\item * Добавить механизм, создающий 25\% разброс значений каждого ограничения для каждого объекта. \item * Добавить механизм, создающий 25\% разброс значений каждого ограничения для каждого объекта.
\end{enumerate} \end{enumerate}
\newpage % \newpage
\printnomenclature[40mm] % \printnomenclature[40mm]
\end{document} \end{document}

View File

@ -56,7 +56,7 @@
\end{spreadtab} \end{spreadtab}
\subsection{Подробности} \subsection{Подробности}
\subsubsection{Организационный момент} \subsubsection*{Организационный момент}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Позитивно начать урок, создать комфортную среду для обучения. \item \textbf{Цель этапа:} Позитивно начать урок, создать комфортную среду для обучения.
\item \textbf{Тайминг:} 3-5 минут. \item \textbf{Тайминг:} 3-5 минут.
@ -68,7 +68,7 @@
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Quiz} \subsubsection*{Quiz}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Вовлечение аудитории в обратную связь. \item \textbf{Цель этапа:} Вовлечение аудитории в обратную связь.
\item \textbf{Тайминг:} 5-7 минут (4 вопроса, по минуте на ответ). \item \textbf{Тайминг:} 5-7 минут (4 вопроса, по минуте на ответ).
@ -118,7 +118,7 @@
\end{enumerate} \end{enumerate}
\end{itemize} \end{itemize}
\subsubsection{Рассмотрение ДЗ} \subsubsection*{Рассмотрение ДЗ}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Пояснить не очевидные моменты в формулировке ДЗ с лекции, синхронизировать прочитанный на лекции материал к началу семинара. \item \textbf{Цель этапа:} Пояснить не очевидные моменты в формулировке ДЗ с лекции, синхронизировать прочитанный на лекции материал к началу семинара.
\item \textbf{Тайминг:} 15-20 минут. \item \textbf{Тайминг:} 15-20 минут.
@ -131,11 +131,11 @@
\begin{itemize} \begin{itemize}
\item Написать класс кота так, чтобы каждому объекту кота присваивался личный порядковый целочисленный номер; \item Написать класс кота так, чтобы каждому объекту кота присваивался личный порядковый целочисленный номер;
\textbf{Вариант решения в приложении \ref{appendix:hw1}} \textbf{Вариант решения в приложении \ref{appendix:sem3-hw1}}
\item Написать классы кота и собаки, наследники животного. У всех есть три действия: бежать, плыть, прыгать. Действия принимают размер препятствия и возвращают булев результат. Три ограничения: высота прыжка, расстояние, которое животное может пробежать, расстояние, которое животное может проплыть. Следует учесть, что коты не любят воду. \item Написать классы кота и собаки, наследники животного. У всех есть три действия: бежать, плыть, прыгать. Действия принимают размер препятствия и возвращают булев результат. Три ограничения: высота прыжка, расстояние, которое животное может пробежать, расстояние, которое животное может проплыть. Следует учесть, что коты не любят воду.
\textbf{Вариант решения в приложении \ref{appendix:hw2}} \textbf{Вариант решения в приложении \ref{appendix:sem3-hw2}}
\item Добавить механизм, создающий 25\% разброс значений каждого ограничения для каждого объекта. \item Добавить механизм, создающий 25\% разброс значений каждого ограничения для каждого объекта.
@ -157,7 +157,7 @@
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Вопросы и ответы} \subsubsection*{Вопросы и ответы}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Вовлечение аудитории в обратную связь, пояснение неочевидных моментов в материале лекции и другой проделанной работе. \item \textbf{Ценность этапа} Вовлечение аудитории в обратную связь, пояснение неочевидных моментов в материале лекции и другой проделанной работе.
\item \textbf{Тайминг} 5-15 минут \item \textbf{Тайминг} 5-15 минут
@ -171,7 +171,7 @@
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 1} \subsubsection*{Задание 1}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Создание класса и объекта. \item \textbf{Ценность этапа} Создание класса и объекта.
\item \textbf{Тайминг} 5 минут. \item \textbf{Тайминг} 5 минут.
@ -184,7 +184,7 @@
\begin{itemize} \begin{itemize}
\item Создать класс "Сотрудник" с полями: ФИО, должность, телефон, зарплата, возраст; \item Создать класс "Сотрудник" с полями: ФИО, должность, телефон, зарплата, возраст;
\textbf{Вариант исполнения класса в приложении \ref{appendix:ct1}} \textbf{Вариант исполнения класса в приложении \ref{appendix:sem3-ct1}}
\begin{lstlisting}[language=Java,style=JCodeStyle,caption={Создание объекта класса}] \begin{lstlisting}[language=Java,style=JCodeStyle,caption={Создание объекта класса}]
Employee employeeIvan = new Employee("Ivan", "Igorevich", Employee employeeIvan = new Employee("Ivan", "Igorevich",
@ -194,7 +194,7 @@ Employee employeeIvan = new Employee("Ivan", "Igorevich",
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 2} \subsubsection*{Задание 2}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Манипуляция информацией об объекте. \item \textbf{Ценность этапа} Манипуляция информацией об объекте.
\item \textbf{Тайминг} 10 минут. \item \textbf{Тайминг} 10 минут.
@ -259,7 +259,7 @@ Employee employeeIvan = new Employee("Ivan", "Igorevich",
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 3} \subsubsection*{Задание 3}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Создание и манипуляция множествами объектов. \item \textbf{Ценность этапа} Создание и манипуляция множествами объектов.
\item \textbf{Тайминг} 20-25 минут. \item \textbf{Тайминг} 20-25 минут.
@ -335,7 +335,7 @@ Employee[] employees = {
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 4} \subsubsection*{Задание 4}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Манипуляция информацией об объекте. \item \textbf{Ценность этапа} Манипуляция информацией об объекте.
\item \textbf{Тайминг} 15-20 минут. \item \textbf{Тайминг} 15-20 минут.
@ -410,7 +410,7 @@ for (int i = 0; i < employees.length; i++) {
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 5} \subsubsection*{Задание 5}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Соблюдение атомарности методов, независимость методов, манипулирующих данными от окружения. \item \textbf{Ценность этапа} Соблюдение атомарности методов, независимость методов, манипулирующих данными от окружения.
\item \textbf{Тайминг} 10-15 минут. \item \textbf{Тайминг} 10-15 минут.
@ -445,7 +445,7 @@ private static float averageAge(Employee[] emp){
\end{lstlisting} \end{lstlisting}
\end{itemize} \end{itemize}
\subsubsection{Домашнее задание} \subsubsection*{Домашнее задание}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями. \item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями.
\item \textbf{Тайминг} 5-10 минут. \item \textbf{Тайминг} 5-10 минут.
@ -512,7 +512,7 @@ for (int i = 0; i < employees.length; i++) {
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Рефлексия и завершение семинара} \subsubsection*{Рефлексия и завершение семинара}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Привести урок к логическому завершению, посмотреть что студентам удалось, что было сложно и над чем нужно еще поработать \item \textbf{Цель этапа:} Привести урок к логическому завершению, посмотреть что студентам удалось, что было сложно и над чем нужно еще поработать
\item \textbf{Тайминг:} 5-10 минут \item \textbf{Тайминг:} 5-10 минут
@ -529,21 +529,22 @@ for (int i = 0; i < employees.length; i++) {
\newpage \newpage
\appendix \appendix
\section*{Приложения} \subsection*{Приложения}
\addcontentsline{toc}{section}{Приложения} \addcontentsline{toc}{subsection}{Приложения}
\renewcommand{\thesubsection}{\Asbuk{subsection}} \setcounter{subsubsection}{0}
\renewcommand{\thesubsubsection}{\Asbuk{subsubsection}}
\subsection{Домашнее задание 1} \subsubsection{Домашнее задание 1}
\label{appendix:hw1} \label{appendix:sem3-hw1}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Кот}]{src/s03-hw1-cat.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Кот}]{src/s03-hw1-cat.java}
\subsection{Домашнее задание 2} \subsubsection{Домашнее задание 2}
\label{appendix:hw2} \label{appendix:sem3-hw2}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Общий класс животного}]{src/s03-hw2-animal.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Общий класс животного}]{src/s03-hw2-animal.java}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Кот}]{src/s03-hw2-cat.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Кот}]{src/s03-hw2-cat.java}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Собака}]{src/s03-hw2-dog.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Собака}]{src/s03-hw2-dog.java}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Марафон}]{src/s03-hw2-marathon.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Марафон}]{src/s03-hw2-marathon.java}
\subsection{Практическое задание 1} \subsubsection{Практическое задание 1}
\label{appendix:ct1} \label{appendix:sem3-ct1}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Сотрудник}]{src/s03-ct1-employee.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Сотрудник}]{src/s03-ct1-employee.java}
\end{document} \end{document}

View File

@ -5,7 +5,7 @@
\setlength{\columnsep}{22pt} \setlength{\columnsep}{22pt}
\pagestyle{plain} \pagestyle{plain}
\sloppy \sloppy
\tableofcontents %\tableofcontents
\section{Специализация: ООП и исключения} \section{Специализация: ООП и исключения}
\subsection{В предыдущем разделе} \subsection{В предыдущем разделе}
Была рассмотрена реализация объектно-ориентированного программирования в Java. Рассмотрели классы и объекты, а также наследование, полиморфизм и инкапсуляцию. Дополнительно был освещён вопрос устройства памяти. Была рассмотрена реализация объектно-ориентированного программирования в Java. Рассмотрели классы и объекты, а также наследование, полиморфизм и инкапсуляцию. Дополнительно был освещён вопрос устройства памяти.
@ -749,7 +749,7 @@ try (TestStream stream = new TestStream()) {
\item для проверки напишите программу, преобразующую квадратный массив целых чисел 5х5 в сумму чисел в этом массиве, при этом, программа должна выбросить исключение, если строк или столбцов в исходном массиве окажется не 5. \item для проверки напишите программу, преобразующую квадратный массив целых чисел 5х5 в сумму чисел в этом массиве, при этом, программа должна выбросить исключение, если строк или столбцов в исходном массиве окажется не 5.
\end{enumerate} \end{enumerate}
\newpage % \newpage
\printnomenclature[40mm] % \printnomenclature[40mm]
\end{document} \end{document}

View File

@ -51,7 +51,7 @@
\end{spreadtab} \end{spreadtab}
\subsection{Подробности} \subsection{Подробности}
\subsubsection{Организационный момент} \subsubsection*{Организационный момент}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Позитивно начать урок, создать комфортную среду для обучения. \item \textbf{Цель этапа:} Позитивно начать урок, создать комфортную среду для обучения.
\item \textbf{Тайминг:} 3-5 минут. \item \textbf{Тайминг:} 3-5 минут.
@ -63,7 +63,7 @@
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Quiz} \subsubsection*{Quiz}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Вовлечение аудитории в обратную связь. \item \textbf{Цель этапа:} Вовлечение аудитории в обратную связь.
\item \textbf{Тайминг:} 5-7 минут (4 вопроса, по минуте на ответ). \item \textbf{Тайминг:} 5-7 минут (4 вопроса, по минуте на ответ).
@ -101,7 +101,7 @@
\end{enumerate} \end{enumerate}
\end{itemize} \end{itemize}
\subsubsection{Рассмотрение ДЗ} \subsubsection*{Рассмотрение ДЗ}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Пояснить не очевидные моменты в формулировке ДЗ с лекции, синхронизировать прочитанный на лекции материал к началу семинара. \item \textbf{Цель этапа:} Пояснить не очевидные моменты в формулировке ДЗ с лекции, синхронизировать прочитанный на лекции материал к началу семинара.
\item \textbf{Тайминг:} 15-20 минут. \item \textbf{Тайминг:} 15-20 минут.
@ -143,12 +143,12 @@ private static final class RowMismatchException extends RuntimeException {
\item для проверки напишите программу, преобразующую квадратный массив целых чисел 5х5 в сумму чисел в этом массиве, при этом, программа должна выбросить исключение, если строк или столбцов в исходном массиве окажется не 5. \item для проверки напишите программу, преобразующую квадратный массив целых чисел 5х5 в сумму чисел в этом массиве, при этом, программа должна выбросить исключение, если строк или столбцов в исходном массиве окажется не 5.
\textbf{Вариант решения представлен в приложении \ref{appendix:hw3}} \textbf{Вариант решения представлен в приложении \ref{appendix:sem4-hw3}}
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Вопросы и ответы} \subsubsection*{Вопросы и ответы}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями. \item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями.
\item \textbf{Тайминг} 5-15 минут \item \textbf{Тайминг} 5-15 минут
@ -162,7 +162,7 @@ private static final class RowMismatchException extends RuntimeException {
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 1} \subsubsection*{Задание 1}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Написание почти полноценной механики по краткому ТЗ. \item \textbf{Ценность этапа} Написание почти полноценной механики по краткому ТЗ.
\item \textbf{Тайминг} 25-30 минут. \item \textbf{Тайминг} 25-30 минут.
@ -180,7 +180,7 @@ private static final class RowMismatchException extends RuntimeException {
\item В основном классе программы необходимо по-разному обработать исключения. \item В основном классе программы необходимо по-разному обработать исключения.
\item Метод возвращает \code{true}, если значения верны или \code{false} в противном случае. \item Метод возвращает \code{true}, если значения верны или \code{false} в противном случае.
\end{enumerate} \end{enumerate}
\textbf{Вариант исполнения класса в приложении \ref{appendix:ct1}} \textbf{Вариант исполнения класса в приложении \ref{appendix:sem4-ct1}}
\textbf{Вариант маршрута решения задачи} \textbf{Вариант маршрута решения задачи}
@ -256,7 +256,7 @@ public static boolean checkCredentials(String login, String password, String con
\end{itemize} \end{itemize}
\subsubsection{Задание 2} \subsubsection*{Задание 2}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Написание наброска пет-проекта, повторение информации об ООП, работа с исключениями. \item \textbf{Ценность этапа} Написание наброска пет-проекта, повторение информации об ООП, работа с исключениями.
\item \textbf{Тайминг} 35-40 минут. \item \textbf{Тайминг} 35-40 минут.
@ -280,7 +280,7 @@ public static boolean checkCredentials(String login, String password, String con
\end{itemize} \end{itemize}
\item Вывести в консоль итоговое количество совершённых покупок после выполнения основного кода приложения. \item Вывести в консоль итоговое количество совершённых покупок после выполнения основного кода приложения.
\end{enumerate} \end{enumerate}
\textbf{Вариант исполнения класса в приложении \ref{appendix:ct1}} \textbf{Вариант исполнения класса в приложении \ref{appendix:sem4-ct1}}
\textbf{Вариант маршрута решения задачи} \textbf{Вариант маршрута решения задачи}
@ -366,7 +366,7 @@ public static Order buy(Customer who, Item what, int howMuch) {
\end{lstlisting} \end{lstlisting}
\end{itemize} \end{itemize}
\subsubsection{Домашнее задание} \subsubsection*{Домашнее задание}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями. \item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями.
\item \textbf{Тайминг} 5-10 минут. \item \textbf{Тайминг} 5-10 минут.
@ -430,7 +430,7 @@ private static void celebrate(Employee[] emp) {
\end{enumerate} \end{enumerate}
\end{itemize} \end{itemize}
\subsubsection{Рефлексия и завершение семинара} \subsubsection*{Рефлексия и завершение семинара}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Привести урок к логическому завершению, посмотреть что студентам удалось, что было сложно и над чем нужно еще поработать \item \textbf{Цель этапа:} Привести урок к логическому завершению, посмотреть что студентам удалось, что было сложно и над чем нужно еще поработать
\item \textbf{Тайминг:} 5-10 минут \item \textbf{Тайминг:} 5-10 минут
@ -447,20 +447,21 @@ private static void celebrate(Employee[] emp) {
\newpage \newpage
\appendix \appendix
\section*{Приложения} \subsection*{Приложения}
\addcontentsline{toc}{section}{Приложения} \addcontentsline{toc}{subsection}{Приложения}
\renewcommand{\thesubsection}{\Asbuk{subsection}} \setcounter{subsubsection}{0}
\renewcommand{\thesubsubsection}{\Asbuk{subsubsection}}
\subsection{Домашнее задание 3} \subsubsection{Домашнее задание 3}
\label{appendix:hw3} \label{appendix:sem4-hw3}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Основная программа}]{src/s04-hw3-exceptional.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Основная программа}]{src/s04-hw3-exceptional.java}
\subsection{Практическое задание 1} \subsubsection{Практическое задание 1}
\label{appendix:ct1} \label{appendix:sem4-ct1}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Логин}]{src/s04-ct1-sign.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Логин}]{src/s04-ct1-sign.java}
\subsection{Практическое задание 2} \subsubsection{Практическое задание 2}
\label{appendix:ct2} \label{appendix:sem4-ct2}
\lstinputlisting[language=Java,style=JCodeStyle,caption={Магазин}]{src/s04-ct2-shop.java} \lstinputlisting[language=Java,style=JCodeStyle,caption={Магазин}]{src/s04-ct2-shop.java}
\end{document} \end{document}

View File

@ -5,7 +5,7 @@
\setlength{\columnsep}{22pt} \setlength{\columnsep}{22pt}
\pagestyle{plain} \pagestyle{plain}
\sloppy \sloppy
\tableofcontents %\tableofcontents
\section{Специализация: тонкости работы} \section{Специализация: тонкости работы}
\subsection{В предыдущем разделе} \subsection{В предыдущем разделе}
Рассмотрены понятия внутренних и вложенных классов; процессы создания, использования и расширения перечислений. Подробно рассмотрены исключения с точки зрения ООП, их философия и тесная связь с многопоточностью в Java, обработка, разделение понятия штатных и нештатных ситуаций. Рассмотрены понятия внутренних и вложенных классов; процессы создания, использования и расширения перечислений. Подробно рассмотрены исключения с точки зрения ООП, их философия и тесная связь с многопоточностью в Java, обработка, разделение понятия штатных и нештатных ситуаций.
@ -705,8 +705,8 @@ cat0 equal to cat3? false
\item Написать метод поиска слова внутри файла. \item Написать метод поиска слова внутри файла.
\end{enumerate} \end{enumerate}
\newpage % \newpage
\printnomenclature[40mm] % \printnomenclature[40mm]
\end{document} \end{document}

View File

@ -50,7 +50,7 @@
\end{spreadtab} \end{spreadtab}
\subsection{Подробности} \subsection{Подробности}
\subsubsection{Организационный момент} \subsubsection*{Организационный момент}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Позитивно начать урок, создать комфортную среду для обучения. \item \textbf{Цель этапа:} Позитивно начать урок, создать комфортную среду для обучения.
\item \textbf{Тайминг:} 3-5 минут. \item \textbf{Тайминг:} 3-5 минут.
@ -62,7 +62,7 @@
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Quiz} \subsubsection*{Quiz}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Вовлечение аудитории в обратную связь. \item \textbf{Цель этапа:} Вовлечение аудитории в обратную связь.
\item \textbf{Тайминг:} 5-7 минут (4 вопроса, по минуте на ответ). \item \textbf{Тайминг:} 5-7 минут (4 вопроса, по минуте на ответ).
@ -100,7 +100,7 @@
\end{enumerate} \end{enumerate}
\end{itemize} \end{itemize}
\subsubsection{Рассмотрение ДЗ} \subsubsection*{Рассмотрение ДЗ}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Пояснить не очевидные моменты в формулировке ДЗ с лекции, синхронизировать прочитанный на лекции материал к началу семинара. \item \textbf{Цель этапа:} Пояснить не очевидные моменты в формулировке ДЗ с лекции, синхронизировать прочитанный на лекции материал к началу семинара.
\item \textbf{Тайминг:} 15-20 минут. \item \textbf{Тайминг:} 15-20 минут.
@ -280,7 +280,7 @@ private static boolean isInFile(String fileName, String search) throws IOExcepti
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Вопросы и ответы} \subsubsection*{Вопросы и ответы}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями. \item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями.
\item \textbf{Тайминг} 5-15 минут \item \textbf{Тайминг} 5-15 минут
@ -294,7 +294,7 @@ private static boolean isInFile(String fileName, String search) throws IOExcepti
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 1} \subsubsection*{Задание 1}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Сохранение состояния приложения между запусками \item \textbf{Ценность этапа} Сохранение состояния приложения между запусками
\item \textbf{Тайминг} 15-20 мин \item \textbf{Тайминг} 15-20 мин
@ -343,7 +343,7 @@ fos.close();
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 2} \subsubsection*{Задание 2}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Загрузка состояния приложения при запуске \item \textbf{Ценность этапа} Загрузка состояния приложения при запуске
\item \textbf{Тайминг} 15-20 мин \item \textbf{Тайминг} 15-20 мин
@ -395,7 +395,7 @@ System.out.println(Arrays.toString(ar10));
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 3} \subsubsection*{Задание 3}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Работа с текстом (автоматизированный поиск и замена текста в файле или группе файлов) \item \textbf{Ценность этапа} Работа с текстом (автоматизированный поиск и замена текста в файле или группе файлов)
\item \textbf{Тайминг} 10-15 мин \item \textbf{Тайминг} 10-15 мин
@ -456,7 +456,7 @@ fos.write(sb.toString().getBytes());
\end{itemize} \end{itemize}
\subsubsection{Задание 4} \subsubsection*{Задание 4}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Работа с файловой системой \item \textbf{Ценность этапа} Работа с файловой системой
\item \textbf{Тайминг} 15-20 мин \item \textbf{Тайминг} 15-20 мин
@ -501,7 +501,7 @@ void printContents(".");
\end{itemize} \end{itemize}
\end{itemize} \end{itemize}
\subsubsection{Задание 5 (необязательное)} \subsubsection*{Задание 5 (необязательное)}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Описание часто недостающих механик операционной системы по «массовой» работе с файлами. \item \textbf{Ценность этапа} Описание часто недостающих механик операционной системы по «массовой» работе с файлами.
\item \textbf{Тайминг} 15-20 мин \item \textbf{Тайминг} 15-20 мин
@ -528,7 +528,7 @@ for (String fileName : a) {
\end{lstlisting} \end{lstlisting}
\end{itemize} \end{itemize}
\subsubsection{Домашнее задание} \subsubsection*{Домашнее задание}
\begin{itemize} \begin{itemize}
\item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями. \item \textbf{Ценность этапа} Задать задание для самостоятельного выполнения между занятиями.
\item \textbf{Тайминг} 5-10 минут. \item \textbf{Тайминг} 5-10 минут.
@ -591,7 +591,7 @@ System.out.println(Arrays.toString(ar20));
\end{enumerate} \end{enumerate}
\end{itemize} \end{itemize}
\subsubsection{Рефлексия и завершение семинара} \subsubsection*{Рефлексия и завершение семинара}
\begin{itemize} \begin{itemize}
\item \textbf{Цель этапа:} Привести урок к логическому завершению, посмотреть что студентам удалось, что было сложно и над чем нужно еще поработать \item \textbf{Цель этапа:} Привести урок к логическому завершению, посмотреть что студентам удалось, что было сложно и над чем нужно еще поработать
\item \textbf{Тайминг:} 5-10 минут \item \textbf{Тайминг:} 5-10 минут
@ -607,16 +607,4 @@ System.out.println(Arrays.toString(ar20));
\end{itemize} \end{itemize}
\newpage \newpage
\appendix
\section*{Приложения}
\addcontentsline{toc}{section}{Приложения}
\renewcommand{\thesubsection}{\Asbuk{subsection}}
\subsection{Домашнее задание 3}
\label{appendix:hw3}
%\lstinputlisting[language=Java,style=JCodeStyle,caption={Основная программа}]{src/s04-hw3-exceptional.java}
\end{document} \end{document}
\item [$*_2$]