Forwarded from Mobile Events - митапы, конференции, хакатоны и другие интересные мероприятия по мобильной разработке
🗓 29 сентября в 19:00 состоится совместный митап СберМаркет Tech и сообщества Coffee&Code на тему мобильной разработкиt.
Программа:
1. Горизонтальная карусель для баннеров на SwiftUI
Александр Соломатов — iOS Chapter Lead в CберМаркете:
Расскажу про то, как мы живём уже больше года в проде со SwiftUI…
2. Гайд по анимациям в React Native
Евгений Прокопьев — Android Developer в CберМаркете:
Расскажу про библиотеки анимации: что с чем использовать и как это работает внутри.
3. Keyboard avoiding in SwiftUI
Валерий Скворцов —iOS Developer в СберМаркете:
В ходе разработки приложения появляются кейсы, когда клавиатура затрудняет взаимодействие пользователя с UI или же блокирует его совсем…
4. Boost your coordinators
Александр Сычев — Head of mobile в СберЗдоровье:
В докладе разберем, как можно получить максимум от координаторов
💻 Онлайн
🍕Офлайн с пиццей и общением. А еще на митап заглянут ребята из сообщества Coffee&Code с wow-активностью для гостей.
✅ Регистрация и более подробная информация
Программа:
1. Горизонтальная карусель для баннеров на SwiftUI
Александр Соломатов — iOS Chapter Lead в CберМаркете:
Расскажу про то, как мы живём уже больше года в проде со SwiftUI…
2. Гайд по анимациям в React Native
Евгений Прокопьев — Android Developer в CберМаркете:
Расскажу про библиотеки анимации: что с чем использовать и как это работает внутри.
3. Keyboard avoiding in SwiftUI
Валерий Скворцов —iOS Developer в СберМаркете:
В ходе разработки приложения появляются кейсы, когда клавиатура затрудняет взаимодействие пользователя с UI или же блокирует его совсем…
4. Boost your coordinators
Александр Сычев — Head of mobile в СберЗдоровье:
В докладе разберем, как можно получить максимум от координаторов
💻 Онлайн
🍕Офлайн с пиццей и общением. А еще на митап заглянут ребята из сообщества Coffee&Code с wow-активностью для гостей.
✅ Регистрация и более подробная информация
👍6
Начальный уровень. UIKit.
Жизненный цикл UIViewController.
Опять же фундаментальная тема, вопросы по которой задают очень часто. Возможно вы получите какие-то косвенные вопросы, на которые обязательно нужно знать ответы, например, в какой момент времени view знает свои размеры, в какой момент создаётся view, скоро раз вызывается метод viewDidLoad, один или может несколько и т.д.
Сам жизненный цикл состоит из следующих методов:
Создание
• init
• initWithNibName
Создание view
• isViewLoaded
• loadView
• viewDidLoad
• initWithFrame
• initWithCoder
Обработка изменения состояния view
• viewDidLoad
• viewWillAppear
• viewDidAppear
• viewWillDisappear
• viewDidDisappear
• viewDidUnload
Обработка memory warning
• didReceiveMemoryWarning
Уничтожение
• viewDidUnload (deprecated уже давно)
• deinit
Если вы не смогли ответить на вопросы, что-то не понимаете или увидели незнакомые методы, то ознакомьтесь с исчерпывающей статьей на хабре по ссылке ниже 👇👇👇 (Она хоть и старая, но до сих пор актуальная, только viewDidUnload уже нет)
#SwiftInterviewBeginner
#SwiftInterviewUIKit
https://habr.com/ru/post/129557/
Жизненный цикл UIViewController.
Опять же фундаментальная тема, вопросы по которой задают очень часто. Возможно вы получите какие-то косвенные вопросы, на которые обязательно нужно знать ответы, например, в какой момент времени view знает свои размеры, в какой момент создаётся view, скоро раз вызывается метод viewDidLoad, один или может несколько и т.д.
Сам жизненный цикл состоит из следующих методов:
Создание
• init
• initWithNibName
Создание view
• isViewLoaded
• loadView
• viewDidLoad
• initWithFrame
• initWithCoder
Обработка изменения состояния view
• viewDidLoad
• viewWillAppear
• viewDidAppear
• viewWillDisappear
• viewDidDisappear
• viewDidUnload
Обработка memory warning
• didReceiveMemoryWarning
Уничтожение
• viewDidUnload (deprecated уже давно)
• deinit
Если вы не смогли ответить на вопросы, что-то не понимаете или увидели незнакомые методы, то ознакомьтесь с исчерпывающей статьей на хабре по ссылке ниже 👇👇👇 (Она хоть и старая, но до сих пор актуальная, только viewDidUnload уже нет)
#SwiftInterviewBeginner
#SwiftInterviewUIKit
https://habr.com/ru/post/129557/
Хабр
Жизненный цикл UIViewController'a
Большинство прикладных приложения под iOS таким или иным образом используют UIViewController'ы. Там где UIKit фрэймворк — там и UIViewController'ы. Их много, они...
👍8
Forwarded from Mobile Events - митапы, конференции, хакатоны и другие интересные мероприятия по мобильной разработке
6 октября в 19:00 red_mad_robot и эксперты из «Иннотеха» приглашают поучаствовать в митапе, который пройдёт в московском Робохранилище. Он будет посвящён свежим технологиям, доступным в новых версиях iOS, обобщённому программированию, метаморфозам архитектуры и нативной навигации, так же будет онлайн-трансляция. Митап проводим для джун- и мидл-специалистов.
Хорошая возможность, чтобы пообщаться, поделиться опытом, поесть пиццу и послушать доклады. 🍕🍕🍕
Более подробная информация и регистрация здесь 👇👇👇
https://redmad.timepad.ru/event/2173120/
Хорошая возможность, чтобы пообщаться, поделиться опытом, поесть пиццу и послушать доклады. 🍕🍕🍕
Более подробная информация и регистрация здесь 👇👇👇
https://redmad.timepad.ru/event/2173120/
👍6
Начальный уровень. Алгоритмы.
Алгоритмическая сложность. Аннотация Big O.
Алоха друзья! Этим постом мы открываем важную тему в программировании «Алгоритмы» и целую область вопросов, попадающихся на собеседовании.
Каждому, даже начинающему программисту необходимо знать аннотацию Big O, какая алгоритмическая сложность у цикла, вложенного цикла, вставки в массив, в множество, пузырьковая сортировка и т.п. Все это поможет делать ваш код более оптимальным и избегать затратных алгоритмов. Начнём пока с самых азов, знания которых как правило достаточно для джунов, в следующих постах мы углубимся в тему.
Сложность алгоритма - это количественная характеристика, которая говорит о том, сколько времени, либо какой объём памяти потребуется для выполнения алгоритма.
Big O показывает то, как сложность алгоритма растёт с увеличением входных данных. При этом она всегда показывает худший вариант развития событий - верхнюю границу.
Распространённые сложности алгоритмов:
• O(1) - константная
• O(n) - линейная
• O(log n) - логарифмическая
• O(n * log n) - линеарифметическая или линеаризованная
• O(n2), O(n^2) - квадратичная
Наглядно зависимость времени обработки от входящих данных для различных алгоритмов можете увидеть в прикреплённом графике. На нем, например, видно как сильно отличаются графики для простого цикла (линейная сложность) и вложенного (квадратичная). Более подробно с примерами в статье 👇👇👇
#SwiftInterviewBeginner
#SwiftInterviewAlgorithms
https://bimlibik.github.io/posts/complexity-of-algorithms/
Алгоритмическая сложность. Аннотация Big O.
Алоха друзья! Этим постом мы открываем важную тему в программировании «Алгоритмы» и целую область вопросов, попадающихся на собеседовании.
Каждому, даже начинающему программисту необходимо знать аннотацию Big O, какая алгоритмическая сложность у цикла, вложенного цикла, вставки в массив, в множество, пузырьковая сортировка и т.п. Все это поможет делать ваш код более оптимальным и избегать затратных алгоритмов. Начнём пока с самых азов, знания которых как правило достаточно для джунов, в следующих постах мы углубимся в тему.
Сложность алгоритма - это количественная характеристика, которая говорит о том, сколько времени, либо какой объём памяти потребуется для выполнения алгоритма.
Big O показывает то, как сложность алгоритма растёт с увеличением входных данных. При этом она всегда показывает худший вариант развития событий - верхнюю границу.
Распространённые сложности алгоритмов:
• O(1) - константная
• O(n) - линейная
• O(log n) - логарифмическая
• O(n * log n) - линеарифметическая или линеаризованная
• O(n2), O(n^2) - квадратичная
Наглядно зависимость времени обработки от входящих данных для различных алгоритмов можете увидеть в прикреплённом графике. На нем, например, видно как сильно отличаются графики для простого цикла (линейная сложность) и вложенного (квадратичная). Более подробно с примерами в статье 👇👇👇
#SwiftInterviewBeginner
#SwiftInterviewAlgorithms
https://bimlibik.github.io/posts/complexity-of-algorithms/
👍9
Forwarded from Mobile Events - митапы, конференции, хакатоны и другие интересные мероприятия по мобильной разработке
Intern week offer — ускоренный путь для тех, кто хочет на стажировку в Яндекс. Хорошая возможность попасть в крупную ит компанию.
В рамках нового проекта вы сможете пройти собеседования и получить приглашение в команду всего за 7 дней. Направления: Backend (Python, Java), Frontend или Mobile (iOS, Android).
Что нужно сделать:
✅ заполнить анкету на сайте: https://clck.ru/32G595
✅ выполнить тестовое задание до 30 октября
✅ пройти секции и финалы, которые начнутся 7 ноября
✅ если всё пройдёт хорошо — сразу же получить заветный оффер
Условия стажировки:
🔥 стажировки в Яндексе вам оплачиваются и длятся от 3 до 6 месяцев
🔥 занятость вы выбираете сами: 20, 30 или 40 часов в неделю
🔥 иногородним стажёрам оплачиваем проезд и проживание в Москве
Более подробная информация и регистрация 👇👇👇
https://clck.ru/32G595
В рамках нового проекта вы сможете пройти собеседования и получить приглашение в команду всего за 7 дней. Направления: Backend (Python, Java), Frontend или Mobile (iOS, Android).
Что нужно сделать:
✅ заполнить анкету на сайте: https://clck.ru/32G595
✅ выполнить тестовое задание до 30 октября
✅ пройти секции и финалы, которые начнутся 7 ноября
✅ если всё пройдёт хорошо — сразу же получить заветный оффер
Условия стажировки:
🔥 стажировки в Яндексе вам оплачиваются и длятся от 3 до 6 месяцев
🔥 занятость вы выбираете сами: 20, 30 или 40 часов в неделю
🔥 иногородним стажёрам оплачиваем проезд и проживание в Москве
Более подробная информация и регистрация 👇👇👇
https://clck.ru/32G595
🔥5👍1
Начальный уровень. Общие вопросы.
Принципы SOLID.
Алоха друзья! Сегодня мы разберём один из базовых вопросов на собеседовании. Итак, SOLID - это мнемонический акроним для первых пяти принципов, названных Робертом Мартином в начале 2000-х, которые означали 5 основных принципов объектно-ориентированного программирования и проектирования. Использование принципов SOLID способствует созданию системы, которую будет легко поддерживать и расширять в течение долгого времени.
Разберём подробнее каждую букву:
• S - Single-responsibility principle/ Принцип единственной ответственности
Для каждого класса должно быть определено единственное назначение. Все ресурсы, необходимые для его осуществления, должны быть инкапсулированы в этот класс и подчинены только этой задаче
• O - Open–closed principle / Принцип открытости-закрытости
Программные сущности должны быть открыты для расширения, но закрыты для модификации
• L - Liskov substitution principle / Принцип подстановки Лисков
Объекты родительских классов должны быть заменимы объектами подклассов без изменения поведения приложения
• I - Interface segregation principle / Принцип разделения интерфейсов
Слишком «толстые» интерфейсы необходимо разделять на более маленькие и специфические, чтобы программные сущности маленьких интерфейсов знали только о методах, которые необходимы им в работе. В итоге, при изменении метода интерфейса не должны меняться программные сущности, которые этот метод не используют
• D - Dependency inversion principle / Принцип инверсии зависимостей
При разработке нужно полагаться на абстракции, а не на конкретные реализации. Компоненты ПО должны иметь низкую связность и высокую согласованность.
Часто спрашивают не все принципы, а какой-то один, например, чаще почему-то именно принцип подстановки Лисков. Иногда просят привести пример нарушения принципов SOLID, в стандартных библиотеках, фреймворках от Apple. Тут можно указать, что в языке Swift есть механизм переопределения функции (override func), который нарушает принцип Принцип открытости-закрытости. Так же можно привести пример UIStackview, который игнорирует backgroundColor, тем самым нарушается принцип подстановки Лисков.
Более наглядно в статье по принципам SOLID 👇👇👇
#SwiftInterviewBeginner
#SwiftInterviewGeneral
https://habr.com/ru/company/productivity_inside/blog/505430/
Принципы SOLID.
Алоха друзья! Сегодня мы разберём один из базовых вопросов на собеседовании. Итак, SOLID - это мнемонический акроним для первых пяти принципов, названных Робертом Мартином в начале 2000-х, которые означали 5 основных принципов объектно-ориентированного программирования и проектирования. Использование принципов SOLID способствует созданию системы, которую будет легко поддерживать и расширять в течение долгого времени.
Разберём подробнее каждую букву:
• S - Single-responsibility principle/ Принцип единственной ответственности
Для каждого класса должно быть определено единственное назначение. Все ресурсы, необходимые для его осуществления, должны быть инкапсулированы в этот класс и подчинены только этой задаче
• O - Open–closed principle / Принцип открытости-закрытости
Программные сущности должны быть открыты для расширения, но закрыты для модификации
• L - Liskov substitution principle / Принцип подстановки Лисков
Объекты родительских классов должны быть заменимы объектами подклассов без изменения поведения приложения
• I - Interface segregation principle / Принцип разделения интерфейсов
Слишком «толстые» интерфейсы необходимо разделять на более маленькие и специфические, чтобы программные сущности маленьких интерфейсов знали только о методах, которые необходимы им в работе. В итоге, при изменении метода интерфейса не должны меняться программные сущности, которые этот метод не используют
• D - Dependency inversion principle / Принцип инверсии зависимостей
При разработке нужно полагаться на абстракции, а не на конкретные реализации. Компоненты ПО должны иметь низкую связность и высокую согласованность.
Часто спрашивают не все принципы, а какой-то один, например, чаще почему-то именно принцип подстановки Лисков. Иногда просят привести пример нарушения принципов SOLID, в стандартных библиотеках, фреймворках от Apple. Тут можно указать, что в языке Swift есть механизм переопределения функции (override func), который нарушает принцип Принцип открытости-закрытости. Так же можно привести пример UIStackview, который игнорирует backgroundColor, тем самым нарушается принцип подстановки Лисков.
Более наглядно в статье по принципам SOLID 👇👇👇
#SwiftInterviewBeginner
#SwiftInterviewGeneral
https://habr.com/ru/company/productivity_inside/blog/505430/
Хабр
Принципы SOLID в картинках
Если вы знакомы с объектно-ориентированным программированием , то наверняка слышали и о принципах SOLID . Эти пять правил разработки ПО задают траекторию, по которой нужно следовать, когда пишешь...
👍9🔥2❤1
Средний уровень. Многопоточность.
Задача на изображении. Что выведется на экран?
Алоха друзья! Сегодня мы начнём разбирать ещё одну часть большинства собеседований — задачи. Не думайте, что всегда это обязательно какие-то сложные алгоритмы или кейсы (хотя надо быть и готовым и к ним). Независимо от роли на которую вы претендуете могут быть и несложные примеры на проверку знаний. Данная задача по многопоточности мне попалась на двух собеседованиях подряд в большие финтех компании. Попробуйте решить сами перед тем как посмотреть ответ 👇👇👇.
#SwiftInterviewMedium
#SwiftInterviewMultithreading
#SwiftInterviewTasks
Задача на изображении. Что выведется на экран?
Алоха друзья! Сегодня мы начнём разбирать ещё одну часть большинства собеседований — задачи. Не думайте, что всегда это обязательно какие-то сложные алгоритмы или кейсы (хотя надо быть и готовым и к ним). Независимо от роли на которую вы претендуете могут быть и несложные примеры на проверку знаний. Данная задача по многопоточности мне попалась на двух собеседованиях подряд в большие финтех компании. Попробуйте решить сами перед тем как посмотреть ответ 👇👇👇.
#SwiftInterviewMedium
#SwiftInterviewMultithreading
#SwiftInterviewTasks
👍10🔥2
Forwarded from CocoaHeads (Nikita Maidanov)
🎉 Долгожданный CocoaHeads в четверг, 27 октября в 18:00 (МСК)!
🖼 Александр Скворцов, Павел Курчатов и Ольга Ким (все Яндекс) помогут нам разобраться с DivKit — новым опенсорсным фреймворком для server-driven UI от Яндекса. Пока Александр и Павел будут рассказывать о фреймворке и отвечать на вопросы, Ольга в прямом эфире сверстает экран приложения!
🍭 Илья Чикмарев (CocoaHeads) расскажет про перфоманс в SwiftUI, как заставить его работать чуть-чуть лучше и избежать популярных ошибок.
🔥 В конце традиционный квиз! Проверьте, что есть доступ к платформе Kahoot заранее (может быть нужен VPN), чтобы поучаствовать и получить призы
Ждем всех в четверг в 18:00 в Zoom, ссылка будет в канале, не пропускайте!
Запись будет позже на нашем YouTube
🖼 Александр Скворцов, Павел Курчатов и Ольга Ким (все Яндекс) помогут нам разобраться с DivKit — новым опенсорсным фреймворком для server-driven UI от Яндекса. Пока Александр и Павел будут рассказывать о фреймворке и отвечать на вопросы, Ольга в прямом эфире сверстает экран приложения!
🍭 Илья Чикмарев (CocoaHeads) расскажет про перфоманс в SwiftUI, как заставить его работать чуть-чуть лучше и избежать популярных ошибок.
🔥 В конце традиционный квиз! Проверьте, что есть доступ к платформе Kahoot заранее (может быть нужен VPN), чтобы поучаствовать и получить призы
Ждем всех в четверг в 18:00 в Zoom, ссылка будет в канале, не пропускайте!
Запись будет позже на нашем YouTube
👍6🔥2
Начальный уровень. Работа с памятью.
Расскажите про работу с памятью в Swift.
Доброго времени суток! Сегодня мы начнём разбирать вопрос, который попадается на собеседовании в не зависимости от роли, на которую вы претендуете. В этом посте разберём что необходимо знать джуну для ответа, а именно что такое reference/value type, что хранится в стеке, а что в куче, принцип работы arc, как избежать зацикливания сильных ссылок.
Value/Reference Types
Value и Reference Types — это основные концепции Swift. В Swift есть три способа объявления типа: классы, структуры и перечисления. Их можно разделить на типы значений (структуры, перечисления, базовые типы) и ссылочные типы (классы, функции, замыкания). То, как они хранятся в памяти, определяет разницу между ними:
• Value Type — каждая переменная типа значения имеет свою собственную копию данных, и операции с одной не влияют на другую. За него отвечает стэк;
• Reference Type — у нас есть ссылка, указывающая на это место в памяти. Переменные ссылочного типа могут указывать на одни и те же данные; следовательно, операции с одной переменной могут повлиять на данные, указанные другой переменной. За него отвечает куча.
ARC
Количество ссылок на один объект может увеличиваться и уменьшаться. В Swift для того чтобы отслеживать этого количество и при уменьшении его до нуля освобождать объект из памяти существует механизм ARC (Automatic Reference Counter).
Retain cycle
При подсчете ссылок может возникнуть ситуация, когда два объекта ссылаются друг на друга, что делает невозможным их высвобождение из памяти, потому что оба их счетчика ссылок (retain count) всегда будут равны единице или больше. То есть происходит ситуация зацикливания сильных ссылок (retain cycle). Для ее исправления нужно сделайте одну из ссылок weak или unowned.
• Слабая(weak) ссылка: не увеличивает счетчик ссылок. Слабые ссылки всегда объявляются как необязательные (optional) типы. Когда счетчик ссылок становится равным нулю, объект автоматически будет деаллоцирован.
• Unowned ссылки: тут точно так же, как и со слабыми ссылками. Она не увеличивает счетчик ссылок. Основное отличие в том, что это не необязательный тип. Если вы попытаетесь получить доступ к unowned свойству, которое ссылается на деинициализированный объект, вы получите ошибку времени выполнения, сравнимую с принудительной распаковкой необязательного типа с nil.
Это краткий ответ по основным пунктам, более подробно в том числе про кучу и стек по ссылке снизу 👇👇👇
#SwiftInterviewBeginner
#SwiftInterviewMemory
https://habr.com/ru/company/otus/blog/649329/
Расскажите про работу с памятью в Swift.
Доброго времени суток! Сегодня мы начнём разбирать вопрос, который попадается на собеседовании в не зависимости от роли, на которую вы претендуете. В этом посте разберём что необходимо знать джуну для ответа, а именно что такое reference/value type, что хранится в стеке, а что в куче, принцип работы arc, как избежать зацикливания сильных ссылок.
Value/Reference Types
Value и Reference Types — это основные концепции Swift. В Swift есть три способа объявления типа: классы, структуры и перечисления. Их можно разделить на типы значений (структуры, перечисления, базовые типы) и ссылочные типы (классы, функции, замыкания). То, как они хранятся в памяти, определяет разницу между ними:
• Value Type — каждая переменная типа значения имеет свою собственную копию данных, и операции с одной не влияют на другую. За него отвечает стэк;
• Reference Type — у нас есть ссылка, указывающая на это место в памяти. Переменные ссылочного типа могут указывать на одни и те же данные; следовательно, операции с одной переменной могут повлиять на данные, указанные другой переменной. За него отвечает куча.
ARC
Количество ссылок на один объект может увеличиваться и уменьшаться. В Swift для того чтобы отслеживать этого количество и при уменьшении его до нуля освобождать объект из памяти существует механизм ARC (Automatic Reference Counter).
Retain cycle
При подсчете ссылок может возникнуть ситуация, когда два объекта ссылаются друг на друга, что делает невозможным их высвобождение из памяти, потому что оба их счетчика ссылок (retain count) всегда будут равны единице или больше. То есть происходит ситуация зацикливания сильных ссылок (retain cycle). Для ее исправления нужно сделайте одну из ссылок weak или unowned.
• Слабая(weak) ссылка: не увеличивает счетчик ссылок. Слабые ссылки всегда объявляются как необязательные (optional) типы. Когда счетчик ссылок становится равным нулю, объект автоматически будет деаллоцирован.
• Unowned ссылки: тут точно так же, как и со слабыми ссылками. Она не увеличивает счетчик ссылок. Основное отличие в том, что это не необязательный тип. Если вы попытаетесь получить доступ к unowned свойству, которое ссылается на деинициализированный объект, вы получите ошибку времени выполнения, сравнимую с принудительной распаковкой необязательного типа с nil.
Это краткий ответ по основным пунктам, более подробно в том числе про кучу и стек по ссылке снизу 👇👇👇
#SwiftInterviewBeginner
#SwiftInterviewMemory
https://habr.com/ru/company/otus/blog/649329/
Хабр
Память в Swift (куча, стек, ARC)
Для хранения объектов Swift использует две структуры данных: стек и кучу. Управление распределением памяти подразумевает выделение памяти под объект (аллокацию) и ее последующее высвобождение...
👍8🔥3
Forwarded from Mobile Events - митапы, конференции, хакатоны и другие интересные мероприятия по мобильной разработке
Mobius — большая техническая конференция по мобильной разработке.
🗓 Ближайшая конференция: Mobius 2022 Autumn, 9–10 ноября · Online
🗓 Offline-день + Online: 21 ноября · Москва
Темы конференции:
✅ Работа платформ (iOS / Android) и языков программирования (Swift / Kotlin / Flutter / Java) под капотом;
✅ Software Craftsmanship (подходы и практики в разработке мобильных приложений и работе с фреймворками);
✅ Архитектура (архитектурные паттерны, legacy и рефакторинг, модуляризация);
✅ Качество продукта (производительность, UI/UX, безопасность);
✅ Тренды в мобильной разработке (SPM, open source-решения и лучшие практики)
А кроме этого — еще 41 спикер из Яндекса, Сбера, Gradle, VK, Тинькофф, Skyeng и других компаний 🔥🔥🔥
На Mobius вы сможете не только послушать выступления, но и задать вопросы спикерам, а также пообщаться с другими единомышленниками. И промокоды mobileproglib2022JRGpc, iosheads2022JRGpc дадут скидку от 20% на билеты из категории «Для частных лиц».
👉 Подробности и билеты: mobiusconf.com
🗓 Ближайшая конференция: Mobius 2022 Autumn, 9–10 ноября · Online
🗓 Offline-день + Online: 21 ноября · Москва
Темы конференции:
✅ Работа платформ (iOS / Android) и языков программирования (Swift / Kotlin / Flutter / Java) под капотом;
✅ Software Craftsmanship (подходы и практики в разработке мобильных приложений и работе с фреймворками);
✅ Архитектура (архитектурные паттерны, legacy и рефакторинг, модуляризация);
✅ Качество продукта (производительность, UI/UX, безопасность);
✅ Тренды в мобильной разработке (SPM, open source-решения и лучшие практики)
А кроме этого — еще 41 спикер из Яндекса, Сбера, Gradle, VK, Тинькофф, Skyeng и других компаний 🔥🔥🔥
На Mobius вы сможете не только послушать выступления, но и задать вопросы спикерам, а также пообщаться с другими единомышленниками. И промокоды mobileproglib2022JRGpc, iosheads2022JRGpc дадут скидку от 20% на билеты из категории «Для частных лиц».
👉 Подробности и билеты: mobiusconf.com
👍8
Общие вопросы
Подготовка к нетехнической части собеседования
Друзья, всем привет! Хочу поделиться радостной новостью - вчера на Хабре вышла моя первая, так сказать, вводная статья - «Подготовка к нетехнической части собеседования». В дальнейшем планирую выкладывать там важный материал, связанный напрямую с темой моего телеграмм-канала. Возможно, часть информации, необходимой для подготовки к собеседованиям, будет выкладываться там раньше, поэтому буду признателен, если подпишитесь на меня на Хабре. Заранее спасибо и хорошего дня! Ссылка на статью👇👇👇https://habr.com/ru/post/701962/
#SwiftInterviewGeneral
#SwiftInterviewBeginner
#SwiftInterviewMedium
#SwiftInterviewAdvanced
Подготовка к нетехнической части собеседования
Друзья, всем привет! Хочу поделиться радостной новостью - вчера на Хабре вышла моя первая, так сказать, вводная статья - «Подготовка к нетехнической части собеседования». В дальнейшем планирую выкладывать там важный материал, связанный напрямую с темой моего телеграмм-канала. Возможно, часть информации, необходимой для подготовки к собеседованиям, будет выкладываться там раньше, поэтому буду признателен, если подпишитесь на меня на Хабре. Заранее спасибо и хорошего дня! Ссылка на статью👇👇👇https://habr.com/ru/post/701962/
#SwiftInterviewGeneral
#SwiftInterviewBeginner
#SwiftInterviewMedium
#SwiftInterviewAdvanced
Хабр
Подготовка к нетехнической части собеседования
Для многих разработчиков (как начинающих, так и опытных) собеседование – стресс. Для меня корни этой проблемы уходят в школьное прошлое, когда я боялся выходить к доске на уроках русского языка. Имея...
🔥8❤1