Хочу поділитися з вами корисними посиланнями, хінтами та порадами, які допоможуть при виконанні тестового завдання на стажування у реальний проект JavaRush. Звичайно, можна просто бездумно накопичувати рішення тестового завдання з інтернету, благо прикладів вистачає, але ми хочемо розібратися, що робимо:) Цей пост для тих, хто не виявив серед стека технологій, потрібних за завданням, знайомих слів і хоче це виправити) Кілька тижнів тому я дістався до 30 рівня і нарешті отримав доступ до тестового завдання на стажування. Спочатку я був у ступорі і просто не знав, з чого почати і що роблять усі ці спринги та хібернейти. Тільки почавши копати, я зіткнувся з проблемою: дуже багато ресурсів та статей мають на увазі, що ви вже маєте уявлення про предметну область. Простіше кажучи, вони надто розумні для новачків і замість розуміння викликають реакцію "це занадто складно!". Тому нижче я спробую на основі свого нехай і невеликого досвіду поділитися вдалими посиланнями, які допомогли мені отримати базові уявлення про необхідні технології. Ті, хто нив під час навчання на JavaRush, що багато треба вивчати самому - готуйтеся, тут на вас чекає справжнє пекло))
Отже, як підійти до виконання завдання?
1. Зрозуміти, навіщо потрібні всі ці технології (я б почав вивчення в такому порядку, як зазначено нижче):
1.1. Maven
Його роль у проекті – створення структури каталогів вашого веб-проекту (вона стандартизована) із спеціального темплейту, званого “archetype” + підтягування бібліотек у ваш проект (додавання dependency у pom.xml). Хто проходив бонусне завдання про парсинг на основі soup – там ми самі ручками завантажували бібліотеку з інтернету та підчіплювали її в ідею. Maven дозволяє вам нічого не завантажувати, а просто писати в pom.xml, яку бібліотеку ви хочете підтягнути і використовувати в проекті. Швидке пояснення, що робить Maven, у картинках -> тут .1.2. MySQL
Це ваша система управління базами даних (СУБД). Якихось глибоких знань у SQL і СУБД за завданням не потрібно, тут можу порадити для полегшення життя встановити прогу dbForge, яка допоможе вам при створенні БД і роботи з нею.1.3. Spring
Цей фреймворк буде ядром вашого веб-додатку. Він величезний і його архітектура складається з багатьох модулів. Хороша новина: для виконання завдання потрібно отримати уявлення лише про кілька речей у Spring: що таке Inversion of Control (IoC) і розібратися з роботою Spring MVC (яка має бути структура каталогів вашого веб-проекту, хто такий DispatcherServlet, як він взаємодіє з контролером , в'ю та моделлю і т.д.). Тут особливо не вистачало матеріалів для новачків, де б пояснювалося на пальцях. Але, слава богу, такі матеріали знайшлися: Дуже просто про IoC, зв'язаність коду, DI (матеріал викладається в дещо фривольній манері, але все зрозуміло) -> ось тут (нижче на сторінці гортайте до наступних статей). Далі шукайте, що таке@Autowired
інструкція. Spring MVC -цикл відеоуроків (перші 11 уроків, кожен у середньому хвабон 7-10). Тут ви знайдете цикл відеоуроків, взагалі ДУЖЕ рекомендую дивитися уроки цього хлопця! Незважаючи на кумедну індуську англійську, пояснює все дуже докладно і зрозуміло, з наочними прикладами. Також у нього є уроки і з інших фреймворків. WorkFlow програми на Spring MVC в картинках - див. тут .
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