𝘼𝙣𝙙𝙧𝙤𝙞𝙙 𝘿𝙚𝙫𝙚𝙡𝙤𝙥𝙢𝙚𝙣𝙩 – Telegram
𝘼𝙣𝙙𝙧𝙤𝙞𝙙 𝘿𝙚𝙫𝙚𝙡𝙤𝙥𝙢𝙚𝙣𝙩
12 subscribers
54 photos
2 videos
5 files
46 links
𝘼𝙣𝙙𝙧𝙤𝙞𝙙 𝘿𝙚𝙫𝙚𝙡𝙤𝙥𝙢𝙚𝙣𝙩 & 𝙇𝙞𝙛𝙚𝙨𝙩𝙮𝙡𝙚
Download Telegram
#отчёт
День 60:
$Программирование:
Всего 5 часов
(теория)

Так
быстро летят дни, вот уже 60-й по счёту и это круто, ведь я продолжаю вести свой блог и идти к поставленной цели.

Я двигаюсь по заданному плану, с утра правда не удалось почитать книгу, т.к. занимался учёбой в колледже, но в обед сел за курс от EPAM.
Ребят, это сложно, но дико интересно.
Изучал принцип работы FSM(автоматов), системы счисления, принцип работы памяти и кодирования, CPU.
Завтра выходной, а значит больше времени уделю книге по Kotlin.
Всем хороших выходных! :)



$Английский:
-Весь курс от EPAM на английском, так что хочу-не хочу, а понимание развивается)
👍1
#отчёт
День 61:
$Программирование:
Всего 4.36 часа
(3.14 практика,1.22 теория)

Выходные
начались в принципе неплохо.
Продолжил изучать Kotlin, пока застрял на функциях, задачи всё сложнее и сложнее.
А их очень много типов, в частности:
-С единственным выражением, с возвращаемым типом Unit (это когда возвращаем не значение, а другие функции для вывода той или иной информации).

-По EPAM успешно прошёл раздел "Операционные системы", изучали командную строку, работу с пользователями в системе, выдачи доступов и т.д.
Рассматривали Windows и Linux.

-В Android Studio решал проблему с запуском приложения, были бесконечные краши.
Отозвал комит и доводил код до ума, теперь всё работает.
Нужно будет добавить логотип и начну смотреть уроки по Архитектуре!




$Английский:
-Practice ☑️
👍1
#обучение
1)В Java функции и переменные можно объявить только внутри классов.
Это правило не относится к Kotlin, где мы можем объявлять их на уровне файла.⚡️

2) fun `users should be signed out when they click logout` - это обратные кавычки.
Они позволяют использовать более осмысленные имена для тестовых функций.

3) Помимо именованных функций, существуют также анонимные.
Это функции, в которых не объявляем имя.
👍2
#отчёт
День 62:
$Программирование:
Всего 4.54 часа
(2.24 практика,2.30 теория)

Как
-то так :)
Ещё вчера приложение запускалось и корректно работало, сегодня, внедряя preview и logo для отображения картинки при входе, что-то сделал не так и теперь ни в какую не запускается.
Android Studio даже не намекает в чём может быть проблема, что же, будем искать🔎

-EPAM: прошёл сегодня "Работа с сетью и протоколы".

-Книга: заканчиваю функции, уже 5-я глава.





$Английский:
-
👍2
#отчёт
День 63:
$Программирования:
Всего 8.79 часов
(7.22 практики, 1.57 теории)

Одни хорошие новости:)
-Из приятного, приложение работает корректно, при этом я наконец добавил лого и SplashScreen (прикрепил видео).
Также начал осваивать архитектуру MVC, MVP, MVVM
Если вкратце, то:
-MVC - model view control
-MVP - model view presenter
-MVVM - model view model
Грубо говоря, архитектура нам нужна для грамотного построения кода, который будет понятен всем в команде, ведь когда все файлы в куче, толку от этого мало.
Мы создаём package(пакеты), в которые помещаем файлы.
Кстати интересно, что все слои передают друг-другу инфу через Interface.


-EPAM. Прошёл более 90% 1-го модуля.
Остался крайний пункт и завтра уже в прямом эфире будет разбор всех заданий.

-Книгу сегодня не читал, перенёс на завтра.

$Английский:
-
👍1👏1🤩1
#отчёт
День 64:
$Программирования:
Всего 4.45 часов
(3.30 теории, 1.15 практики)

