Всем привет! Вот и я уже дошла до 32 уровня JavaRush и решила закинуть удочку и поймать свою удачу на просторах вакансий Junior Java Developer.
Мне немного улыбнулась удача и мне прислали тестовое задание. Но перед ссылкой на его выполнение написали такое вот сообщение:
Добрый день! Спасибо, что заполнили нашу анкету! Как и договорились, мы внесли Ваш профиль в список приглашенных к тестированию. Вот основные условия написания онлайн-теста: Когда Вы начнете тест, Ваша попытка будет списана. Будьте внимательны и приступайте к тесту, когда будете готовы. Время на написание теста: 30 минут. Вопросы по Java приводятся на английском языке. Структура теста: 10 вопросов J2SE, 4 вопроса J2EE. Рассчитайте Ваше время с учетом структуры теста. По итогам анализа ответов теста, если Вы справитесь с 70-80% вопросов, мы пришлем Вам ссылку на следующее задание. Мы просим Вас быть максимально внимательными, соблюдать регламент и быть предельно честными - для теста Вам необходимы только Ваши знания.На JavaRush мы изучали JavaCore, а тут вопросы будут по J2SE + J2EE. Я не стала пока переходить по ссылке, т.к хочу понять стоит ли сейчас туда лезть с моими познаниями или стоит что-то дополнительно изучить. Ребята, помогите понять.Кто знает J2SE + J2EE это тоже самое, что мы изучали или это что-то гораздо тяжелее? Если второе, то киньте ссылки на какие-нибудь источники, чтобы можно было дополнительно изучить J2SE и J2EE. Здесь можно посмотреть тестовое задание, которое мне давали.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
но так вообще для общего такого взгляда на тему — посмотреть можно, конечно :)
ну или могу еще предложить почитать мою статейку тут. Там очень коротко и сжато, но старался объяснить максимально доходчиво для новичков. После чего попробуйте запилить свой проект по аналогии с тем, что я описал в статье (догуглите то, о чем я там не писал), после чего с сервлетами у вас уже будет какой-то опыт и отвечать на вопросы по ним станет значительно легче :)
то есть, на них сейчас, конечно, никто уже не пишет. используются более «продвинутые» штуки. но под капотом у этих продвинутых штук все-равно все построено на работе с сервлетами и фильтрами :) соответственно понимать/знать как там с ними все построено и работает — все-таки необходимо
1. я их возможно недостаточно хорошо знаю, чтобы написать все правильно и не ввести никого в заблуждение.
2. к сожалению, формат статьи позволяет лишь только слегка затронуть доступные возможности. если же описывать все довольно детально и доходчиво — то тут подойдет формат книги :)
и прикол в том, что книги то, на самом деле, уже есть! хорошо написанные и структурированные. их надо просто взять и прочитать :)
я читал Spring in action. и периодически снова к ней возвращаюсь, так как что-то запомнилось, а что-то — нет :)
кроме того, у спринга есть еще серия статей у них на сайте, если вам больше нравится не полноценные книги, а формат «рецептов»)) spring.io/guides
там в основном используется Spring Boot, это часть проекта, которая позволяет получить сразу работающее приложение без каких-то детальных настроек конфигурации. но без понимания как оно там все работает внутри (что описано в книгах) — вам это все будет казаться «магией» :)
поэтому рекомендую начать с книг :)
а потом уже читать всякие статьи в интернете. их на самом деле довольно много. и в паблике того же джавараша в социальных сетях часто выкладывают довольно интересные статьи :)
так что я пока не вижу необходимости писать «еще одну» статью про спринг, если их и так уже написано достаточно :)
Добравшись до 35 уровня, в октябре подал заявку на стажировку. Прислали задание, для решения которого необходимо было разобраться с технологиями Maven, Tomcat, Spring, Hibernate, создать БД MySQL, использовать frontend framework Spring MVC. По началу конечно задание вызвало небольшой шок, так как половина слов вообще была незнакома. Но выхода не было и потихоньку начал разбираться.
Более менее успешно удалось разобраться с Maven (установить, подключить зависимости), Tomcat (установить, задеплоить war-ник), Hibarnate (прояснилось для чего его используют, как подключают с помощью него данные из БД в приложение), установить MySQL и создать в ней БД, подключить соединение с БД в IntelligIdea.
Со Спринг и Спринг MVC, про которое вы упоминаете, оказалось сложнее. Во-первых, до сих пор не вполне понимаю для чего нужен этот фреймворк (прошу не кидаться камнями). Во-вторых, правильно ли я понимаю, что при подключении Спринг MVC в приложении просто появляется необходимая структура папок (model? view, controller)?
Самым сложным для меня оказалось понять как связать веб страницы, контроллер, модель. Разбирался с кодом подобных приложений, но так и не успел к сроку сдать задание. Потом наткнулся на вашу серию статей, как сделать простое веб-приложение. Вы там используете сервлеты и мне стало понятно как пробрасывать логику от джава кода до jsp-страницы.
Но тут снова наткнулся на ваш комментарий здесь, где вы говорите, что на сервлетах сейчас никто не пишет! А используют вещи покруче — типа спринг)) Но как мне, поняв ваш код, теперь понять тоже самое, но с использованием спринга?))
так как это совершенно разные вещи :)
используя спринг MVC ты только написал
а спринг за тебя уже выстроил цепочку из сервлетов, фильтров, расписал им маппинг и все такое; в общем, сделал много рутинной работы, которую раньше приходилось делать самому.
единственное в чем тут могла бы помочь та моя статья — это в понимании о чем вообще шла речь в моем прошлом предложении :) вот и все.
а написать проект на спринг MVC и написать проект на голых сервлетах и jsp — это совсем разные вещи. вот совсем :)
в спринге много «магии», так как огромную часть работы он берет на себя, и позволяет программисту сосредоточиться именно на написании логики.
я могу попробовать написать статью про какие-то основные моменты, которые могут казаться «магией»… но почитать какую-нибудь книжку про это — было бы значительно лучше, я считаю :)
dou.ua/lenta/articles/java-beginner-guide-1/
www.oracle.com/technetwork/java/javaee/tech/index.html
docs.oracle.com/javaee/6/tutorial/doc/
JEE слишком большой топик. Там могут быть вопросы как по EJB так и Spring, 100% что то около сервлетов будет.
Я вижу 3 варианта.
1. Потрать неделю и потрепать свои нервы и только потом попытаться
2. Глянуть что за портал где будет тест, и попробовать найти примеры вопросов
3. Попытаться проййти тест без подготовки. Опять же есть интернет и IDE. Для разработчика важно уметь находить информацию.
Удачи