Задания

Дата начала
Материалы занятий Домашние задания
 Что читать
09.02-15.02 1 Основные конструкции Java Д.з.1
Хорстманн, глава 3;
Шилдт, главы 2-5.
16.02-22.02 2 Простые и ссылочные типы Д.з.2 Хорстманн, глава 3 (про массивы), глава 4: пункт "параметры методов" (с 161) и все до него;
Шилдт, глава 6.
23.02-01.03
1 (кто не сделал ранее):
  • делаем задания с предыдущей пары (на +1);

2 (кто делал - и скучает)

Напишите программу, которая перемешивает буквы каждого слова введенного текста случайным образом. Получается что-то вроде следующего:

to a rscheearch at an Elingsh uinervtisy, it deosn't mttaer in waht oredr the ltteers in a wrod are, the olny iprmoetnt tihng is taht frist and lsat ltteer is at the rghit pclae. The rset can be a toatl mses and you can sitll raed it wouthit porbelm. Tihs is bcuseae we do not raed ervey lteter by itslef but the wrod as a wlohe.
Поэкспериментируйте с разными способами "ограниченного" перемешивания (т.е. оставляющими некоторые буквы на месте) а также с русским (украинским) языком.

Подсказка: как правильно "сгенерировать случайную перестановку" - поищите в интернете.
1 Внимательно почитайте в 4-ой главе Хорстманна про:
  1. объекты и классы;
  2. отношения между классами;
  3. диаграммы классов;
  4. отличия ООП от процедурного программирования;
  5. класс Employee и его анализ.

2 (О) Запрограммируйте класс Employee, создайте массив объектов, поднимите всем немного зарплату (программа EmployeeTest из учебника).

Хорстманн, глава 4.
03.03-09.03
4 Инкапсуляция Д.з.4
Хорстманн, глава 4 целиком!
10.03-15.03
5 "Резиновый" массив
Д.з.№5 Полезный класс: вектор
 --
17.03-22.03
  1. Сдаем старые д.з.
  2. Выбираем варианты инд.з.1.

  1. Доделываем старые д.з. Активность по ним в течение недели засчитывается (2 балла/нед).
  2. Делаем Инд.з.№1. Срок - от 3 до 5 недель, макс. 6 баллов.
 
24.03-29.03
Инкапсуляция, наследование, полиморфизм
Доделываем старые д.з. Активность по ним в течение недели засчитывается (2 балла/нед).  
31.03-5.04
6 Наследование
Д.з.№6 Наследование
Хорстманн, глава 5.
07.04-13.04
7 Открытое и закрытое наследование  Д.з.№7 Открытое и закрытое наследование
Раз, два и просторы интернета
14.04-20.048 Полиморфизм
Д.з.№8 Полиморфизм
  • Хорстманн, глава 5, пункты "Полиморфизм", "Динамическое связывание" (с. 201)
  • Хорстманн, глава 6, "Интерфейсы"
21.04-27.04
  1. Выбираем вариант инд.з.2.
  1. Делаем Инд.з.2. Срок - до 1-го занятия после майских праздников(10 баллов), до 2-го занятия (8 баллов), до 3-го занятия (6 баллов). +2 можно получить за Exception'ы.
  2. Бонусное задание "База+". Срок до 2-го занятия. Макс. 4 балла.
 
10.05-16.059 Последовательные коллекции
Д.з.№9 Последовательные коллекции
Хорстманн, том 2, глава 2 "Коллекции"
17.05-23.0510 Ассоциативные коллекции
Д.з.№10 Ассоциативные коллекции
Хорстманн, том 2, глава 2 "Коллекции"

Порядок выполнения

  1. Каждое д.з. делается 1 неделю - и проверяется на следующем занятии. Если у вас не все получилось - ничего страшного: оценивается ваша активность, а не результативность (2 балла).
  2. Защита д.з. состоит в обсуждении вашего кода и контрольных вопросов. Вопросы могут включать в себя небольшие задания по ориентированию в коде. Срок защиты д.з. не ограничен (2 балла).
  3. На одном занятии можно защищать не более двух д.з. Учитывайте это при приближении конца семестра!
  4. Если при защите д.з. выявились недостатки в ваших программах или ответах на вопросы - их можно исправить позже, получив за это недостающие баллы.

Требование оригинальности

Никакое обучение не возможно без самостоятельного решения задач. Только ваши собственные усилия по анализу задачи и поиску путей ее решения могут принести результаты. При этом можно и даже нужно обсуждать задачу с другими людьми. Но написание кода должно быть полностью самостоятельным. Во время этого вы можете получать сторонние консультации по возможностям языка, особенностям компилятора или среды программирования - и даже просить других людей проанализировать, почему не работает ваша программа. Но совершать нажатия на клавиши, от которых появляются буквы в вашей программе - не должен никто кроме вас.

Ни при каких обстоятельствах не копируйте код других студентов и не используйте в своих программах фрагменты кода из интернета. Естественным исключением являются случаи, когда в задании явно указано взять за основу для своей работы какой-либо сторонний фрагмент кода, а также использование небольших фрагментов из учебных материалов по курсу (в том числе учебников) - при условии явного указания факта этого использования. Распространение вашего собственного кода среди однокурсников и/или в интернете также является недопустимым. (источник)

Нарушение этих правил ведет к аннулированию баллов за всё задание - причем как у автора кода, так и у того, с кем он этим кодом поделился, без выяснения кто из них кто.