Жара начинается! 15% на все курсы!
Весенняя распродажа
00:00:00:00
Our Website is Almost Ready
Launch a targeted campaign.
Scale your infrastructure with our simple service.
Days
Hours
Minutes
Seconds
19 октября

Монолог ментора: Игорь Бузланов, преподаватель курса React Native

Линкедин преподавателя: https://www.linkedin.com/in/igor-buzlanov/
Я хочу работать, но в какой сфере?

Начну с того, как я пришел в IT. После окончания школы поступил на специальность "информационные технологии". Со второго курса проходил стажировки. Пытался как-то устроиться, зацепиться… запомниться. Но в то время у меня не было понимания, с чем я хочу работать, в какой сфере IT.

Учил Java. Не пошло. Пробовал GameDev. Проработал около двух лет, разрабатывая игры на Unity. Но каким бы заманчивым не был этот мир, шаблонность задач приедается. И дело не в самом GameDev, скорее в компании, которая не планировала развивать разработку, например, тех же 3D игр. А мне хотелось именно этого! Развития.

Совпал момент, пригласили на собеседование на позицию фронтендера. Решил попробовать. И в принципе, получилось. Начал узнавать новое, параллельно занимаясь мобильной разработкой, то есть React Native.



Генетическая предрасположенность

С преподаванием получился интересный путь. Еще в универе помогал однокурсникам разобраться со сложными темами. Потом первая работа была связана с обучением детей программированию. Сразу это был Scratch, после верстка (HTML + CSS) и потом JS.

Это не были углубленные, скорее базовые вещи. Но скилл объяснять сложное на простом, понятным для детей языке в будущем очень пригодился. К слову, работал я в этой школе до прошлого года.

Не знаю, важный это факт или не очень, но у меня отец — преподаватель, мама тоже работает с детьми. Возможно и у меня присутствует генетическая предрасположенность к обучению.


Ближе к вопросу

Вероятно, ты читаешь этот текст, с желанием узнать, что такое React Native? Давай разбираться.

React Native — кроссплатформенный фреймворк, позволяющий разрабатывать сразу под несколько платформ, например, Android, iOS и Windows. Приложения, написанные на RN, можно запустить практически на любой операционной системе. Поэтому он настолько популярный.

React Native от React отличается тем, что второй — это все таки библиотека. Кстати, многие путают, называя React фреймворком. Это не так.

Во время разработки React Native накладывает определенные ограничения. Чтобы не пугать, поясню. Ограничения, которые накладывает фреймворк при работе, — это всего лишь обязательства использовать какие-то нативные компоненты. Условно React Native диктует нам правила того, как мы должны им пользоваться. Если в React можно любую часть перевести в чистый JavaScript код. То React Native дает указания, с помощью которых мы должны писать код. Например, для прокрутки списка в React мы будем использовать функцию map и рисовать все элементы. RN предлагает взять flat list, в который нужно лишь загрузить данные, а то, как под капотом он реализовывает прокрутку этих списков, нас не интересует.

Что лучше

Много дискуссий, что лучше: React Native или Flutter. На эту тему можно рассуждать долго, но я, как разработчик RN, всеми правдами буду поддерживать технологию, на которой работаю. И, наверное, самый весомый аргумент — комьюнити. React комьюнити намного больше.

React Native постоянно развивается. Понятно, что и у Flutter есть прикольные фишки. Тем не менее сообщество намного меньше. Да и приложений, написанных на нем, не так много. В то время как с помощью React Native создан тот же Instagram, определенная часть Facebook.



Приложения для смартфонов и авто

В рамках курса мы рассматриваем самое простое — создание мобильного приложения, которое работает и на Android, и на iPhone. Но кроме этого, React Native еще дает много других возможностей. Например, создавать продукты для CarPlay — экран в авто. То есть направление применения широкое. Очень широкое.

Из опыта могу сказать: часто за созданием приложения обращаются банки. Им проще нанять разработчика RN, чем двух отдельно по Swift и Android. Во-первых, это экономит деньги. Во-вторых, не нужно объяснять разным людям одно и то же.