Продвигался
в основном по курсу от EPAM, а именно прошёл первый модуль на 100%, завтра вечером будет первый стрим с ответами на вопросы☑️

-Книга: продолжил практиковать функции, а именно анонимные и их применение. На ночь читается тяжело, впредь буду стараться читать утром.

-Андроид: Нужно отобразить постеры в recyclerview одинакового размера и начал смотреть лекцию по MVVM архитектуре на полезном канале BorisProIT

$Английский:
- Project interviews in english.
Examples of interviews with hr's and technical specialists.
Get some unique information for future interviews.
👍1
#обучение
Кстати прошёл тест по английскому от EPAM, результат уже второй раз A2 :)
Это, грубо говоря, pre-intermediate.

Подходит для чтения документации, но маловато, будем прокачивать.
👍2
#отчёт
День 65:
$Программирования:
Всего 2.35 часов
(1.09 практики, 1.26 теории)

После
учёбы планировал читать книгу.
Прочитав пару страниц резко уложило в сон и проспал с обеда до вечера :)
Успел сегодня попасть на первую онлайн лекцию(Intro) от EPAM.
Там рассказывали о специфике курса и возможностях после обучения.

-Книга: Изучал Null-безопасность и исключения.
Если вкратце:
Null - это спец. значение, которое показывает что значения val & var не существуют.
Во многих языках программирования, в том числе и Java - это частая причина сбоев, потому что несуществующая величина не может выполнить работу.
Некоторым элементам в Kotlin может быть присвоена null, некоторым - нет.
-Первые - nullable(null возможен), а вторые - non-nullable.

-Андроид: к сожалению, не дошёл до разработки, завтра исправлюсь.

$Английский:
-
👍1
#отчёт
День 66:
$Программирования:
Всего 4.75 часа
(4.33 практики, 0.42 теории)

Итак
, начну ночной отчёт с того, что задания все, с горем по пополам, но выполнил.
Хотя и с MVVM архитектурой ещё не разобрался, оказалось сложнее, чем я думал : )

-EPAM: Прошёл 1-й этап второго модуля, а именно основы программирования, теория про создание ЯП, таких как Java, Python, C/C++, C# и др.
Компиляторы, интерпретаторы - в общем те темы, в которых я более-менее разбираюсь.


-Книга: Изучал Строки (strings) - 7й раздел.
Скажу, что в книге, пусть и сложным языком, но дают фундаментальную базу для написания кода.
В видео на ютуб мне этого часто не хватает, но я стараюсь совмещать и то и другое.

-Андроид: Смотрел уроки по MVVM архитектуре, попутно читая статьи на эту тему.
Мне больше всего понравился принцип раздельных модулей, т.е. -presentation, -data, -model слои формируем на раздельные модули в приложении.
Есть конечно ещё варианты Clean Architecture, но в любом подходе есть свои + и -.
Начну пока с этого подхода.

$Английский:
-
🔥2
#отчёт
День 66:
$Программирования:
Всего 50 минут
(50 минут практики)

Немного
стыдно выкладывать данный отчёт, но нужно публиковать всё как есть.
Сегодня по видеоуроку старался понять функции в Kotlin, т.к. после книги остались вопросы.
Более-менее уяснил всё.


-Книга: -

-Андроид: -

$Английский:
-
👍2
#отчёт
День 67:
$Программирования:
Всего 1.15 часов
(1.05 практики, 10.30 теории)

Выходные
зачастую не самые результативные, но ежедневно хоть понемногу заниматься я должен!

Не забыл сегодня про обучение в EPAM и прошёл вторую лекцию модуля "Основы программирования", а именно Символы и слова.

-Книга:
Прошёл полностью тему "Strings"
Момент о котором не знал, так это возможность извлечения одной строки из другой. Используем для этого: substring, split.

-Андроид:
-

$Английский:
Чтение лекции EPAM, она полностью на английском языке.
#отчёт
День 68,69:
$Программирования:
Всего 4.15 часа
(2 часа практики, 2.15, теории)

Отчёт за 2 дня, такая активность в связи с днём рождения близкого человека ;)

-Андроид: Изучал жизненный цикл Lifecycle.

$Английский:
-
#отчёт
День 70:
$Программирования:
Всего 1.35 часов
(1.15 практики, 20 теории)

