|
1 | 1 | [Java Enterprise Online Project](https://javaops.ru/view/topjava) |
2 | 2 | =============================== |
3 | | -Разработка полнофункционального Spring/JPA Enterprise приложения c авторизацией и правами доступа на основе ролей с использованием наиболее популярных инструментов и технологий Java: Maven, Spring MVC, Security, JPA(Hibernate), REST(Jackson), Bootstrap (css,js), DataTables, jQuery + plugins, Java 8 Stream and Time API и хранением в базах данных Postgresql и HSQLDB. |
| 3 | +Разработка полнофункционального Spring/JPA Enterprise приложения c авторизацией и правами доступа на основе ролей с использованием наиболее популярных инструментов и технологий Java: Maven, Spring MVC, Security, JPA(Hibernate), REST(Jackson), Bootstrap (css,js), DataTables, jQuery + plugins, Stream and Time API и хранением в базах данных Postgresql и HSQLDB. |
4 | 4 |
|
5 | 5 |  |
6 | 6 |
|
|
14 | 14 | ## <a href="description.md">Описание и план проекта</a> |
15 | 15 | ### <a href="http://javaops-demo.ru/topjava" target=_blank>Демо разрабатываемого приложения</a> |
16 | 16 | ### [Изменения проекта (Release Notes)](ReleaseNotes.md) |
17 | | -### <a href='https://github.com/JavaOPs/topjava/wiki/Стажировка--Enterprise-Java-разработчик-(TopJava)-'>Требования к участникам, Wiki</a> |
| 17 | +### <a href='https://github.com/JavaOPs/topjava/wiki/Стажировка--Enterprise-Java-разработчик-(TopJava)'>Требования к участникам, Wiki</a> |
18 | 18 | ### <a href="cv.md">Составление резюме, подготовка к интервью, поиск работы</a> |
19 | 19 |
|
20 | 20 | Обновленное вводное занятие (обязательно смотреть все видео) |
|
38 | 38 | ##  5. [Системы управления версиями. Git](doc/video5-vcs-git.md)</a> |
39 | 39 |
|
40 | 40 | ##  6. <a href="https://drive.google.com/file/d/0B9Ye2auQ_NsFZDdaaU5fZEo4X3c/view?resourcekey=0-DvpzWIlMHZ7KX_v1SMuiAw" name="project">Работа с проектом (выполнять инструкции)</a> |
41 | | -- **ВНИМАНИЕ: выбирайте для проекта простой пусть без пробелов и русских букв, например, `c:\projects\topjava\` (Windows). Иначе впоследствии будут проблемы** |
| 41 | +- **ВНИМАНИЕ: выбирайте для проекта простой путь без пробелов и русских букв, например, `c:\projects\topjava\` (Windows). Иначе впоследствии будут проблемы** |
42 | 42 | - **Плагин Git Intergation уже не требуется, а вкладку `Version control` в IDEA переименовали в `Git`** |
43 | 43 | - **C Ultimate IDEA сейчас сложности**, надеемся что временные. |
44 | 44 | - Скачать IDEA и установливать плагины [можно по инструкции](https://github.com/JavaOPs/topjava/wiki/IDEA#download) |
|
67 | 67 | - Сделать локальный репозиторий проекта: |
68 | 68 | <pre>git clone https://github.com/[Ваш аккаунт]/topjava.git</pre> |
69 | 69 |
|
70 | | -> Вместо Fork можно сделать [клонирование проекта](https://github.com/JavaOPs/topjava/wiki/Git#user-content-Клонирование-проекта): он не будет привязан к исходному https://github.com/JavaOPs/topjava и у него не будет истории. |
| 70 | +> Вместо Fork можно сделать [клонирование проекта](https://github.com/JavaOPs/topjava//Git#user-content-Клонирование-проекта): он не будет привязан к исходному https://github.com/JavaOPs/topjava и у него не будет истории. |
71 | 71 |
|
72 | 72 | - Открыть и настроить проект в IDEA |
73 | 73 | - <a href="http://stackoverflow.com/questions/29695918/intellij-idea-console-issue#33035499">Выставить кодировку UTF-8 в консоли</a> |
74 | | - - <a href="https://github.com/JavaOPs/topjava/wiki/IDEA#%D0%9F%D0%BE%D1%81%D1%82%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%BA%D1%83-utf-8">Поставить кодировку UTF-8</a> |
| 74 | + - <a href="https://github.com/JavaOPs/topjava/wiki/IDEA#user-content-utf8-console">Поставить кодировку UTF-8</a> |
75 | 75 | - Опционально: <a href="https://github.com/JavaOPs/topjava/wiki/IDEA#%D0%9F%D0%BE%D0%BC%D0%B5%D0%BD%D1%8F%D1%82%D1%8C-%D1%84%D0%BE%D0%BD%D1%82-%D0%BF%D0%BE-%D1%83%D0%BC%D0%BE%D0%BB%D1%87%D0%B0%D0%BD%D0%B8%D1%8E-dejavu">поменять шрифт по умолчанию на DejaVu</a> или на **новый [JetBrains Mono](https://habr.com/ru/company/jugru/news/t/484134/)** |
76 | 76 | - По ходу видео сделать `Apply Patch...` скачанного патча `Prepare_to_HW0.patch` |
77 | 77 | - Закоммитить и запушить изменения (`commit` + `push`) |
|
121 | 121 |
|
122 | 122 | #### ВНИМАНИЕ: варианты Optional делайте в одной ветке в разных методах `UserMealsUtil`. Проще делать, проще проверять |
123 | 123 |
|
124 | | -### Optional (Java 8 Stream API) |
| 124 | +### Optional (Stream API) |
125 | 125 | ``` |
126 | | -Реализовать метод `UserMealsUtil.filteredByStreams` через Java 8 Stream API. |
| 126 | +Реализовать метод `UserMealsUtil.filteredByStreams` через Stream API. |
127 | 127 | ``` |
128 | 128 | - <a href="http://www.youtube.com/watch?v=_PDIVhEs6TM">Видео: Доступно о Java 8 Lambda</a> |
129 | 129 | - <a href="https://devcolibri.com/java-8-killer-features-%D1%87%D0%B0%D1%81%D1%82%D1%8C-1/">Java 8: Lambda выражения</a> |
|
147 | 147 | - без циклов по другим коллекциям/массивам (к ним также относим методы коллекций `addAll()/removeAll()`) |
148 | 148 | - через Stream API за 1 проход по исходному списку `meals.stream()` |
149 | 149 | - нельзя использовать внешние коллекции, не являющиеся частью коллектора |
150 | | - - возможно дополнительные проходы по частям списка, при этом превышение должно считаться один раз для всего подсписка. Те например нельзя разбить список на на 2 подсписка с четными и нечетными датами и затем их объединить, с подсчетом превышения для каждого элемента. |
| 150 | + - возможно дополнительные проходы по частям списка, при этом превышение должно считаться один раз для всего подсписка. Те например нельзя разбить список на 2 подсписка с четными и нечетными датами и затем их объединить, с подсчетом превышения для каждого элемента. |
151 | 151 |
|
152 | 152 | Временная сложность реализации должна быть O(N) (обратите внимание на п. 13 замечаний) |
153 | 153 | Решение должно быть рабочим в общем случае (должно работать в приложении с многими пользователями, не только при запуске `main`) |
|
0 commit comments