Возможно, у тебя возник вопрос: "не страдает ли от этого качество?" Так вот, нет таких вещей, которые бы указывали, что нативная разработка лучше. Стоит понимать: React Native — обертка, которая все равно задействует нативные компоненты разных ОП.

Самостоятельно с нуля Можно ли понять React Native, не понимая JavaScript? Можно, конечно. Однако это будут не углубленные знания. Для описания логических конструкций и построения приложений, для того чтобы вместе с RN получить полноценную структурную компоненту, нужно знать язык JS и иметь опыт работы с React.



Больше чем

Изучая RN, сталкиваешься с обширностью этого фреймворка. Поэтому мы вынесли его в отдельный курс, а не стали изучать в рамках FrontEnd.

Разработка на React Native подразумевает, что в любом случае придется взаимодействовать с языком Swift и Kotlin. Лезть в них, чтобы что-то донастроить, подключить, добавить. К примеру, есть задача: подключить Apple Pay или Face ID — нативные айфоновские вещи, настройка которых подразумевает работу с родным кодом. Это неотъемлемая часть кроссплатформенной разработки.



Когда курсы лучше Google

Загуглив курс React Native, можно найти различные видео и платформы, на которых размещены уроки. Но помни, все они грешат актуальностью. Что имею в виду? Например, можешь наткнуться на курс, который был записан в

2021-м. Если там приложение пишется на версии React Native, допустим, 0.63, а актуальная сейчас — 0.71, то понятно, что вторая будет отличаться по возможностям оптимизации процессов и другим подкапотным штукам.

Важно при выборе курса обращать внимание на то, чтобы не только занятия проходили online, но и программа была соответствующая актуальной версии React Native. К слову, в TeachMeSkills курс идет в рамках EXPO, а не React Native CLI. Почему так? Чтобы не было привязки к операционной системе Mac. EXPO — упрощенная версия React Native, позволяющая создавать и публиковать приложения. Дает возможность запускать их не только на ОП Mac, но и Windows.

Если, закончив курс по React, решишь самостоятельно изучить RN и написать приложение, то учти, что сделать это получится, но не сразу. Ведь какие-то нюансы и особенности придется догонять в процессе работы. Поэтому многим рекомендую курсы. Там я сразу акцентирую внимание на таких мелочах, разбираю кейсы, рассказываю, как их правильно описывать, подключать, продвигать, изменять.


Перспектива

Я упоминал, что React Native постоянно развивается. Сегодня есть технологии, позволяющие работать с VR. Поэтому спрос на специалистов растет. Заявки приходят и с зарубежного рынка, и с СНГ пока в большинстве на разработку мобильных приложений. Но рынок только набирает обороты.


Вместо вывода

Подписываясь на этот курс, помни: ты идешь знакомиться с мобильной разработкой, с платформой Android, iOS. Это немножко другой мир, в который тебе предстоит войти и изучить.

Если какие-то моменты кажутся сложными, то в мобильной разработке это нормально. Каждый второй React Native разработчик скажет, что такие ситуации случаются. Вроде код один и тот же, но на Android он ведет себя по одному, на iPhone — по-другому. И не понимаешь, в чем проблема… Поэтому вопросы будут возникать. Придется и самостоятельно искать дополнительную информацию. Эта профессия, требующая усидчивости. Но она того стоит!

Это был монолог преподавателя курса "React Native" в TeachMeSkills. Заинтересовало направление? Подробнее о программе можно узнать по ссылке.
    #Входи в айти вместе с TeachMeSkills. По промокоду "РЕАКТ11" мы дарим тебе скидку в размере
    100 BYN на курс React Native разработчик.


    *бонус будет действовать только при первичном обращении и последующем заключении договора
    Интервью провел Николай Костюков
    Понравился материал? Поделись им с друзьями!

    Стань востребованным IT специалистом

    Наша цель — дать тебе знания и опыт, достаточные для трудоустройства в крупнейшие IT компании.