|
| 1 | + |
| 2 | +# Седьмое занятие |
| 3 | + |
| 4 | +##  [Разбор Домашнего Задания-6](https://drive.google.com/open?id=0B_4NpoQW1xfpT1BwLUNBanVfd1E) |
| 5 | +[см. коммит Lesson07_HW06 test refactoring](https://github.com/JavaWebinar/basejava/tree/b47cadba8f2fb2da61ef6b9f6b245f5c358ea5d8/test/ru/javawebinar/basejava/storage) |
| 6 | +[см. коммит Lesson07_HW06 add fullName](https://github.com/JavaWebinar/basejava/tree/fb608dd824abda1f15bbc437e4d0d5e094fc1680) |
| 7 | +[см. коммит Lesson07_HW06 getAllSorted](https://github.com/JavaWebinar/basejava/tree/bd8e5f4f4582c9f65e1d6a82da1311d6b0efe294) |
| 8 | +[см. коммит Lesson07_HW06 mapStorage](https://github.com/JavaWebinar/basejava/tree/6d0dbdc64e257452662d65f76edf6d9d07328a79) |
| 9 | + |
| 10 | +##  [1. Параметризация. Стирание типов.](https://drive.google.com/open?id=0B_4NpoQW1xfpbXotWEFrYVVGUWc) |
| 11 | +[см. коммит Lesson07 generic](https://github.com/JavaWebinar/basejava/tree/1cb2a6bc0bbbb43285b8ca6b297588e9984fa84b/src/ru/javawebinar/basejava/storage) |
| 12 | + |
| 13 | +- <a href="http://www.quizful.net/post/java-generics-tutorial">Дженерики (Java, обучающая статья)</a> |
| 14 | +- <a href="http://developer.alexanderklimov.ru/android/java/generic.php">Обобщения (Generic)</a> |
| 15 | +- <a href="http://docs.oracle.com/javase/tutorial/java/generics/restrictions.html">Ограничения.</a> |
| 16 | + |
| 17 | +##  [2. Логирование](https://drive.google.com/open?id=0B_4NpoQW1xfpM1J5NkVqNHd1MlU) |
| 18 | +[см. коммит Lesson07 logging](https://github.com/JavaWebinar/basejava/blob/63674b7f246bf6bc4e509cc1241c7b6340477d18/src/ru/javawebinar/basejava/storage/AbstractStorage.java) |
| 19 | + |
| 20 | +- <a href="https://logging.apache.org/">Log4J (Apache logging)</a> |
| 21 | +- <a href="http://www.vogella.com/tutorials/Logging/article.html">Java Logging API - Tutorial</a> |
| 22 | +- <a href="https://habrahabr.ru/post/130195/">Логирование в Java / quick start</a> |
| 23 | +- <a href="http://skipy.ru/useful/logging.html">Ведение лога приложения</a> |
| 24 | +- <a href="http://habrahabr.ru/post/113145/">Java Logging: история кошмара</a> |
| 25 | + |
| 26 | +##  [3. Синглетон, Enum](https://drive.google.com/open?id=0B_4NpoQW1xfpZ3lmWVhUSXprQXc) |
| 27 | +[см. коммит Lesson07 enum](https://github.com/JavaWebinar/basejava/tree/a1fe80b00444b6c8d8af149c5e82137c312fee22/src/ru/javawebinar/basejava) |
| 28 | + |
| 29 | +- <a href="https://ru.wikipedia.org/wiki/Одиночка_(шаблон_проектирования)">Одиночка (шаблон проектирования)</a> |
| 30 | +- <a href="http://easy-code.ru/lesson/enum-types-java">Перечисляемые типы (enum) в Java</a> |
| 31 | + |
| 32 | +##  [Домашнее задание:](https://drive.google.com/open?id=0B_4NpoQW1xfpVjhZTzhqemlYZUU) |
| 33 | +<a href="https://ru.wikipedia.org/wiki/Доменный_объект">Доменный объект</a> |
| 34 | + |
| 35 | +Cделать объектную модель резюме (диаграмма и классы). <a href="http://u-rise.com/teacherofjava.pdf">Образец резюме</a> (делаем упрощенно) |
| 36 | + - Делать только классы, включаемые в Resume. Resume - главный класс. В него все включается (композиция - строгий вид агрегации). |
| 37 | + - Схожие по структуре и функциональности сущности делаем одним классом. |
| 38 | + - Модель упрощаем для хранения только необходимой информации для вывода/ редактирования резюме. |
| 39 | + - В модели резюме должны быть представлены контакты и следующие разделы: |
| 40 | + - PERSONAL("Личные качества") |
| 41 | + - OBJECTIVE("Позиция") |
| 42 | + - ACHIEVEMENT("Достижения") |
| 43 | + - QUALIFICATIONS("Квалификация") |
| 44 | + - EXPERIENCE("Опыт работы") |
| 45 | + - EDUCATION("Образование") |
| 46 | + - В секциях Достижения и Квалификация хранить список строк |
| 47 | + - Учесть в классах модели, что обработка резюме (вывод в html, сохранение, чтение) будет сделано следующим образом: |
| 48 | +обработка `fullName`, цикл обработки по контактам, цикл обработки по секциям (для секций использовать полиморфизм, как для фигур: круг, квадрат..). |
| 49 | +При добавлении/удалении новых видов контактов (например домашний телефон) или разделов изменения в коде (и БД) должны быть минимальны. |
| 50 | + |
| 51 | +#### Инструменты для рисования: |
| 52 | + |
| 53 | +- <a href="http://stackoverflow.com/questions/8942751/use-intellij-to-generate-class-diagram#26926334">Generate class diagram in IntelliJ IDEA</a> (<a href="https://www.jetbrains.com/help/idea/2016.1/working-with-diagrams.html?origin=old_help">Help: working with Diagrams</a>) |
| 54 | +- Нарисовать и сфотографировать |
| 55 | +- <a href="http://www.draw.io">Online: www.draw.io</a> |
| 56 | +- <a href="https://www.yworks.com/">yEd - Graph Editor</a> |
0 commit comments