День 82
Вчера целый день изучал Spring по видео из Ютуб. Сначала скачал среду разработки intelij idea, и как оказалось, за первые 30 дней не нужно было платить. Этому я обрадовался т.к. не хочется платить когда тебе ещё не платят😉 Дальше по инструкции из видео настроил проект через сборщик проектов Maven, зашёл на их сайт и скопировал зависимости со Spring Core и ещё несколькими. Собрал и импортировал модули Спринг.
По самой теме пока материал усваивается процентов на 50, нужно ещё много дополнительного читать, чтобы было полное понимание. На практике сделал бины (объекты) через xml файл и аннотации. Как я понял сейчас везде используются аннотации т.к. они максимально удобны и без лишнего кода.
Вчера занимался 5.4 часов, сегодня планирую 7 и дальше буду набирать обороты т.к. вечно учиться нельзя, нужно применять знания на работе. На этом все, всем удачи и продуктивного дня!
Вчера целый день изучал Spring по видео из Ютуб. Сначала скачал среду разработки intelij idea, и как оказалось, за первые 30 дней не нужно было платить. Этому я обрадовался т.к. не хочется платить когда тебе ещё не платят😉 Дальше по инструкции из видео настроил проект через сборщик проектов Maven, зашёл на их сайт и скопировал зависимости со Spring Core и ещё несколькими. Собрал и импортировал модули Спринг.
По самой теме пока материал усваивается процентов на 50, нужно ещё много дополнительного читать, чтобы было полное понимание. На практике сделал бины (объекты) через xml файл и аннотации. Как я понял сейчас везде используются аннотации т.к. они максимально удобны и без лишнего кода.
Вчера занимался 5.4 часов, сегодня планирую 7 и дальше буду набирать обороты т.к. вечно учиться нельзя, нужно применять знания на работе. На этом все, всем удачи и продуктивного дня!
День 83
Вчера был мой рекорд по продолжительности учебы в день — 7.5 часов. Читаю некоторых людей на форумах которые говорят что учатся по 14-16 часов, что я считаю абсолютно невозможным. Или ты убиваешь свое здоровье или ты неправильно считаешь. Убивать свое здоровье конечно можно, но в таком ритме больше нескольких недель находиться нельзя, попадешь в больничку надолго. Я думаю оптимально-максимальный режим это до 7-8 часов чистой учебы (если отвлекаемся, останавливаем время).
Вчера целый день уделил спрингу, в основном это видео с Ютуб и книга "Спринг для профессионалов". Наконец разобрался как работать с аннотациями в Спринге и как вообще работать без устаревшего xml кода. Аннотации это очень крутая штука, которая содержит в себе часть кода. Например, ставишь какую - нибудь аннотацию вида @ Annotation и он может заменить по 20-30 строчек кода и более. Я думаю что это одна из основных фишек Спринга и роста его популярности.
Также, вчера узнал о такой полезной штуке как Lombok. Этот проект также работает с аннотациями и заменяет излишний код в проекте. Например нам очень часто нужны несколько дефолтных методов и конструкторов к классу или полям. Мы просто пишем определенные аннотации и они заменяют нам 100-200 строк так называемого бойлерплейт кода, которые мы в ином случае писали бы вручную.
Это очень облегчает трудности разработчика и ставит обратно Java на равне с новыми языками, которые более удобны - Scala, Kotlin и т.п.
На этом все, всем удачи и продуктивного дня💪😄
Вчера был мой рекорд по продолжительности учебы в день — 7.5 часов. Читаю некоторых людей на форумах которые говорят что учатся по 14-16 часов, что я считаю абсолютно невозможным. Или ты убиваешь свое здоровье или ты неправильно считаешь. Убивать свое здоровье конечно можно, но в таком ритме больше нескольких недель находиться нельзя, попадешь в больничку надолго. Я думаю оптимально-максимальный режим это до 7-8 часов чистой учебы (если отвлекаемся, останавливаем время).
Вчера целый день уделил спрингу, в основном это видео с Ютуб и книга "Спринг для профессионалов". Наконец разобрался как работать с аннотациями в Спринге и как вообще работать без устаревшего xml кода. Аннотации это очень крутая штука, которая содержит в себе часть кода. Например, ставишь какую - нибудь аннотацию вида @ Annotation и он может заменить по 20-30 строчек кода и более. Я думаю что это одна из основных фишек Спринга и роста его популярности.
Также, вчера узнал о такой полезной штуке как Lombok. Этот проект также работает с аннотациями и заменяет излишний код в проекте. Например нам очень часто нужны несколько дефолтных методов и конструкторов к классу или полям. Мы просто пишем определенные аннотации и они заменяют нам 100-200 строк так называемого бойлерплейт кода, которые мы в ином случае писали бы вручную.
Это очень облегчает трудности разработчика и ставит обратно Java на равне с новыми языками, которые более удобны - Scala, Kotlin и т.п.
На этом все, всем удачи и продуктивного дня💪😄
День 84
Т.к. в моем графике обучения появился целый большой фреймворк Спринг, который нужно изучать столь же долго и нудно как и Java, я решил разделить эти 2 области по дням. Поочередно по дням буду изучать то Спринг, то Java. Вчера был день Джавы, и начал я с JavaRush. Задачи на 20 уровне очень мутные и не дается какой то конечной цели которую надо решить. Ты должен прочитать код и сопоставить их в логическую цепочку, что дается очень сложно. Так, я первый час пытался вникнуть что от меня хотят и на второй час пошел доучивать теорию по этой задаче, а на 3 час решил ее. Решение буквально до 10 строчек, но чтобы догадаться до них нужно потратить кучу попыток.
На этом я решил что задачек хватит на сегодня и пошел учить теорию и смотреть видео. В принципе, по теории Java, по моему мнению у меня мало пробелов, что касается основ. А вот где у меня пробелы, это те области которые были добавлены в JDK 8. Это касается функционального программирования, Stream API и лямбда, и еще одной областью является Reflection API, который используется в Спринге. Этим 3 темам и еще библиотеки многопоточности Concurrency я хочу уделить особое внимание в дальнейшем.
Занимался вчера 7 часов по помодорро, а сегодня день Спринга. На этом все, всем удачи и продуктивного дня💪😎
Т.к. в моем графике обучения появился целый большой фреймворк Спринг, который нужно изучать столь же долго и нудно как и Java, я решил разделить эти 2 области по дням. Поочередно по дням буду изучать то Спринг, то Java. Вчера был день Джавы, и начал я с JavaRush. Задачи на 20 уровне очень мутные и не дается какой то конечной цели которую надо решить. Ты должен прочитать код и сопоставить их в логическую цепочку, что дается очень сложно. Так, я первый час пытался вникнуть что от меня хотят и на второй час пошел доучивать теорию по этой задаче, а на 3 час решил ее. Решение буквально до 10 строчек, но чтобы догадаться до них нужно потратить кучу попыток.
На этом я решил что задачек хватит на сегодня и пошел учить теорию и смотреть видео. В принципе, по теории Java, по моему мнению у меня мало пробелов, что касается основ. А вот где у меня пробелы, это те области которые были добавлены в JDK 8. Это касается функционального программирования, Stream API и лямбда, и еще одной областью является Reflection API, который используется в Спринге. Этим 3 темам и еще библиотеки многопоточности Concurrency я хочу уделить особое внимание в дальнейшем.
Занимался вчера 7 часов по помодорро, а сегодня день Спринга. На этом все, всем удачи и продуктивного дня💪😎
День 85-86
Решил не записывать позавчерашний отчет, т.к. получилось бы мало текста. Как я и говорил, я один день учился Спрингу, а другой уделил Джаве. По Спрингу, я в основном смотрел видео на Ютуб и записывал некоторые важные моменты. В текстовом формате по Спрингу не так много информации или она устаревшая. Узнал о таком модуле как Spring Boot который, можно сказать, все делает за тебя. Основа Спринг была в том, что мы выносили в отдельный файл бины и там уже вся магия происходила, и в этом файле нужно было прописывать все свои бины.
В Спринг Буте же, мы можем обойтись без создания этого файла, сам Boot уже делает за нас все. Нам в начале нужно просто импортировать зависимости (ссылки версии из интернета) Spring Boot и все, можно идти делать свое веб приложение. И в этом модуле очень много используется аннотации вида @ Annotation, который прописывается сверху метода, поля или класса, чтобы что то обозначить, например то что этот класс имеет какие то свойства которые другие не имеют. Чтобы точно рассказать об этом, мне еще нужно время покопаться, но аннотаций очень много и их все нужно выучить😃
А вот вчера я серьезно принялся изучать лямбда выражения и Stream API который очень помогает при работе с коллекциями, то есть с массивами данных. Грубо говоря, стримы и лямбда сокращает код Java в 2-3 раза и делает его более удобочитаемым. Вообще эти термины в Java появились недавно и используются 50/50, но в современных проектах все построено на них. Это так называемый функциональный стиль программирования, а не объектно-ориентированный, коим является Java. Из-за этого не все его любят, но как по мне, функциональный стиль это действительно удобно и красиво, нет нагромождения лишнего кода.
За эти 2 дня, в общей сумме, я занимался 13 часов чистого времени. Скрин с помодорро внизу. Мне нравится темп который я набрал, сейчас процесс обучения движется намного быстрее, 1-2 лишних часа это большое преимущество при долгосрочных целях🌝
На этом все, всем удачи и продуктивного дня🦾
Решил не записывать позавчерашний отчет, т.к. получилось бы мало текста. Как я и говорил, я один день учился Спрингу, а другой уделил Джаве. По Спрингу, я в основном смотрел видео на Ютуб и записывал некоторые важные моменты. В текстовом формате по Спрингу не так много информации или она устаревшая. Узнал о таком модуле как Spring Boot который, можно сказать, все делает за тебя. Основа Спринг была в том, что мы выносили в отдельный файл бины и там уже вся магия происходила, и в этом файле нужно было прописывать все свои бины.
В Спринг Буте же, мы можем обойтись без создания этого файла, сам Boot уже делает за нас все. Нам в начале нужно просто импортировать зависимости (ссылки версии из интернета) Spring Boot и все, можно идти делать свое веб приложение. И в этом модуле очень много используется аннотации вида @ Annotation, который прописывается сверху метода, поля или класса, чтобы что то обозначить, например то что этот класс имеет какие то свойства которые другие не имеют. Чтобы точно рассказать об этом, мне еще нужно время покопаться, но аннотаций очень много и их все нужно выучить😃
А вот вчера я серьезно принялся изучать лямбда выражения и Stream API который очень помогает при работе с коллекциями, то есть с массивами данных. Грубо говоря, стримы и лямбда сокращает код Java в 2-3 раза и делает его более удобочитаемым. Вообще эти термины в Java появились недавно и используются 50/50, но в современных проектах все построено на них. Это так называемый функциональный стиль программирования, а не объектно-ориентированный, коим является Java. Из-за этого не все его любят, но как по мне, функциональный стиль это действительно удобно и красиво, нет нагромождения лишнего кода.
За эти 2 дня, в общей сумме, я занимался 13 часов чистого времени. Скрин с помодорро внизу. Мне нравится темп который я набрал, сейчас процесс обучения движется намного быстрее, 1-2 лишних часа это большое преимущество при долгосрочных целях🌝
На этом все, всем удачи и продуктивного дня🦾
День 87
Вчера решил подтягивать свои знания по некоторым областям, которые необходимы для работы Java программиста и в частности работы с Java Enteprise.
Начал я с изучения принципов которые вечно мне попадались в процессе изучения, это SOLID, KISS, DRY и YAGNI. SOLID - это аббревиатура - принципы по которым нужно писать код, расшифровывается так: принцип единой ответственности, принцип открытости и закрытости, принцип подстановки Барбары Лисков, принцип разделения интерфейсов, принцип - модули высших уровней не должны зависеть от модулей низших уровней. Без модели SOLID невозможно написать правильно структуированную, удобочитаемую и лекоизменяемую программу. Но, честно говоря, все это уже изучалось косвенно в книгах и видео, и я так уже интуитивно пишу, поэтому мне эти принципы никаких инсайтов не дали. Но их важно запомнить, помнить и применять.
Остальные принципы маленькие и косвенно повторяющиеся. Первое KISS - делай короче и проще свой код. DRY - не повторяй код, используй интерфейсы, выноси за пределы класса. А YAGNI - делай так, как сказали. Не надо прикручивать доп. функционал, даже если ты думаешь что это ну уж очень надо.
На этом день начался😃 Следующие 5 с лишним часов я изучал отличия Java EE и Spring, а также основы интернета, как все работает на серверном уровне, и как все это вообще взаимодействует. Много читал про IP, поры, сервлеты, виртуальные машины и еще посмотрел одно видео про Docker, такую модную штуку для развертывания вашего приложения на серверах.
Сегодня день когда я повторяю пройденный материал за неделю. Вчера я занимался 7.2 часа. На этом все, всем удачи и продуктивного дня, ну или отдыха, воскресенье же🦾🙈
Вчера решил подтягивать свои знания по некоторым областям, которые необходимы для работы Java программиста и в частности работы с Java Enteprise.
Начал я с изучения принципов которые вечно мне попадались в процессе изучения, это SOLID, KISS, DRY и YAGNI. SOLID - это аббревиатура - принципы по которым нужно писать код, расшифровывается так: принцип единой ответственности, принцип открытости и закрытости, принцип подстановки Барбары Лисков, принцип разделения интерфейсов, принцип - модули высших уровней не должны зависеть от модулей низших уровней. Без модели SOLID невозможно написать правильно структуированную, удобочитаемую и лекоизменяемую программу. Но, честно говоря, все это уже изучалось косвенно в книгах и видео, и я так уже интуитивно пишу, поэтому мне эти принципы никаких инсайтов не дали. Но их важно запомнить, помнить и применять.
Остальные принципы маленькие и косвенно повторяющиеся. Первое KISS - делай короче и проще свой код. DRY - не повторяй код, используй интерфейсы, выноси за пределы класса. А YAGNI - делай так, как сказали. Не надо прикручивать доп. функционал, даже если ты думаешь что это ну уж очень надо.
На этом день начался😃 Следующие 5 с лишним часов я изучал отличия Java EE и Spring, а также основы интернета, как все работает на серверном уровне, и как все это вообще взаимодействует. Много читал про IP, поры, сервлеты, виртуальные машины и еще посмотрел одно видео про Docker, такую модную штуку для развертывания вашего приложения на серверах.
Сегодня день когда я повторяю пройденный материал за неделю. Вчера я занимался 7.2 часа. На этом все, всем удачи и продуктивного дня, ну или отдыха, воскресенье же🦾🙈
День 88
Опять красивая цифра😃 Вчера был день повторов и такой свободный график по тому что я могу учить. Начал я с решения задач на JavaRush которые остались нерешенными когда-то. Ни одна задача не поставила меня в тупик, хотя в свое время я бросал эти задачи, т.к. не смог решить. Это радует😁. Дальше я начал повторять вопросы по собеседованию. Те вопросы которые я уже учил, на них мог ответить без проблем, может и частично в некоторых деталях, но чтобы я не знаю ничего, такого уже нет.
У меня есть какие то проблемные области в теории еще, типа многопоточности (собираюсь сегодня изучать), ввода-вывода и что касается функционального программирования. Но самая большая проблема в практике. Да, я могу решать задачи с конкретными условиями, но я же хочу написать свой проект, а вот это уже сложно, т.к. нет такого человека кто будет говорить делай это, это и то и все получится. Нужно во всем самому копаться, и скорее всего, учить то что не надо.
Вечером я начал повторять тему обобщений, дженериков. Весьма интересная тема, некоторые моменты я все еще плохо понимаю, в особенности как все это применять на практике в реальном проекте. Но терпение и труд все перетрут✊
Так и прошел день, так и прошла неделя. Учился я вчера 6 часов, а за неделю около 45 часов, что является рекордом🎆. Если такими ударными темпами продолжать, пробелы в знаниях заполнятся очень быстро и можно без труда пройти собеседование. На этом все, всем удачи и продуктивного дня🦾
Опять красивая цифра😃 Вчера был день повторов и такой свободный график по тому что я могу учить. Начал я с решения задач на JavaRush которые остались нерешенными когда-то. Ни одна задача не поставила меня в тупик, хотя в свое время я бросал эти задачи, т.к. не смог решить. Это радует😁. Дальше я начал повторять вопросы по собеседованию. Те вопросы которые я уже учил, на них мог ответить без проблем, может и частично в некоторых деталях, но чтобы я не знаю ничего, такого уже нет.
У меня есть какие то проблемные области в теории еще, типа многопоточности (собираюсь сегодня изучать), ввода-вывода и что касается функционального программирования. Но самая большая проблема в практике. Да, я могу решать задачи с конкретными условиями, но я же хочу написать свой проект, а вот это уже сложно, т.к. нет такого человека кто будет говорить делай это, это и то и все получится. Нужно во всем самому копаться, и скорее всего, учить то что не надо.
Вечером я начал повторять тему обобщений, дженериков. Весьма интересная тема, некоторые моменты я все еще плохо понимаю, в особенности как все это применять на практике в реальном проекте. Но терпение и труд все перетрут✊
Так и прошел день, так и прошла неделя. Учился я вчера 6 часов, а за неделю около 45 часов, что является рекордом🎆. Если такими ударными темпами продолжать, пробелы в знаниях заполнятся очень быстро и можно без труда пройти собеседование. На этом все, всем удачи и продуктивного дня🦾
День 89-90
Как я и говорил в эти дни я чередовал Java и Spring. В понедельник я решил изучить многопоточность в java, ту ее часть которая содержится в библиотеке concurrent. Честно скажу, тема довольна обширная и сложная, научиться применять ее за день невозможно. В первые часы изучения пытался понять зачем вообще нужна эта библиотека и почему ее так часто используют. Оказалось что это "облегченная" версия синхронизации в Java. Т.е. чтобы не использовать каждый раз ключевое слово synchronized, в этой библиотеке содержатся классы и методы которые уже синхронизированы и могут использоваться сразу в многопоточном приложении. На этом примере все просто, но главная проблема заключается в том чтобы все это запомнить и начать использовать.
Я посмотрел с десяток видео и прочитал столько же статей. Выделил несколько классов которые и нужны в основном и начал с ними ковыряться в коде. В процессе туман начал рассеиваться и тема в общем стала более менее понятной. Но чтобы отточить свои навыки нужно еще посидеть ни один час. Пока оставим эту тему на следующую неделю, дальше в планах повторить коллекции.
Что касается Спринга, во вторник я полностью уделил ему время. Допилил веб приложение от ютуб канала alishev. Здесь не было проблем, приложение было простеньким, просто чтобы показать функционал Спринга. А вот дальше я столкнулся с проблемами. Начал смотреть другого блогера и следовать его указаниям к по созданию веб приложения. 1 урок более менее, запустил веб приложение. На втором уроке застрял на несколько часов, оно было посвящено подключению базы данных к проекту.
Базу данных Postgres скачал, создал, и прикрутил к своему проекту. Но тут начались проблему, я добавлял какой то текст с сайта и оно не добавлялось в базу данных. После 2 часов с бубнами и с десяток попыток изменения кода, я нашел проблему. В Html коде я не дописал всего 1 букву, вместо messages, я написал message. И из-за этого не проходило сообщение. Вот такой вот урок, нужно внимательно смотреть, что пишешь😄
За эти 2 дня занимался 12.5 часов, на этом все, всем удачи и продуктивного дня!🦾
Как я и говорил в эти дни я чередовал Java и Spring. В понедельник я решил изучить многопоточность в java, ту ее часть которая содержится в библиотеке concurrent. Честно скажу, тема довольна обширная и сложная, научиться применять ее за день невозможно. В первые часы изучения пытался понять зачем вообще нужна эта библиотека и почему ее так часто используют. Оказалось что это "облегченная" версия синхронизации в Java. Т.е. чтобы не использовать каждый раз ключевое слово synchronized, в этой библиотеке содержатся классы и методы которые уже синхронизированы и могут использоваться сразу в многопоточном приложении. На этом примере все просто, но главная проблема заключается в том чтобы все это запомнить и начать использовать.
Я посмотрел с десяток видео и прочитал столько же статей. Выделил несколько классов которые и нужны в основном и начал с ними ковыряться в коде. В процессе туман начал рассеиваться и тема в общем стала более менее понятной. Но чтобы отточить свои навыки нужно еще посидеть ни один час. Пока оставим эту тему на следующую неделю, дальше в планах повторить коллекции.
Что касается Спринга, во вторник я полностью уделил ему время. Допилил веб приложение от ютуб канала alishev. Здесь не было проблем, приложение было простеньким, просто чтобы показать функционал Спринга. А вот дальше я столкнулся с проблемами. Начал смотреть другого блогера и следовать его указаниям к по созданию веб приложения. 1 урок более менее, запустил веб приложение. На втором уроке застрял на несколько часов, оно было посвящено подключению базы данных к проекту.
Базу данных Postgres скачал, создал, и прикрутил к своему проекту. Но тут начались проблему, я добавлял какой то текст с сайта и оно не добавлялось в базу данных. После 2 часов с бубнами и с десяток попыток изменения кода, я нашел проблему. В Html коде я не дописал всего 1 букву, вместо messages, я написал message. И из-за этого не проходило сообщение. Вот такой вот урок, нужно внимательно смотреть, что пишешь😄
За эти 2 дня занимался 12.5 часов, на этом все, всем удачи и продуктивного дня!🦾
День 91-92
Продолжаю по той же схеме чередуя изучение Джавы и Спринга. По джаве темы уже повторяются, сложно найти что то новое что пригодилось бы для работы Junior специалиста. Одним из последних тем для изучения было логирование. Эта такая вещь которая записывает в файл или куда угодно то что происходит в программе. Но на практике его используют чтобы фиксировать ошибку и после их исправлять.
Для внедрения этой штуки в свою программу есть много инструментов. Но ничего сложного в этом нет, поэтому посмотрел видео, сделал сам и пошел дальше. В этот день я повторил темы которые изучал и посмотрел видео с другими лекторами с другой позиции. Не могу сказать что много нового узнал, но интересные моменты подметил.
По спрингу, все также, смотрю видео и повторяю, пытаюсь вникнуть в код. Что то запоминаю, что то уже понимаю. Архитектура построения приложения мне понятна, но многих используемых классов не знаю и их стоит поучить. Параллельно по видео делаю веб приложение, и вечно сталкиваюсь с какими то багами, сижу их и исправляю. На это уходит больше времени 😃
На этом все, за эти дни учился 8 и 6 часов соответственно. Всем удачи и продуктивного дня!🦾
Продолжаю по той же схеме чередуя изучение Джавы и Спринга. По джаве темы уже повторяются, сложно найти что то новое что пригодилось бы для работы Junior специалиста. Одним из последних тем для изучения было логирование. Эта такая вещь которая записывает в файл или куда угодно то что происходит в программе. Но на практике его используют чтобы фиксировать ошибку и после их исправлять.
Для внедрения этой штуки в свою программу есть много инструментов. Но ничего сложного в этом нет, поэтому посмотрел видео, сделал сам и пошел дальше. В этот день я повторил темы которые изучал и посмотрел видео с другими лекторами с другой позиции. Не могу сказать что много нового узнал, но интересные моменты подметил.
По спрингу, все также, смотрю видео и повторяю, пытаюсь вникнуть в код. Что то запоминаю, что то уже понимаю. Архитектура построения приложения мне понятна, но многих используемых классов не знаю и их стоит поучить. Параллельно по видео делаю веб приложение, и вечно сталкиваюсь с какими то багами, сижу их и исправляю. На это уходит больше времени 😃
На этом все, за эти дни учился 8 и 6 часов соответственно. Всем удачи и продуктивного дня!🦾
День 93-95
Времени особо не было чтобы писать отчёты, занимаюсь по 8 часов каждый день, чтобы максимально получить знания за минимальное время. Эти дни были посвящены Java, Spring и повторам по воскресеньям. По java изучил, повторил темы лямбда, стримы, наследование, дженерики, аннотации, логирование и ещё много тонкостей по другим темам.
По спрингу я делал проект из видео на Ютуб, но делать его не очень просто, т.к. видео старое и приходится лезть в комменты и на официальные сайты фреймворков чтобы обновлять данные. Иначе программа не будет работать. Так, над 2-3 ошибками в одном видео я просидел целый день, но такой кайф в итоге их исправить 😄 Потом за 20 минут написал и запустил уже следующее видео.
Вот так бывает, что на одной строчке можешь сидеть по полдня думать и потом за 20 минут накатать 300 строк кода. Но все равно не было такого чтобы без ошибок все проходит, это реально полезно, т.к. параллельно перечитываю много нюансов которые я бы не увидел без ошибок.
На этой неделе начну мою задумку по созданию боту телеграм, собираюсь его делать с применением всех технологий которые я уже знаю. Также нашел много материалов по этой теме, будет интересно 😄 На этом все, всем удачи и продуктивного дня🦾
Времени особо не было чтобы писать отчёты, занимаюсь по 8 часов каждый день, чтобы максимально получить знания за минимальное время. Эти дни были посвящены Java, Spring и повторам по воскресеньям. По java изучил, повторил темы лямбда, стримы, наследование, дженерики, аннотации, логирование и ещё много тонкостей по другим темам.
По спрингу я делал проект из видео на Ютуб, но делать его не очень просто, т.к. видео старое и приходится лезть в комменты и на официальные сайты фреймворков чтобы обновлять данные. Иначе программа не будет работать. Так, над 2-3 ошибками в одном видео я просидел целый день, но такой кайф в итоге их исправить 😄 Потом за 20 минут написал и запустил уже следующее видео.
Вот так бывает, что на одной строчке можешь сидеть по полдня думать и потом за 20 минут накатать 300 строк кода. Но все равно не было такого чтобы без ошибок все проходит, это реально полезно, т.к. параллельно перечитываю много нюансов которые я бы не увидел без ошибок.
На этой неделе начну мою задумку по созданию боту телеграм, собираюсь его делать с применением всех технологий которые я уже знаю. Также нашел много материалов по этой теме, будет интересно 😄 На этом все, всем удачи и продуктивного дня🦾
День 96-99
Процесс обучения начал замедляться т.к. все ранее неизвестные мне термины были изучены, а теперь стоит в них углубиться. Повторять то что уже "знаешь" не очень весело, но нужно для того чтобы не растерять так трудно добытые знания. Сейчас план такой же, один день изучаю Java, другой Spring. По Спрингу я сейчас делаю бота в телеграм, он по функциональности простой, но его сложно делать так как моих знаний пока не хватает, нужно изучать кучу документаций по Telegram API и библиотеку Java для ботов.
Позавчера я разработал по туториалу и видео простенький бот, который просто отвечает на сообщение рандомным текстом. Но теперь предстоит дать ему ту функциональность которую я хочу. Надеюсь решить этот вопрос до конца месяца, чтобы поставить этот учебный проект в резюме. Это дает несомненный плюс перед другими кандидатами, у которых, скорее всего, не будет никаких практических наработок.
Также, в связи с эпидемиологической ситуацией буду искать работу удаленно, начну в ноябре, когда закончу бота. Если предложат оффер, то тогда уже поеду в офис (или нет, если можно работать удаленно).
В последнее время стал писать реже, т.к. это отвлекает меня от учебы, но если буду писать отчет вечером, то нормально. Так и буду делать в дальнейшем, этот пост тоже был написан вчера (привет из прошлого😃). На этом все, всем удачи и продуктивного дня🦾
Процесс обучения начал замедляться т.к. все ранее неизвестные мне термины были изучены, а теперь стоит в них углубиться. Повторять то что уже "знаешь" не очень весело, но нужно для того чтобы не растерять так трудно добытые знания. Сейчас план такой же, один день изучаю Java, другой Spring. По Спрингу я сейчас делаю бота в телеграм, он по функциональности простой, но его сложно делать так как моих знаний пока не хватает, нужно изучать кучу документаций по Telegram API и библиотеку Java для ботов.
Позавчера я разработал по туториалу и видео простенький бот, который просто отвечает на сообщение рандомным текстом. Но теперь предстоит дать ему ту функциональность которую я хочу. Надеюсь решить этот вопрос до конца месяца, чтобы поставить этот учебный проект в резюме. Это дает несомненный плюс перед другими кандидатами, у которых, скорее всего, не будет никаких практических наработок.
Также, в связи с эпидемиологической ситуацией буду искать работу удаленно, начну в ноябре, когда закончу бота. Если предложат оффер, то тогда уже поеду в офис (или нет, если можно работать удаленно).
В последнее время стал писать реже, т.к. это отвлекает меня от учебы, но если буду писать отчет вечером, то нормально. Так и буду делать в дальнейшем, этот пост тоже был написан вчера (привет из прошлого😃). На этом все, всем удачи и продуктивного дня🦾
День 100 и я готов на все 💯
Но пока это преувеличение😄 Надо еще поднажать по некоторым пунктам. Вчера уделил время тестам по Java. Это сертифицированные тесты Oracle, владельца Java. То есть я сдавал не сам тест, а похожий на него, т.к. сам тест является секретным и выдают его только в сертифицированных центрах за 150$. Если проходишь барьер 65% ты сдал, и ты сертифицированный разработчик Java. У меня вчера было 50% что я считаю неплохим результатом, ошибки которые я совершал я легко разобрал и повторил. Все что там давалось я уже знал, но если не применять их каждый день, то потихоньку забывается.
Сам тест сложный, запутанный. Нужно все смотреть до последней точки, всегда нужно ожидать подвох. Примерная задачка такая: дается код и нужно исправить, сказать что получится, сказать почему не получится, сказать как улучшить и т.п. Еще бывают просто вопросы без кода. И все это на английском, тест на русский не переводится. В стрессе иногда путаешься в понятиях, и не совсем понятно что автор вопроса имеет ввиду, из-за этого тоже было несколько ошибок. Ну, еще очередной повод подтянуть свой английский, особенно технический.
Просмотрел одно интервью на разработчика уровня мидл. То есть человека уже с опытом. Никаких прямо новых вопросов я не услышал, но так, с переменным успехом мог отвечать. Обозначил свои пробелы, в основном связано уже не с Java, а с Hibernate, таким "фреймворком" для работы с базой данных, который повсеместно используется.
На этом все, всем удачи и продуктивного дня🦾
Но пока это преувеличение😄 Надо еще поднажать по некоторым пунктам. Вчера уделил время тестам по Java. Это сертифицированные тесты Oracle, владельца Java. То есть я сдавал не сам тест, а похожий на него, т.к. сам тест является секретным и выдают его только в сертифицированных центрах за 150$. Если проходишь барьер 65% ты сдал, и ты сертифицированный разработчик Java. У меня вчера было 50% что я считаю неплохим результатом, ошибки которые я совершал я легко разобрал и повторил. Все что там давалось я уже знал, но если не применять их каждый день, то потихоньку забывается.
Сам тест сложный, запутанный. Нужно все смотреть до последней точки, всегда нужно ожидать подвох. Примерная задачка такая: дается код и нужно исправить, сказать что получится, сказать почему не получится, сказать как улучшить и т.п. Еще бывают просто вопросы без кода. И все это на английском, тест на русский не переводится. В стрессе иногда путаешься в понятиях, и не совсем понятно что автор вопроса имеет ввиду, из-за этого тоже было несколько ошибок. Ну, еще очередной повод подтянуть свой английский, особенно технический.
Просмотрел одно интервью на разработчика уровня мидл. То есть человека уже с опытом. Никаких прямо новых вопросов я не услышал, но так, с переменным успехом мог отвечать. Обозначил свои пробелы, в основном связано уже не с Java, а с Hibernate, таким "фреймворком" для работы с базой данных, который повсеместно используется.
На этом все, всем удачи и продуктивного дня🦾
День 101
Вчера восполнял свои пробелы по базам данных и в частности по Hibernate. Конечно, за 1 день такой фреймворк не выучить, но основные понятия и сложности которые там возникают можно узнать. Так, я узнал что значили те аннотации которые я прописывал в учебном проекте по Спрингу, оказывается это не совсем чистый Hibernate, а Spring Data с имплементацией Hibernate, он более легкий в использовании и не требует конфигурации, все настройки пишутся автоматически.
После этого, на чистом Hibernate не хочется писать, и в будущем собираюсь применять именно Spring Data + Spring Boot, который включает в себя многие автоматические настройки. Но, конечно, знать внутреннюю структуру Hibernate стоит. Например, если возникнет какая-нибудь ошибка или нужно оптимизировать код для работы с базами данных.
Больше рассказать тут нечего, если буду бросаться терминами будет уже скучно:) Также можно поделиться крутыми статьями тык, тык и тык. Все хорошие статьи уже идут на английском, так как на этом уровне уже нет смысла переводить, все и так должны знать английский.
На этом все, всем удачи и продуктивного дня🦾
Вчера восполнял свои пробелы по базам данных и в частности по Hibernate. Конечно, за 1 день такой фреймворк не выучить, но основные понятия и сложности которые там возникают можно узнать. Так, я узнал что значили те аннотации которые я прописывал в учебном проекте по Спрингу, оказывается это не совсем чистый Hibernate, а Spring Data с имплементацией Hibernate, он более легкий в использовании и не требует конфигурации, все настройки пишутся автоматически.
После этого, на чистом Hibernate не хочется писать, и в будущем собираюсь применять именно Spring Data + Spring Boot, который включает в себя многие автоматические настройки. Но, конечно, знать внутреннюю структуру Hibernate стоит. Например, если возникнет какая-нибудь ошибка или нужно оптимизировать код для работы с базами данных.
Больше рассказать тут нечего, если буду бросаться терминами будет уже скучно:) Также можно поделиться крутыми статьями тык, тык и тык. Все хорошие статьи уже идут на английском, так как на этом уровне уже нет смысла переводить, все и так должны знать английский.
На этом все, всем удачи и продуктивного дня🦾
This media is not supported in your browser
VIEW IN TELEGRAM
Читать документацию? Не...
134 день (не точно)
Прошел месяц и один день как я не писал свои отчеты. Надо исправляться. В этот месяц мой процесс в обучении замедлился. На то были причины, но еще причина была в том что я почти все прошел по теории, а процесс практики очень медленный т.к. нужно перелопатить весь интернет чтобы написать "две строчки". Из-за этой медлительности у меня чуть пропала мотивация. Но сейчас уже привык к этому и потихоньку восстанавливаюсь. Сейчас заполняю свое резюме. Первое что мне нужно сделать, это завершить 2 своих проекта, по телеграм боту и веб-приложению.
Еще, сейчас в процессе быстрого прогресса на JavaRush, стараюсь в минимальные сроки сделать хотя бы 35 уровней (сейчас 27), чтобы это тоже внести в резюме и подписать, что я окончил их курсы. Это будет тоже на пользу. Далее, нужно сделать хорошую фотографию и описание. Краткое, емкое и чтобы глаз HR зацепился. Недавно читал что HR просматривает в среднем резюме соискателя 8 секунд и за это время нужно его чем то зацепить, чтобы он сразу понял, вот он идеальный кандидат.
По теории я готов больше всего, уверенность здесь есть. А вот практику постараюсь максимально подтянуть. Нужно делать тестовые практические задания из интернета и проходить тесты на общее знание Java, что то подобных Oracle тестам.
На этом все, сегодня планирую заниматься минимум 5 часов, а дальше как пойдет. Всем удачи и продуктивного дня🦾
Прошел месяц и один день как я не писал свои отчеты. Надо исправляться. В этот месяц мой процесс в обучении замедлился. На то были причины, но еще причина была в том что я почти все прошел по теории, а процесс практики очень медленный т.к. нужно перелопатить весь интернет чтобы написать "две строчки". Из-за этой медлительности у меня чуть пропала мотивация. Но сейчас уже привык к этому и потихоньку восстанавливаюсь. Сейчас заполняю свое резюме. Первое что мне нужно сделать, это завершить 2 своих проекта, по телеграм боту и веб-приложению.
Еще, сейчас в процессе быстрого прогресса на JavaRush, стараюсь в минимальные сроки сделать хотя бы 35 уровней (сейчас 27), чтобы это тоже внести в резюме и подписать, что я окончил их курсы. Это будет тоже на пользу. Далее, нужно сделать хорошую фотографию и описание. Краткое, емкое и чтобы глаз HR зацепился. Недавно читал что HR просматривает в среднем резюме соискателя 8 секунд и за это время нужно его чем то зацепить, чтобы он сразу понял, вот он идеальный кандидат.
По теории я готов больше всего, уверенность здесь есть. А вот практику постараюсь максимально подтянуть. Нужно делать тестовые практические задания из интернета и проходить тесты на общее знание Java, что то подобных Oracle тестам.
На этом все, сегодня планирую заниматься минимум 5 часов, а дальше как пойдет. Всем удачи и продуктивного дня🦾
135 день
Вчера занимался практикой. Делал веб приложение и задачи на JavaRush. Рассказывать особо нечего, т.к. столкнулся с проблемами, которые до сих пор не могу решить. Разбираюсь с базой данных (Postgres). Проблема в так называемой миграции БД, не могу ее сделать, выскакивает куча ошибок. Постараюсь сегодня эту миграцию завершить. Все это нужно для того чтобы приготовить приложение к деплою, чтобы он был доступен всем по ссылке, а не только мне, на локальном хостинге.
На этом все, завтра постараюсь побольше написать. Всем удачи и продуктивного дня🦾
Вчера занимался практикой. Делал веб приложение и задачи на JavaRush. Рассказывать особо нечего, т.к. столкнулся с проблемами, которые до сих пор не могу решить. Разбираюсь с базой данных (Postgres). Проблема в так называемой миграции БД, не могу ее сделать, выскакивает куча ошибок. Постараюсь сегодня эту миграцию завершить. Все это нужно для того чтобы приготовить приложение к деплою, чтобы он был доступен всем по ссылке, а не только мне, на локальном хостинге.
На этом все, завтра постараюсь побольше написать. Всем удачи и продуктивного дня🦾