Решил
подучить английский, т.к. на курсах был недельный перерыв.
Также по книге полностью прошёл строки и перешёл к числам.
Сейчас пишу курсовую по учёбе, также грядут экзамены, поэтому активность на канале просела, но это не значит что нужно бросать. Сейчас важно правильно распределять своё время

-Книга: Пройдено String, начал Numbers.

-Андроид: -

$Английский:
Lesson
05, part 02.
Grammar practice, learn some new words.
#отчёт
День 71:
$Программирования:
Всего 2 часа
(2 часа практики)

Во время изучения MVVM архитектуры, возник резонный вопрос, "Чем отличается Interface от абстрактного класса". Часто вопрос задают на собеседованиях, поэтому для себя я осмыслил так:
Основная разница в том, что интерфейс определяет только поведение, ничего не сообщая об объекте. А именно, бег может выполнять, как обьект человек, так и животное, например.
Второй раз пересматриваю видео Бориса про MVVM, завтра планирую всё-таки реализовать архитектуру.

Сегодня было много дел в реале, поэтому успел не так много

-Книга: С книгой решил приостановить, слишком много времени трачу на написание непрактического кода, который лучше бы тратил на написание приложения.
Базовые знания получил, дальше двигаемся только через практику.💡

$Английский:
-
👍1
Добрый вечер, ребят!
В первую очередь, хочу сказать спасибо тем, кто подписан и поддерживает, это мотивирует заниматься.
Сейчас у меня такая ситуация, когда нужно в краткие сроки найти работу, желательно в IT.

Поэтому вот как я поступлю:
-Постараюсь попасть на работу/стажировку на менее тех. должности;
-Работая в компании, попутно перебраться в разработку.

Андроид забрасывать не буду, мне нравиться данная стезя, поэтому посты будут выходить, но скорее не в формате отчётов :)

Спасибо за понимание🙂
👍1
Доброе утро всем👋
В общем ребят, этой ночью я слишком много дискутировал на тему работы в IT.
Выбор направления, возможности в сфере и т.д.

Очень много людей давали советы по дальнейшему продвижению и я всё-таки сформировал своё мнение💡

У меня есть не самая лучшая черта, я часто начинаю очень самоуверенно, а позже всё это идёт резко на спад, со мной было подобное в сфере рекламы, которую я изучал раньше :(
Но в этот раз есть отличие, и крайне весомое, мой Блог в котором меня могут поддержать и дать напутствие другие люди, соответственно и я могу сделать тоже самое для других💪

В этот раз я не заброшу то, что начал, независимо от обстоятельств. По крайней мере, буду стремиться быстрее попасть на работу Android dev'om !
Спасибо, что следите и даёте советы, я всегда рад дискуссиям и осознанной аудитории в моём блоге :)
🔥2
#обучение

Итак, сразу пост, как обычно:)
Кто-то из вас проходил обучение на сайте Google Developers?
У меня тут есть несколько бейджей(пройденных курсов), слышал недавно вышел курс по Compose официальный.

Думаю стоит пройти, а вы как думаете?
#обучение
Давно не было технической информации...
Dependency Injection🔎

Изучая MVVM в очередной раз наткнулся на внедрение зависимостей, нужно разобрать это более детально.💡

Какую проблему решает?
В первую очередь, уменьшает связность кода, что очень важно при разработке, помогает при модульном тестировании (где тестируются отдельные модули программы), расширение приложения становится проще,
количество шаблонного кода сокращается.

Понятие
DI(Dependency Injection) - это когда вы своему компоненту (например, классу) предоставляете нужные для него зависимости извне, а не создаете их сами в конструкторе.
НО, важно понимать что DI - это реализация принципа ООП IoC(Inversion of Control).
Суть IoC в том, что каждый элемент нашей программы (класс например) должен быть наиболее изолированным от других.
Кстати, также реализовать IoC можно не только с помощью DI, но также используя Factory Method, Service Locator.

Библиотеки/Фреймворки для внедрения зависимости:
-Dagger 2
-Koin (специально под Kotlin)
Кто пишет на Kotlin, стоит обратить внимание на Koin.

3 типа внедрения Зависимостей:
1)constructor injection - зависимости передаются через конструктор класса
2)setter injection - добавляем setter-метод, с помощью которого injection внедряет зависимость.
3)interface injection - зависимости передаются через интерфейс.