Подготовка к собеседованию на Android Developer
Менторы
Специалисты своей области, которые смогут помочь вам
Middle .Net Developer
Senior Product Manager
Middle Python Developer
Ведущий программист
Backend Software Engineer (PHP)
Senior .NET/C# developer
Middle DevOps Engineer | Tbilisi, Georgia
Middle C# .NET
Senior PHP-разработчик
Middle python developer
Каналы
Полезные Telegram каналы и чаты
Транскрипция видео:
мы викери имейте это ввиду зумом сейчас в этом предупредит нас еще минуты 4 пока все потихоньку будут собираться залетать заходить все такое и я тем временем отправлю ссылку на этот youtube stream как я молчу поэтому спикера не слышно олег слышно сейчас я бы ситек вопрос решают нас через пару минут до официального старта и это вид так карте сейчас сделаю тебя свой организатором пожалуйста о пицце запускает есть там так еще буквально минутка друг и мы уже начнем так перекличка наши добровольцы здесь
00:00:00 - 00:01:36
сегодня откликнитесь да здесь отлично виктория и артем если у вас получится присоединиться с видео то это конечно будет лучше но если получится страна верное ok вот просвете виду это такой стремимся на палец и разговариваете если вдруг у вас там будет просто черный фон когда вы будете разговаривать это будет не очень эстетично скарб так артем нами есть и круто хэй виктора и тоже вела сейчас удар я постараюсь главное чтоб интернет тянул ну да есть уже будет совсем плохо остановим неспортивно 1100 всем да привет всем спасибо что
00:03:48 - 00:05:11
присоединилась и сейчас в чем одна минута слишком когда тот перестанут пиликать сообщение что люди все еще присоединяются я прям совсем уже ночную основную часть сегодня прошу всех поприветствовать наших героев дня это виктория гринберг и артем мельник они были одними из тех людей которые решили или заявка что и было бы интересно поучаствовать всего у нас отправила заявку около 15 человек и я там просто дома под эту кнопочку этого google рандом генератор и вот так вышло что виктория артём в apple сила не
00:04:42 - 00:06:02
меньше сегодняшними участниками чуть позже они еще представится а пока двух словах сегодня я буду исследовать на позицию junior android-разработчик и понятное дело что junior тоже джон ройс и понятное дело что есть не знаю условный рога и копыта а есть яндекс революции там еще какими-то кают-компании что везде все по-разному и об этом мы поговорим со встречи маленький нюанс мы записали мы сейчас да уже life ю тубе она записывается вот и но давайте еще раз шаре экранчик я думаю что в принципе уже можно начинать
00:05:22 - 00:06:47
какой бы комп резать ну давайте начнем с 5 итак сегодня интервью preparation workshop как вы наверное уже знаете у нас прошло целых шесть от личных встреч где мы разговаривали на самые разные темы начиная от всяких там интервью по платформе и языку заканчивая со скиллами разбором ваших резюме и так далее если вы этого еще не видели кого залетаете нам ютубчик можно все это дело посмотреть на горе наверное эти сердечки там не знаю что еще не очень похожи на мальчика на ощущается как по селу презентацию
00:06:10 - 00:07:17
откате которые так что с вами тоже разговаривала поэтому растительным ну вот если вы вдруг залетели сюда в youtube совершенно случайно и без понятия что это такое то наверное надо было добавить сайт об android академии но двух словах есть android академию мы проводим всяких ли вы ивенты и уведомление об этих ивентах мы отправляем через ботов телеграме который называется о моих поэтому подписывайтесь ставте лайки выдаваться и чтобы зарегистрироваться на android академия получать наше сообщение надо
00:06:47 - 00:07:48
написать с лошадями соответственно ребята которые сегодня у нас вы шли добровольцами о некой роста через борт и поняли что х м вот есть такая возможность если вы хотите посмотреть те медяшки которого своих до этого открываете android пакетик на бал там у нас есть много видео базовый курс продвинутый курс курс подготовки к интервью которые мы сейчас проводим и дальше будет еще много всего интересного правило я сейчас подумал что слово правило наверное какой то громко 1 секунда башни посиделки поэтому
00:07:17 - 00:08:22
правило не правилам и не важно короче мы стараемся сделать так чтобы все было не очень суровая жестоко и так далее поэтому я надеюсь сегодня все уйдут все эти довольными как слушатели так и наши участники мы дружной комьюнити никаких судей в том числе в комментариях можно дни знаю закидывать своих идей но точно чтобы не было там оценочного типовое ответ вот эта вот такого мы не терпит будем беспощадны перетяните году ну и ваши комментарии фидбэк важный инструмент для коленей того куда двигаться дальше нам играет академии
00:07:50 - 00:08:57
поэтому после этой встречи mat i want you back форму не поленитесь ответить на 3 5 7 вопросов чтобы было понятно что же нам делать дальше и катя специально для лайки на видео и и этом это жителями вот сегодняшнее интервью с junior мир еще раз спасибо всем тем кто оставил заявку на прошлой неделе и я думаю что нет смысла дальше тянуть резину и частные приступим уже основной части но это основная часть на самом деле все равно начнется еще одной дополнительных штучки я правил нашем сегодняшнем десятом адресу компетенций
00:08:23 - 00:09:39
по android которую этом пока наливал до своего друга и кстати да они сейчас как раз таки и счет метла или там middle of my mouse с опытом в один-два года работы будет что урок может смотреть ссылочку и соответственно если вам что-нибудь так на интересно о приходите на их сайт пишите может быть вы тоже что-нибудь интересное на найдете этот палец по процессам и стараются хорошо работать но и что же мы с этими ребятами из будет что сделали мы сделали матрицу контент android где мы пытались понять что блин
00:09:01 - 00:10:07
на чем же отличается сам junior middle сеньор и вообще какой интервью надо проводить для разных уровней людей и мы пришли к тому что на самом деле вопрос и пьером они нас могут быть это примерно теми же самыми что и вопросы дилером и основное отличие между тем на собственном как проходит интервью и вообще чем отличаются там junior видно сеньор это то во первых как много тем в целом этот человек знает и вторых насколько хорошо он знает ту или иную тему в клуб и получается что вот сегодня мы будем говорить жене раме
00:09:34 - 00:10:42
или примере jerome может быть внимание тут еще посмотрим что у каждого может быть свое самоопределение но идея в том что мы схватили потому что вот это вот с из с криками tensei которые вот-вот двадцать восемь штучек по моему 29 junior все равно уже должен что-то знать потому что до джуниора на самом деле еще стажер стажер этот человек который ну толком еще вообще ничего не умеет и вот только пытается учиться обычно обжора уже предполагается что он будет носить какую-то почту собственно проекту он
00:10:07 - 00:11:14
будет что-то разрабатывать и так далее и получается что из всего этого довольно длинного списка 30 элементов и можете обратить внимание что они начинаются со всяких но базовых штук или типа алгоритмы и структуры данных java котлин и заканчиваются они чем-то таким специфическим что нужно не везде работы с камерой секс и player lite лейбл обстреляли и получается что вы как разработчик можете быть более или менее опытом в каждого в пещере и просто к исторически складывался что если вы сеньор кто так или иначе бы поработать
00:10:41 - 00:11:43
со многими теология vivaz pro бросало в разном белки андроид-разработке и скорее всего вас там будет больше таких значков опыт и неопытный вот если же вы только начинаете свой стиль в андроиде то скорее всего там будет больше чего-то с чем они работали и больше чего-то где ваш уровень вы сами даже а тринадцатым базы эти вот уровня базовый опытный эксперт базовый это значит что вы с этим работали на вообще хоть как-то вот небольшой опыт в проектах так далее там обратить внимание что не читается опыт
00:11:12 - 00:12:09
который вот такой чести теоретически опытные то вы уже используя ними это на работе в чем от времени ну эксперты то вы уже прям вообще в кишках разбираетесь можете на конкурируешь тебе достаточно написать и соответственно разных уровней есть разные ноты ожидая от деталей а потому насколько вы знаете ту или иную тему вот и сегодня я попросил наших или date of подготовить заранее такую табличку и мы начнем секторе виктория можешь же бью чего целым и стороны ну собственно сейчас мы начнем иначе мы давай наверное
00:11:41 - 00:12:46
с тобой даже что виктория представься пожалуйста расскажи чуть-чуть и всем привет меня зовут вика я учу android где-то с октября прошлого года до этого работала можно сказать больше сбежала просто как с языком писал консольные программки на java вот и потихоньку перешла накоплен изначально в общем-то и хотела заниматься android разработкой просто по рекомендации знакомых и вообще из информационного поля решила что лучше начинать java на android написала несколько приложений самых базовых погодная
00:12:13 - 00:13:46
написала в магазин онлайн курсов и сейчас работаю над приложением для фитнес-студии как бы но это все под project и вот так что такой опыт сама себе назначать задания сама их дела отлично но звучит неплохо хорошо а сегодняшний формат будет такое что это будет похоже на интервью возможности не будет процент интервью но вы идея в том что я буду меньше рядом не знаю что-то объяснять поправлять и так далее и скорее мы попробуем как раз по разным темам которые вот у тебя есть указаны в которых ты разбираешься ну на вашем
00:12:59 - 00:14:16
уровне мы попробуем краски потыкать палочки скажем так и понять если там какие-то прорехи и насколько в принципе сейчас есть глубокое и широкое понимание собственно этих тем поэтому наверно прилагаем начинать и начнем мы вот прям по классике алгоритмы и структуры данных итак меня зовут смешаться с играми извините грибы структуры данных значит какие вообще структуры данных ты знаешь ее затем они нам нужны так но у нас есть структуры данных массивы степка множество словарь словарь эти все структур данных призванные
00:13:40 - 00:15:23
позволить удобнее хранить данные правильно строить как бы если у нас допустим есть данные которые именно ключ-значение и нам их было бы не удобно хранить например массиве был придуман было придумано структур данных словарь ну или карта по другому м то есть это для удобного правильного хранения данных используются отлично спасибо и вот ты упомянула словарь какие знаешь ли во первых знаешь ли ты в принципе про я сложность вот это вот которая у от м и так далее сложность гораций о большой имея сведут да я примерно знакома эта
00:14:30 - 00:16:12
сложность алгоритмов это на большом обман объеме данных некая общая сложность не связанная с константами сколько именно там данных вот как бы в общей общая сложность алгоритмов на хорошо допустим вот есть нас вот этот самый и dictionary ни на какие во первых там основные операции и какие но какова сложность в . операции основные операции мы можем искать значение по ключу мы можем добавлять ну то есть записи ключ и значение удалять по ключу а то опять же все делается по ключу весь dogs доступ потому что ключ является уникальным
00:15:22 - 00:17:01
сложность вот про сложности я не смогу сейчас ответить потому что именно с этим не сталкивалась я просто делала итерацию там еще прижала когда занималась итерацию по мапе но не изучала насколько я понял смотри прямо сказала что ты делала итерацию по мапе знаешь ли ты что в принципе вот есть мы в интерфейс дает есть an action и соответственно мы можем взять оператор у различных коллекций что такое вообще итератор так итератор проходит по всей коллекции может с определенным шагом проходится может от начала до конца то есть итак мы
00:16:13 - 00:17:47
перебираем все данные хорошо мы препираемся данные гарантируется ли нам очередность в которой нам эти данные придут а нет у нас это не гарантируется у нас есть у нас есть варианты реализации структур данных как металл у нас гарантируется то что как мы добавили данные допустим так они не будут нам поступать при операции но иногда нет то есть это например список и связанный список обычный список полон у них хранит порядок связанный список по моему хранить хранит и это если я сейчас не выдумываю есть немного
00:17:01 - 00:18:33
справишься потому что среди это списка потому что мы можем задать ему наберу ну вот ведет разная сложность там разная сложностью связанного списка и обычного разные сложности чтения нажму потому что разному устроена хранения в памяти обычный список мы храним ну как бы разрозненно как бы в памяти об связано у нас каждый элемент нее ссылку на предыдущий и последующий элемент вот поэтому нас получается что чтение в связанном списке быстрее а [музыка] обращение ногами и нам на самом деле давай давай хорошо тогда копнём ещё сюда
00:17:47 - 00:19:30
чуть-чуть чем отличается список от массива так [музыка] ну я вот по про подпрограмму знаю что массивы у нас массив в джаве создается скажу с конкретным размером список этой arraylist его размер можно ну тоже изначально задать но он может меняться вот и для этого потом будет выделяться память два раза больше если это список изначально создавался на 10 элементов мы добавили 11 там насколько я помню создастся другая запись в память и нужен нам на 20 элементов и смотри тысяч оперируешь такими понятиями что создав записи на 20
00:18:38 - 00:20:20
элементов на 10 элементов то есть как вообще внутри себя устроены released ну то есть ты сказала что link list это вот нашей записи у нас есть ссылка на следующую запись а как же может быть встроен link 300 грамм можешь на 1 ст ну и released он внутри себя это тоже массив только с надстройкой что вот ну там даже в его реализации там есть специальные функции как раз работающие с переполнением в обычном массиве это не реализовано то есть внутри как бы просто рей и получается как вообще сам себе работает и рэй знаешь это ну вот то есть
00:19:30 - 00:21:07
не знаю если даже вот перейти там чуть-чуть таком более низкий уровень то значит есть вас игре есть нас какая-то память и не знаю там столько от памяти есть у нашего приложения мы туда положили рей каким образом система понимает как взять первый элемент иры и 2 элемента рея 3 телеметрия я наверное буду выдумывать не могу сказать точно мне казалось что релиз ой занимает как бы в целом у него нет прямой связи между элементами то есть они не знают как бы друг о друге это означает что они должны занимать
00:20:18 - 00:21:35
какую-то какое-то просто единое пространство в памяти то есть как одна ячейка только в этой ячейке не какая-то переменная типа int или там string а вот массив отлично да все верно собственно как это выглядит что у нас есть указатель на начало массива когда мы создаем массив мы знаем что у него будет внутри там им чары так далее каждого из этих типов есть но своя длина и группа есть мы знаем что длина каждого элемента говоря 16 бит когда мы знаем что первый элемент будет через 16 лет после 0 2 он будет
00:21:00 - 00:22:11
еще через над спит и так далее но и она там каким-то образом примерно вычисляется если совсем абстрактно то есть направление мысли было верное круто так ладно дальше чтобы еще такого спросить еще наверное из важных вот этих всяких коллекции мы с тобой только что проговорили про глисты и мы поговорили по дикции а что если мы хотим накидать таких элементов не знаю в одну кучку и так чтобы у нас нельзя было добавить одни и те же элементы в эту кучку как бы ты реализовал насколько я помню это сет множество там нет повторяющихся значений
00:21:36 - 00:22:49
и если мы добавляем значение которые которые уже есть стирается предыдущие и на его место вот добавляется ну как бы новое но что то же самое а как мы понимаем что ну вот игры что стираете предыдущая как мы понимаем что это один и тот же элемент ну или как там сет понимает что-то один и тот же элемент ну наверное он смотрит по значению то есть значение элементов если они повторяются то есть в сети не повторяются значение элементов так наверно нужно хорошо говорят для тебя что-нибудь методы и классы хэш-кода
00:22:11 - 00:23:36
так и хэш-код не очень хорошо мне говорит и клуб это сравнение более сложное сравнение чем просто 22 равенства и полз может сравнивать объекты и строки что значит более сложные сравнение очень нравится что происходит делаешь два равенства ну два равенства работает обычно стримить с примитивными типами то есть это просто в общем там связь идет с памятью то есть с эклз может по моему если я не ошибаюсь сравнивать не запись в память и а именно вот случае объектов или илья наоборот неправильно говорим
00:22:56 - 00:24:39
сейчас то есть к сожалению я помню что там именно вот что касается объектов с объектами работает и клаус и связь идет с тем что один что два разных объекта 2 разных переменные могут указывать на один и тот же объект и после это как-то правильно обрабатывает ну как точно у меня что ты попал ну да ничего страшного но наверное это те моего совета как раз подкрепить примерно до направление было верно что по умолчанию объекты если просто мы сравниваем их через равно равно то не смотрят что это физически один и тот же
00:23:51 - 00:24:59
объект а есть нас разные ссылки могут смотреть на один и тот же объект мы проверяем ну так называемый равенства по ссылкам если мы хотим имена смотреть на то что не знаю у них там имена разные значения тогда нам краз определять и классах школ и сайт как раз на этом работает то есть если ты не приобрели что у общественного после школы тут у вас от не будет работать но у собственную том плане что там будут всякие дубликаты хорошо примерно понятно давай мы перейдем к следующей части здесь от джова капля ну давай с тобой
00:24:26 - 00:25:26
погреба java ну это наверно тоже будет немного том числе и в принципе про языки программирования и первый вопрос будет про абстрактные классы и интерфейс и в чем их отличия когда надо использовать то или иное ну а интерфейс у нас в принципе не так сейчас интерфейс вот насколько я помню его можно использовать как такая такую некую замену множественного наследования то есть у нас класс может комментировать несколько интерфейсов вот в том числе это для этого используется с абстрактными классами так
00:24:56 - 00:26:19
не получится абстрактный класс и все равно если его другой класс наследует то только его единственный класс абстрактные классы это ну такая абстракция надо другими классами то есть это можно это создано ради обобщения неких к сущностей то есть мы можем в абстрактном классе не прописывать полностью методы мы можем например их как кстати там есть абстрактные методы у которых нет реализации и на следующие классы уже для себя прописывают реализацию этих методов то есть абстрактный класс это как шаблон для
00:25:37 - 00:27:20
окло для на следующих классов интерфейс у него похоже похожий смысл то есть он тоже может являться шаблоном но чаще абстрактный класс ну то есть на простых примерах есть [музыка] есть разные автомобили можно создать просто абстрактный класс автомобиль и от него наследовать там определенные какие-то конкретные модели что касается интерфейса то интерфейс обычно выражают некую способность и в них часто даже название за качественно apple то есть если мы говорим о каком-то свойстве целый групп и классов
00:26:28 - 00:28:08
например те которые могут летать и это например будет интерфейс флайбол его может и комментировать и самолет и птица это некоторый и на уровень абстракции вот почему это будет именно интерфейс славе был а не какой-нибудь абстрактный класс фольгу ну у нас получается что [музыка] не смогу числительные есть целом а может и мы там будет почитать про там наследование вяжется с композиция и обычно мы используем наследование и там абстрактной классы если можно сказать что это из а ну вот там не знаю этот объект является
00:27:18 - 00:28:48
каким-то другим объектам вот и в целом да лучше использовать больше интерфейсов и меньше абстрактных классов это если двух словах ладно идет дальше так вот мы сейчас при вас примет интерфейс абстрактные классы кстати помнишь ли ты я да такое большое отличие между java и косвенным касательно всяких абстрактных классов абстрактных методов наследования и прочее им она у лизы к котлин ну то есть по умолчанию java в принципе нет такого ограничения на наследования какой есть вклад лент код не надо открывать к классы чтобы была
00:28:08 - 00:29:22
возможность северного классная плиты будет хорошо и если мы хотим сделать так чтобы 0 отдавать двух словах опиши различий между про его отправят public protected уровне на уровне доступа да это у переменных в классов по методов это то откуда к ним можно обратиться public это доступ по всему ну грубо говоря по всей программе и он как бы по умолчанию если мы не пишем никакой ничего не пишем то у нас по умолчанию public protect от этого в этом в зоне пакета по моему мы можем обратиться к этому например методу то
00:28:45 - 00:30:35
есть или будет и все наследники по моему тоже номер и правят это только внутри класса допустим так мы используем инкапсуляция ограничиваем доступ к данным класса чтобы их защитить защитить вспомнила про шефа марка что в джаве если я не ошибаюсь этом проводе толку пока что галлодет немного отличается от паблика но как мелочи дальше его подробные консультации тогда вот у нас есть значит соли что это вообще за ислам за буковки и в тебе больше всего нравятся не не знакомы практически sonic есть какое-то open class principle что
00:29:42 - 00:31:18
классы они открыты и расширения закрыты для изменения вот это вот когда мы говорим про против этот как раз об этом и что мы детали имплементации прячем оттуда ладно об этом еще в тоже можно почитать хорошо я думаю что по языку примерно понятно дальше когда идем к следующему ну как отличить анатоксин android api хищником коллинз какие вообще есть основные компоненты android и этот клонирует компонент компонент кажется состав из составляющие android-приложения 4 activity сервисы бродкасты ресиверы и
00:30:33 - 00:31:49
провайдер с чем этот вот и работала с activity и в общем то все но примерно имея представление о том что это все такое activity это у нас ну по сути это экранный интерфейс [музыка] бродкаст ресиверы у нас получают широковещательные сообщения от системы и возможно от других приложений контент контент-провайдер позволяет как бы если говорить в общем то приложение иван драго она открывается как бы в песочнице она ограничена у него нет доступа к данным других приложений контент-провайдер как раз позволяет
00:31:13 - 00:32:55
данные допустим мы его приложение чтобы стали доступны для другие приживаются из меня не слышно ой секунду zero сейчас я своим звуком разберусь [музыка] так остановилась на сервисах слышно меня прием прием артур повела артур артур и сейчас уже не слышно вернуться отлично виктория мы остановились данных это провайдерах песочнице я понял да похоже что как у всего ребята знаешь дальше идем в бром вот смотри ты сказала что activity то экрана интерфейс но у нас еще есть фрагменты а в чём же разница между
00:32:05 - 00:33:42
activity фрагментами так ну фрагменты это я не работала конкретно с фрагментами но я насколько поняла что это такие это не совсем activity то есть они могут покрывать activity закрывать частично допустим это какие-то могут быть всплывающие окна на возможно я буду я просто не работала с ними знаю что у них совершенно другой жизненный цикл и он более подробный вот собственно все отлично так здесь разные хотят кафе замечено что круто что и количество да я не работал одну могу предположить что это показывает ну
00:33:17 - 00:34:45
собственно что она умеет думать головой от клева будьте такими вот в целом до направления примерно похожее чтобы раньше были трудности видите потом встретим android появились фрагменты когда появились планшеты идея в том чтобы на экране было сразу несколько кусочков его их можно было туда что крутить вертеть и сейчас советую почитать про то что принцип многие переходят на сингл activity applications . да есть одна activity и там кучу фрагмент внутри меняются уже нокий это котовского для нашей встречи хорошо так
00:34:01 - 00:35:02
дальше у activity представь что у нас сейчас есть activity она работает на экране у нас пришел у какой-нибудь там кушаете кейша но там что-то произошло и мы хотим сделать так чтобы activity об этом узнала и дальше что-то делала вот я хочу пропустить интернет вопросам крейсера гадали но есть один довольно такой частый метод он неё что-то там приходилось эти песни им работать что там не знаю уж какой-нибудь там кликается еще раз activity открывают обретался работать с activity launch модами ну или там сложение говори что это такое
00:34:32 - 00:35:59
это да короче можно сказать что есть у нас есть activity на экране пришла такая же activity что мы не создаем новый проверка типа про стоит как-нибудь обновляем тогда дрыгается помню intent и когда у меня просто вращение что activity lifecycle ты так нормально знаешь как наш страшить не буду ну давай спросим мы поговорим про о сохранении различного стоит на что происходит вот на значит идет он штаб мы сворачиваем там экранчик какие методы ну там вот вызываются еще дополнительные и что происходит когда мы
00:35:15 - 00:36:14
этот экранчик там мы разворачиваем допустим если приложение убилась да у нас есть два метода он стоит instance не помню точно название до в них мы можем передавать по моему в качестве в виде интентов некоторые данные activity чтобы даже если оно бьется ее можно было ну либо часть частично ну в общем передать эти данные для той activity которая будет создана снова я не использовала эти эти методы но слышала понял этого достаточно так ну и про сервисы я уже добежит и тут в теории к нему точно готовилась какие есть
00:35:45 - 00:37:37
основные типы сервисов и вообще зачем они нужны все плюсы и если тип это по-моему это background for grand вообще сервисы это вся сложная логика которую ну который лучше находиться в в фон вот задачах она насколько ясная выполняется в главном потоке но при этом каким-то волшебным образом не ну не краж это приложение background это сервис и о которых пользователи пользователь как бы не уведомляется они по-моему не вообще никак не отражаются на экране for grand это вот расхожий пример это player когда
00:36:41 - 00:38:14
мы видим уведомления и можем даже работать с этим как с функционалом вот в этой шторке уведомлений да верно но ещё там есть bound или start and services но есть вот продолжить в этом направлении выполняет в главном потоке но не краше в приложении меня вот этот момент заинтересовала почему сервис или там что-то должно украшать приложение ну как бы считаете что какие-то сложные вычисления в главном потоке лучше не делать и собственно если сервис это как раз сложное вычисление но при этом он не кражи приложение
00:37:27 - 00:38:42
работает главном потоке но при этом в баграм task вот как-то так определяется хорошо да здесь наверное можно еще чуть-чуть будет потом углубив ты ведь intentservice и который может и нужны делится этой пикете 1 миди пользовался вот у них есть ли краски отдельно там thread плохи дела но получается что как то верно нами сила по дефолтного обычные сервиса не буду запускать главном потоке и в них он не надо делать тяжелую работу на дают им перекинуть в какие-нибудь другие потоки и вот здесь мы как раз
00:38:07 - 00:39:08
плавно подошли сейчас я смотрю что ты ответила лере java крутит они работу с и мульти трейлингом базовый вот во встрече страх multithreading базовый значит допустим и травили сервису тяжелую работу мы поняли что она по дефолту там будет стартовать моем потоке а мы не хотим чтобы наделать моем потоке что нужно делать но мы создаем каким-либо доступным образом новый поток другой в java это банально мы запускаем новый фред я я выполнял кстати самое первое приложение asynctask потом узнала что это совершенно устарела
00:38:39 - 00:39:59
ну вот и у нас получается что у нас приложение начинать работать в двух потоках мы не нагружаем главный поток потому что в нем идет отрисовка ну и в целом чтобы она не зависала для пользователя чтобы это не было очевидно что там идет какая-то сложная работа мы запускаем второй поток он вообще как бы параллельно выполняется главному потоку вообще принцип потоков в том чтобы разбивать функции как бы как это прямо сказать сейчас я сформулирую там идет как бы псевдо параллельность иногда это параллельность реальное
00:39:17 - 00:40:49
иногда псевдо в общем используется до используются не всегда там разные кадры или еще что-то бывает просто на какие-то миллисекунды выполняется сначала одна функция потом другая потом снова и вот так вот они время от времени меняется вот и за счет этого происходит как раз вот это мультипоточность и приложение работает и быстрее и эффективнее ну да это можно еще . интерес загуглить асинхронность versus параллельность видно что века что-то потом знает но и копать и лучше не будут кажется вот дальше и добыт его сказал ok запустить
00:40:04 - 00:41:35
новый поток можно создать new thread передать ему рано был какие еще есть варианты как то еще можешь но собственно отправить что-то синхронно рикса выкрутили не трогаем это миджа вы так но у нас там есть фрейд рано был есть по моему бран был этой интерфейс и фред по моему класс он реализует ну то есть он не приметит этот интерфейс по моему там есть возможность сделать без интерфейс ирана был просто фред ну я точно я не помню это очень давно был на фоне хорошо идея рана была тайну типа просто какая-то задач которые ты хочешь
00:40:50 - 00:42:18
заронить поэтому она многопоточность самом себе не очень много имеет отношение нужно это просто контейнер в который ты кладешь куют работу просто смотри допустим если у меня есть сервис в этот сервис каждый не знаю 10 миллисекунд прилетает какое-нибудь событие 0 там каждые 100 миллисекунд и я на каждый из них создают red какая может быть проблема с этим очень много потоков получать его zadrot но все равно все зависит то есть ну как бы это будет перегрузка все равно там надо контролировать ну ставить определенные ограничения как
00:41:39 - 00:42:54
то как то придумывать архитектурное чтобы не создавалось огромное количество потоков хорошо слышал ли ты что-нибудь про всякие там пред пулы экзекуторы для лет поля так очень очень давно и неправда понятно ну да если в двух словах что есть стану специальные классы которые внутри себя к рублю создают 10 трендов и если больше чем 10 задач накинешь то они просто ожидать hey hey полегче в этом стойте в очереди как тает освободиться я титан очень и спартину ну ладно вот эта вот тема абсолютно тоже посмотреть всякие компьютеры этот пол
00:42:17 - 00:43:21
ебла бабла а но они же внутри работают и с картинами среды ржавый дальше по всяким я компонентами должны они будут гонять меня заинтересовала что топить в а базовый уровень в красном views что ты подразумеваешь под катом verse так я вот сейчас над этим приложением которое работая в нем создавала ну в общем как это технически выглядела я создавала классы в которых прописывала например подгрузку определенных шрифтов и потом в xml файле этом constraintlayout например использовал они обычно textview
00:42:49 - 00:44:16
textview вот этот как бы из из классики до это называется компаунд views когда ты можешь там что-то как-то расширить наверное даже не компаунд вирус компом пишет когда мы несколько набираем здесь видимо просто расширение ну ладно интересно что это есть такой опыт и не по гиту какие операции ты там обычно делаешь сами сохраненные гипс и и нет с новым проектом git commit и get push я почти не пользуюсь вот именно в консоли использую такой такой учительства я использую десктопное приложение но в целом у
00:43:31 - 00:45:00
нас есть репозиторий git commit эта запись изменение в репозитории git push а это мы отправляем как бы грубо говоря на сервер эти изменения или дать настояться не улетели на сервер в как это крайне сказать в локальном депозитарию городом отлично игры да сиди в двух словах опиши что-то как-то с ним работала такой самой базовой всякие имитировала всякие библиотеки вот свои bass как раз то что там нужно было настроить к great ла и собственно собственно все краше которые случаются да то что часто окей ладно спасибо я в принципе
00:44:15 - 00:46:02
впечатление составил но здесь до реальному 3 ли у вас могло бы быть есть у вас какие-нибудь вопросы вот но наверное честь мы пропустим в целом я давайте начну короче давайте про ту связь и и я не смотрел все это время чатик поэтому катя если там было что-то интересное готовься подключиться чуть позже тоже это в кинешь вот и так века во первых вчера спасибо за участие там против вы были вопросы на собеседовании методами 2 и я как раз об этом сам начале он разговаривал можете вернуться там куда-нибудь ближе к началу
00:45:18 - 00:46:30
этого этой встрече что вопросы в принципе там джон middle сеньор они все плюс-минус одинаковые но там скорее видно ну как собствен человек отвечает насколько глубока и так далее и надо понимать что junior это не тот кто вот еще не знаю не день работал абсолютно ничем дело его только устроился джуниора то что такое широкое понятие нос обсуждают того кто только входит и для того кто еще там лучше уже проработанным год-другой это самом деле тоже junior developer бы не вспомнить об этом и давайте мы пройдемся по
00:45:54 - 00:46:50
ответам диким а потом века у тебя еще будет там немного слова не знаю как этот сибай как ты там чувствовала что ты думаешь так далее потому что к фоне тоже подумать мысль и прошлись по анонсам сна тем пунктуальная оказалось это базами и в чем я вижу смысла но такового не знаю предварительного интервьюирование в том что когда человек отвечает но будете сладость образова и нагревались и там бывает кандидата он бы ответил что там опыт видите боли эксперт в какой-то теме за интервью вот мы с викой разговаривать
00:46:22 - 00:47:21
от 30 минут и вы видели обращался уезжаю победишь система мы все равно не было миллион вопросов весь металл вас времени для вопросов когда с вами кто-то беседует люди 20 беседуют даже те же самые вопросы вот эти по тем они секция могут изменять и они все равно будут какие-то такие же какие то там у меня какие-то будут заключаться и тут скорее вот или на как это вот все пойдет динамики важно и мы начали краски с аппетитом знание право логарифмами структуры данных в целом века сначала хорошо и чувствуется
00:46:52 - 00:47:57
что на этом теоретически готовилась она с чем ты работала но в то же время сложных алгоритмов мне кажется турниров довольно часто спрашивали себя на такое получи ритмическая с одной стороны с другой стороны и как раз таки когда то понимаешь что если ты сделаешь там цикл в цикле в цикле или того какого нибудь не знаю факт реальную сложные или там квадратичную сложность что из-за этого может округлять подтормаживает приложение поэтому просто вот понимать хотя бы на сколько там сложно сложные операции ставки удаление так
00:47:24 - 00:48:26
далее кричат можете спрашивают это я бы советовал подтянуть ну так вот и начал теорий полу through thick наверное видно что самые основные структуры данных массивы стать множество не понимают зачем они нужны ну с достаточной степени уверен ну ладно давайте неплохо можно лучше допустит дает те самые листы и посмотреть на их интерфейс там сидит а в том что у них можно по очереди взять элементы поэтому это одно из основных качеств кажется кристаллов и отличий как раз таки от какие там массив и так далее которые ну
00:47:55 - 00:49:00
по дефолту неупорядоченные но там отметить и с матами есть линк хэштег который в джаве которой счет потому что порядочные map и и так далее но вот как раз таки штук рублей с кем-то у кого там больше опыта и тогда и мы бы наверное торги дальше капнуть но для джуниора это необязательно знать но это то что часто любят спрашивать вас обитель иду дальше eternal проходного да хорошо что ты знаешь в целом что какой-то нужен можно еще сказать что операторы нас вообще сам себя там потому программирование по
00:48:27 - 00:49:31
полям вот ну и более там не знаю углубленный наверное был бы ответ что вот оператор и они это тоже есть дефолт император есть есть оператор которые чем нет назад ходить это все та же по моим интерфейса вред абстрактный класс и вот про разные сложности списков вот здесь вот был было но был небольшой промах всегда она конечно разная но суть вот в целом ответ продам разницу от краски построены списке листы что изначально там был вопрос что вот этот шелест он там как-то непонятно как хранится в а потом вы
00:49:00 - 00:50:08
через как раз пришли к тому что у аки аир и лист стыки зарезаны и хранить с одним куском и вот мы составили собственно то что с некоторыми подсказками века в итоге ну смогла прийти клеток от эту страну дары и наверно там хранится небольшим пловом ну там одни большим куском это хорошо и надо понимать что на собеседовании там не всегда важные чисто не знаю правильно неправильный ответ потому что ну во первых тут в принципе далеко не всегда бывает но в ответ true force да нет как раз таки смотрится ему глубина с которой
00:49:34 - 00:50:36
кандидата твича этом треке ну как или на вообще мыслят и я здесь отметил для себя что века на самом деле очень быстро отвечала на вопросы ну то есть я сам себя человек быстрый поэтому я даже не сразу щелкнуло но многим людям надо подумать о нормально ну типа их там спросили о чем-то они подумали ответили увидите вот эти вот пауз но я по крайней вообще не замечал ну это же хорошо это значит что как весело какая-то наработкой и понимание но еще раз если вам надо там чуть подумать ответить это обычно тоже нормально не стоит это в
00:50:05 - 00:51:03
этом стесняться пишешь что-нибудь такое направить их исход мы уже проговорили вот это ну прям надо знать потому что значит может там много где выстрелить и это мучение для джуниора дальше факты класс интерфейс теоретическая подготовка и вот эти вот пример из слоя белого 3dio тоже каких-нибудь снежок чашечках и видно что они его к рассчитаю что вика молодец и и хорошо это запуталась нового чувствуется еще мало количества практики и вот именно в этом направлении уровней доступа это так тоже будешь про
00:50:33 - 00:51:34
теорию проверить ее на что она как минимум там читала разбиралась это хорошо проактивный тетрадка с ресивера и но тоже да видно что она готовилась в принципе и там сразу мне ответил что такое компоненты потому что я могу сказать что многие серой помнишь что такого компонента потому что типа блин ну да есть activity брака сидре сервера то что эти свечи компонентами называется это же даже не карты помню атака интересная заметка не да не стоит там опасаться говорить что вода я не работала с фрагментами но
00:51:04 - 00:52:01
наверное этот вот тут вот а потому что понятное дело что у вас не населенного 1 месяц и во-вторых ну если мы видим что но смысле если я как интервью вижу что вы кандидата целом адекватное много чего знает но блин типа фрагмент меня сложилось опять ключи товарищи монету там что-то говорит секунд так как вот сейчас вернул себе да отлично истории что то у меня тут это закупку дата прыгает куда хочет ну и в целом короче мне понравилось спасибо вика сейчас будет обратная связь вики и потом мы перейдём к вопросам
00:51:33 - 00:52:52
спасибо спасибо огромное мне тоже очень понравилось я очень оценила то что вот это вот эта таблица которую артур скинул очень удобно для того чтобы даже определить для себя в будущем на что еще нужно обратить внимание в том числе у меня это многое чем я не работала так что большое спасибо за это и в целом за то что если я что-то говорила что не знаю было комфортная обстановка никакого осуждения и все такое спасибо большое отлично спасибо миллиарда такой маленький комментарий я обычно насколько интервью тоже там поправляю человек если
00:52:22 - 00:53:54
видишь там куда то не туда пошел но вот здесь вот надо учитывать что во первых не все так делают и во-вторых на потому что это баланс если interviewer хочет проверить что у вас на не знаю написать вопросов то у него может банально нибудь времени ну там где-то вас поправить или какую-то обратную связь дать ну это уже зависит от интервьюирует обычно не зависит от вас насколько там все хорошо происходит но если вдруг вы чувствуете что напряженной обстановке так далее умение шутить и но всегда помогает за
00:53:10 - 00:54:04
может простить спасибо ты можешь к нам тут подключиться со звуком где мы что мы если там что-то наш что надо ответить проговорить до на самом деле вопросов я не вижу видела пару комментариев что ребята пишут наконец-то это интервью где я не просто могу ответить на вопрос еще и понимаю каждый вопрос так что я думаю мы попали сегодня и в целом очень многие пишут с просьбой скинуть вот эту табличку что они по чтобы они тоже могли себя память так что если у тебя есть может мне скинуть я ребят надо скидывать часть
00:53:37 - 00:54:51
хорошо и отлично артёмом говорит 15 раз продержится ли это будет легко правда ну типа не знаю что мы каждый 2 1 встречающихся весов обычно совпадает не больше 5-10 процентов этих вопросов но когда он пройдет 15 ну там уже будет очень большой пересечения appsymap хорошо спасибо вика и мы переходим к артему так надеюсь с артёмом мы здесь не будем расстраивать сильно нашу аудиторию про то что там было непонятно на предыдущее интервью и все такое но посмотрим артём расскажи в двух словах про себя про свой опыт
00:54:16 - 00:55:34
в целом у меня примерно опыта где-то около года начиная с новыми значит звуком цветов искупленным вот есть примерно где-то около полугода коммерческого у кого-то есть работал на небольшом в целом хорошо и народа как я уже говорил что уровень джуниора но это такое довольно широкое понятие я сейчас скажешь там в канаде и в канаде и америке это понятие еще более широкая и не здесь не знаю вас может быть 34 года опция и вы все еще будете считаться тюнером и поэтому но вопросы будут разные и мы опять видим по таблице
00:54:57 - 00:56:14
которую заполнил артём что ему уже там с большим количеством всяких ящик приходилось работать и соответственно как interviewer тоже это буду видеть на это буду обращать внимание возможно где-то хлопать чуть глубже в принципе если бы это была прям интервью с нуля я бы был час-полтора там не поставишь на самом деле какие-то отдельные вопросы такого купленную так далее позадавал ну так у нас сегодня более такой открытый формат и чтобы скажем так меч повторяться хоть как я уже говорила и поджарим картину могу там сто пятьсот
00:55:36 - 00:56:34
совсем мир совершенно других тем затронуть платят не менее давайте мы сосредоточились на каких-нибудь темах которые мысли к их совсем не смотрели и начнем мы с и android давай тогда начнем из интернета притянешь не компонент но не про activity автокраски там сервиса брат кострихе веры с кем из этого работал первым так вот например но скажем так совсем только с контент-провайдерами и работал один раз скажем так просто попробовать протезирование тоже ловил системные сообщения уходил на включали получается режим
00:56:05 - 00:57:19
самолете принципе так наверх первых остались от микро до из серии сервисом тоже работал тоже соответственно немного работал просто увидел какую-то задачу он пытался usb и воспроизводить его получается скачивать что-то делала fully grown сервис чтобы увидеть модификацию ну скажем так вода зачем вам нужен программ сервис хорошо вот ты сказал программ сервис почему программу почему не обычный пробрался раз повышает получается приоритет процессов которым работает приложение вот и то есть условно можно начать скачивать файл
00:56:42 - 00:57:57
пользу мед наше приложение и поймет что если будет стать памяти мы можем ну за хочет погубить наш приложились у нас будет про ground сервис нас отображаются классификации загрузки файла хочу кодификации года соответственно систему уже не будет так просто убивать отражение потому что отлично лагеря как малыш ли ты помнишь ли это еще какие-нибудь приоритета собственного сказал программ сервер совершая приоритета какие вообще бывают и штуки которые повышают мультик про под приложения когда у нас activity на приложение
00:57:19 - 00:58:33
развернутом по моему визиту какой то приоритет есть соответственно палубы grown принцы что такое и за кашированные какой-то полу приоритет когда у нас сумма же когда умирает процессом не полностью с нуля стартует как-то кэшируется чтобы потом можно было бы люди мигом с нуля поднимать все это как то скажет восстанавливать скажем всем давно момент отображён либо форуме all services модификации хорошо да я понял что примерно ты представляешь вообще темный за треть и когда вот мы говорим про эти приоритеты
00:57:57 - 00:59:09
мы говорим про то что мы не хотим чтобы наше приложение умер 2 какие еще есть механизмом андроиды которые нам позволяют сделать так чтобы наше приложение не было убито или чтобы сейчас телефон мне уж аукциона наш наш приложение все еще работала живи что большую работу даже скажу слышала где-то что-нибудь правые клоки [музыка] ну вот это да более такой advance sp уж не знаю юниорские не женишься вопрос с этим работал туда них можно посмотреть по иконке нам нужны как раз таки чтобы телефон не выходил в сон мы такие берем
00:58:33 - 00:59:44
и клод говорим что х и телефон мне нужен сепию ничего не знаю отвалить вот например на так и всякие эти оптимизаторы приложение оптимизаторы они просмотрят сколько раз там ваш телефон будет android с этим сетевой код me ok но если допустим мы не хотим делать в клок мы не хотим делать программ сервиса мы хотим сделать так чтобы какая-то наша задача например отправка большого файла на пкм происходило только когда нас есть connection к интернету и но допустим большой collection и телефон был в зарядке каким образом можно
00:59:11 - 01:00:14
достичь очень расскажи вообще что такое зачем от надо чего это надо в принципе это такая как сказать возможность в андроиде выполнять какие-то задания задачи отложено возможно возможно при наступлении каких-то условий но допустим мы хотим что вот уберечь наших пользователь как-то не дать больше не знаю такой поле качестве mix мы не хотим просто грузить всю музыку тогда когда он занимала зарядки мы хотим чтобы музыка которую нажал скачивать она скачиваем семена когда ум опыт кого же есть интернетом на вай-фае просто dantas
00:59:43 - 01:00:55
ученых зарядки воде можно использовать менеджером сказать могут скачивать музыку тогда вы при таких-то условиях и просишь его можно как-то но смотрится странно удалось молодой штаб кайдаш мотка там появился досмотр так насколько я правильно это помню ну раньше по крайней мере было так чтобы у нас приложение android разряжался почему чтобы просто брали все приложения когда хотели туда и ходили получается 32 а должен по моему он включается там не помню точно цифры там могу по 2 минуты полчаса и потом каждый час на
01:00:21 - 01:01:51
включаются и вот там есть такое окошечко наверное тоже цифру то женской руки которым может получается приложение выполнять пудра воду то есть баграм в хорошо дальше и смотри вот с этим посмотрим на самом деле связана еще одна штука которая называется об buckets in 8 9 домой дефиле знаешь ли ты что-нибудь про это окей ну да здесь не очень понятно как на самом деле понятно немножко есть а пакир что в зависимости от того когда в последний раз открывали приложение наше приложение оно будет ну или хорошо
01:01:11 - 01:02:20
жители его еще быстрее выкидывать в тонус еще быстрее выкидывать вручать пушек и так далее почему от нам важны как android разработчикам потому что иногда есть смысл на собственно работать над engagement вам понять что сделать так чтобы люди иногда и заходите в приложение тогда приложение не будет умирать но дольше и так далее хорошо понятно дальше давай пойдем дальше по списку следуешь вопрос у меня там был в обычный лайком помимо ну компоненты и все дети виолой of the dialogue и до момента когда появился constraintlayout
01:01:48 - 01:02:50
там там было все интересный много всего сейчас все кроме как на конце нити только ничего не делают просто константа не какие-то грустные по моему поэтому давай батори про диалоги из какого типа диалогами тебе приходилось работать и общаться не нужны есть нужно классифицировать есть на руки далер диалоги здесь всякие возможны беккер это тоже диалог есть залог фрагменты и соответственно просто диалоге с каким видом диалога приходилось работать но опять же давайте которые перечислю то есть аллергологии там просто оки или
01:02:19 - 01:03:28
отмена возможность свои а потом шипов даже дело доделал мы будем с фрагментом надела фрагмент нас интересует вот но в принципе наверное своей такие обмен на диалог фрагменты приходилось писать просто открывается это возможно где кнопочки до одну из них там происходит смотри когда нас видно есть activity поверх activity открывается другой activity чтобы еще раз палате видео и мы переходим на объективе тебе какие методы будут вызваны его активе те и тогда жизнь нового у нас получается вызывается метод он bows
01:02:54 - 01:04:20
я думал activity activity был накрыт окей да и в activity а у нас потом он столько вызовется после того как уже activity б получать вызываться метод резюме похоже на правду дальше а теперь представь что мы вот сейчас находимся в activity b и мы открываем диалог какие методы возвышенного октябрь что даже тени какие-нибудь зону потому что бы находится у нас там затемняется экранчик и могут узнать что даже не знаю и скажу так честно мне кажется что вызывать методы методы не буду тусоваться хотя я когда-то думал что буду связываться
01:03:41 - 01:05:22
почему важно знать внутри выдаваться какие-то методы или нет мы иногда реагируем на всякие кубики он должен стоп различные лист выполняем не хотелось бы скажем так ну чтобы поведение которую мы не ожидаем срабатывания отлично хорошо так дальше rx java крутим вставай выбери одну из некоторые тебе больше нравится такой тем хотела поговорить наверное лучше тарутин лучше картины хорошо так кого рутинным нового расскажи вообще основные классы скажем так которые у нас есть в крутила и двух словах зачем они нужны
01:04:33 - 01:05:49
основные классы и тот понимает с патчера это различные билдеры еще чтобы соответственно что у нас ничего такого есть но вне за картину можно ли отнести на вернуть ему всякие follow и прочие штуки досаждать должен это нас учеба что-то возвращает как называется потому что то обещаю гнались до представившийся допустить какой-то синхронной корды и потом получить его результат как эта будешь делать это через осинка там возвращается умом вот на десерт но это тоже один из основных классов скажем так далее jobo
01:05:13 - 01:06:39
это типа равенство get it оферты если она что-то получить в чем отличается потому что наше основное отличие с хендгам если у тебя там какой-нибудь xopoшee произошел в дроби или ford получается , обычный компьютер lounge мы получается должны ловить эксепшен в моменте получается вызывают за мою в лаунчер функцию которая за исключением мы должны эту функцию lounge обернуть strike речь о случае с дефектом мы должны быстро кетчер вернуть место где мы соответственно называем у де серда метод а что будет если мы тропе чкалова сложим
01:06:00 - 01:07:29
не внутрь лаунчи а собственно снаружи от star брат launcher кажется что вы просто не твоем эксепшен куда он попадет он пойдет до родителя и обратно страниц а смотрелась на их место где запустился launch проявляется родителям этот к launch и соответственно с окна который мы обе замужем и вода крутить скауты получаются не родителям и году руки допустим допустим у нас есть храм blocking просто как там удобные скобки внутри работника у нас есть launcher.exe право давай так ран blocking о том трой потом launch и потом
01:06:44 - 01:08:08
мы собстна кач и launch произошло совершенно [музыка] мне кажется все равно мы не сможем их ловить на получается как ты верно заметил а из ламанчи этот экшн он пролетит войска обнаружишь снаружи нас от как раз тот самарин blocking если у нас но только рутина то этот рао баллон как бы запустится на при вот это вот штуки и поэтому появляется то есть рассуждении изначально это было про и мы увидим потом не сталкивался это не смертельно я конечно же могу ошибаться есть что поправьте чатике на вроде не должен
01:07:28 - 01:08:36
так окей и что происходит если бы у нас не было этого от ракет у нас был допустим ран blocking evil and free него там прикручена запущена и одна из этих рутин шерлок что произойдет не зацепится получается одна закрыться средствами будут концы лиц и насколько я помню у меня соответственно но произошло исключения у нас нету каких-нибудь и рокфеллеров или там у нас исключение детей пойдем до главного родителя ехать вниз пойдет по всем детям даже [музыка] если кто-то хочет деталей паром на прошлой неделе на позапрошлый деле мы
01:08:02 - 01:09:23
собирались обсуждали это весовые к путина там будет больше вопросов по этой теме поэтому сейчас мы переходим дальше у нас нет ну ладно давай pagid уж что там не знаю самого сложного тебе приходилось делать но кроме там к мид рф об ушей самое сложно наверное результате конфликта долго мастерами подтягиваешь а потом такой ладно за пушку посмотрим что произойдет была популярна седация на сложно понимать как бы студия удобный не было то есть ответственно меня в студии вам работалось нам было такое простое и удобное именно
01:08:43 - 01:10:00
шумок а тут еще и масштаб . готов ли ты подискутировать на тему мертв или рейз в принципе можно попробовать ну ладно я поверю да она сама что значит и как у него что ты в этом понимаешь хорошо мы поэтому все-таки грубом и тем к другой теме и тема собственно будет android and and files the range расскажи вообще что-то знаешь про [музыка] болезненную историю files stored живые android на самом деле вот храним давно совсем вот этим очень много опыта просто когда-то пробовал я помню что у меня когда-то хотел писать писать проводник и
01:09:20 - 01:10:42
были у меня вообще проблему с тем что когда то есть карта когда-то не только арта иногда показывает что эта карта но это локальное хранилище а там еще бывают всяких ошибки the external storage тут какие-то крышу и есть крыши которую приватные для приложения и вот с этим столкнулся понятно ладно короче как они поменьше почитаете нам сделали в android 201 поймешь что всё что было до этого это было прям цветочками все было очень хорошо ну давайте запись на базу не похожа на ту дальше multithreading
01:10:02 - 01:11:14
ну давай что такое компьютеры зачем мне нужны пул экзекутор зачем мне нужно потому что обычный трек сам по себе скажу так у мужчины цикл не особо-то большой мы запустили вам что-то сделал и как-то менеджер таки не будет несколько трейдов тоже не так совсем просто плюс возможно не помню какие классы то есть ли что то можно их задача выполняется отложено можно там не знаем зацепить операции добилась каждые 10 секунд и прочее прочее в целом такие более высокоуровневые обвязки над обычные миксах и в картинах есть
01:10:38 - 01:11:59
следом dispatcher и вы от них есть обычно два разных айова и степью bound короче вот этот файл этом чем не отличаются так насколько я помню ее может расти грубо говоря до бесконечности ну пока у нас памяти не закончится вот всякие семью то есть это какую бы форму картина и вспомнил живой рекси он важен насколько я помню может быть пропорционально по крайней мере количеству я не то чтобы максимально тяжелой операции выполнялись достигала perazzi чтобы более быстрее выполнять почему они будут выполняться
01:11:21 - 01:12:40
быстрее вот условно у нас такого 3d и у нас может опустить руки у нас главный поток его можно использовать как в потоке то есть там не будет очереди из других потоков гости просто один поток выполняет одну задачу он будет там где-то прессы на ладно хитро и кроме будет переключать наверное контекст на другие thread'ы мы близки довольно близко смотри если мы допустим сделали 40 интернет request of у нас есть ампулы там есть прямо целых 40 потоков потому что нам bound и в то же самое время у нас есть
01:12:01 - 01:13:28
четыре ядра и у нас есть еще какая-нибудь тяжелая задача которую мы еще 20 конференц то есть это года сам не знаю 43 поток и найти the main ну и ладно я бы лучше там про все остальные системные но тем не менее в нашем приложении есть 40 который вот эти allion 34 которые думают и один main почему нам окей иметь вот эти 40 на и и потому что в принципе нам [музыка] я хотел сказать что нам без разницы не безработица тоже хочешь получить от кого зависит к этом получим данные под источник может даже будем ожидать ответ
01:12:46 - 01:14:17
который выполняем на компьютер потоках вод зависит рук говорят нас там тяжелой операции берем в лоб сортируем а-силуэта квадрате нам же оценку вас требует встречи поставил туда не получается что смысле дать это моё потоков от них большинство будут стоять и ждать пока они стают уж тут в дайте им конечно примет времени опрашивают х если черное для чего вот но типа не не очень мешают нашим [музыка] они не очень мешают нашему этим работающим потоком потому что они идут конечного диалектом тоже не должно быть
01:13:33 - 01:14:49
там тысячи и тысячи но говоря 40 они могут пережить а если бы было только четыре потока ну там условно . а теперь получается что мы баталин 4 запроса мы оба ждали их ответы а остальные там 3g и запросов они бы ждали пока эти четыре получат свои ответы ну а мы этого не хотим инженером акире хорошо в целом похож на правду со всякими лаками работал ретро этого клиента лоб ты че такое о томе камеры так хоть есть опарин там есть компании по секрету индекса где очень любят and team и горячая помню тоже на покорил и там
01:14:15 - 01:15:31
было больно с этими это поставить свой рингтон блок написать вот давно это было но сейчас расспрашивает ноги дальше по таймингу у нас не значит минут 20 есть и давай мы пройдемся по паре все и где вот и указал что это опытный допустим давай начнем снялись какими диафильм вообще давай так уж такое дианы вот допустим solid там есть какие что значит это соотносится с ней в учениках делает injections независимость от интенсива то есть сейчас правильно вспомнить ту сторону то есть абстракции реализации абстракция
01:14:58 - 01:16:36
можно зависит реализации наоборот должен то есть реализация должна зависит абстракции абстракции нужно пролезать про реализацию опять же идеале то это не то что даже не рядом а это где-то других плоскостях находится других платах мне кажется рядом но смысле компания что имплементация этим презентации абстракции тебе собственный фильм борт предоставляет ok дальше и значит какими т.к. марками доработан там библиотеками вот получается and хакером и попробовал как новомодный чем хорошо dagger зачем нужны компоненты зачем
01:15:47 - 01:17:18
нужны модули модули предоставляют скажем так зависимость или предоставлять какие-то методы травоеды которые проводят зависимости для компонент и компонент а у нас словно есть мы можем там сделать обычно делаю метод для и jetta то есть компонента проводят зависимости в условно фрагменты из так как то вообще о модулях они могут они проводят как представляет зависимости для компонента неплохо дальше и микро мы но его в теории мы бы могли взять и абсолютно все зависимости закинуть в один компонент почему это плохо и как делать по-другому
01:16:36 - 01:17:58
в один компонент ну во-первых или вас так и сделать одну компоненту скажем так переиспользовать это потом сложно на компоненты получать нужно жить знает и жизненный цикл приложения будут трепать эторию для конных фрагмента диалога кто-то показаться 1 раза сюжет про уже не знаем объект больше не нужно и прочего до плюс опять же силуранцы прилетели как это правильной ответственности тоже нарушает как это разделяет ну просто создавать несколько компонент где-то можно если задним ногам обильный проект мужем через av
01:17:17 - 01:18:37
компоненты могу модульный может там что зависимой компоненте создавать is no musume зависимости из родительской компании хорошо и таким вот образом надрать подробнее если мы хотим допустим нас есть танковать об компоненты мы хотим чтобы activity были доступны и вот эти объекты из об компоненты как этого добиться молд условном осознаем activity мы должны обратиться получается компоненте если знаем смотреть какой то фабрик и выпил и вызывать соответствующий метод ей создать компоненту если компонента без
01:17:59 - 01:19:15
без фабрики без опять же пудра можем просто вызвать там по моему чернов духовный builder этот билд и в компоненте может быть метод inject котором получается мы указываем аргументом наши текущие дочку шахтера мы хотим это все за инжектит вот и просто методе псалом греет потому создали компоненту мы с вами jack ты передаем как аргумент получается таким образом и заправлять лет 9 мы получили все остальное и у меня вопрос [музыка] ну ладно видимо на этом тогда остановимся это видео дальше testing тестирование ты
01:18:40 - 01:20:14
пишешь что она тоже есть опыт с этим какой опыт что там есть интересного так написал юнитов слабых людей смотреть там есть короче вот этот constructor injection а когда мы уже можно просто написать собачкой jacks но в самом классе и там типа произойдет автомания во многих фотках топ 10 делим а можем создать ну собственно дельный модуль и за проводить зависимость через модуль когда стоит использовать ту или иную вообще использовать inject потому что для этого роде так и сделано что-то managed to мутациям конструктор ну там
01:19:35 - 01:20:43
ладно окей будет задаваться каждый раз ненавистно провайдерами можем повесить солнечный столб плюсы знаю мы хотим методах право это возвращается получает супер классно там за интерфейсами его реализацию для этого есть у нас байнс то есть зависит от задачи если нам просто каждый раз новый но вы создаем спокойно решим бюджет из нам нужно как то он помещает лучше естественно нужно помещать проводе хорошо nakara что получается более england контроль грубо говоря или простота использования по моему скобы на
01:20:09 - 01:21:21
самом деле на собачка magic тоже можно вешать но я им не пользуюсь и вот как раз в этом немного вопрос знаешь ли ты в чем основной selling point дагера по сравнению с и какими быть там туз пик амико и нами и еще там рядом других дев раскопка я примеры слышал точто по крайней мере проходим на рефлексии построен то есть это та или нет он ну примерно но направлении города суть в том что условно надо передает тоже из на крюке след цветочки всякие штуки на насыпи что он что есть у нас что то где то ну точно сонному может
01:20:47 - 01:22:02
получить зависимость ездра потому пойдем в компоненты в курином упадем краски фронтами и это неприятно но собственно есть файл hosts ты вот этот принцип получает завершается хорошо это знаешь идем дальше и тестирование акима начали расскажи свое портирование описал многое не тестов на базу фигурки называется сама много накатис te digo & test описал соответственно бариста [музыка] бариста а бариста эспрессо или давно хотел попробовать газ пресса окей ну и поделились своим опытом не знаю [музыка]
01:21:24 - 01:23:06
это наверно пустим unit-тест описать просто должны отлично ладно это а какие классы покрывают из необычных я не покрывал кисть и фильтр хотелось приходит список новых тоже список взависимости от каких-то опции хотелось ему проиграть фильтровать что фикус так от надо закрывался возможно корнер кейс когда-то список из одного елемента список там вообще нет элементов водка нету вообще в принципе фильтров и прочего таких штанами шляпы не как называется вот этот тест дизайн паттерну вот что типа нет элементов есть элемент
01:22:18 - 01:23:31
или от поля раскопки в теории тогда углублялся или так было найти как property to do шестерни пограничное значение там есть класс эквивалентности и всякие такие штуки окей это вот мета давида есть равно отдельное него понятие к его метод с дизайном обычно синклере заморачивается на те кто заморачиваться с тестами короче можно читать методики дизайна окей ну типа как понять какие то из лучшего написать дальше хорошо тестируем фильтр им еще что но это про unit-тест тестировал много скажем так реквизиторы
01:22:55 - 01:24:06
тоже не такая базовая логика науки и потом появился от длительного презентами соответственно на всякие молоке нужно было подкидывать много возможности конструктору передаются у президента рф проверял какую-то логику условно на то что там фрагмент только присоединился типа touch он идет вызывает какие-то грузит а мы безусловно как-то проверяя что грусть это не так я проверял что грузится данные я просто оставлял флажками что если вызвался метод просто проверяю зам себе вообще не дам каким образом ну как вы как этот вызов
01:23:32 - 01:24:56
сначала это был на макет и проверял что мог голова [музыка] хорошо и ну допустим 10 все make a verse стопы и знаешь ли ты не видишь ли короче сколько тебе нравится такой это стерни презентов то что там презентер проверяешь такие вызвал метод репозитория вызван метод вьюшки вызвал еще какой-нибудь метод в какие там плюсы и минусы скажем так это подходом но плюс это что на условную затрагивать лучше логику то есть у нас как бы есть ну презентом и мы проиграем только того как он должен работать . пришел
01:24:15 - 01:25:36
давался метод соответствие мы назвали метод презентов то есть мы tasty текущую что текущий плат что мы должны тестирующие имплементацию microsd тестирование от хорошо ли плохо я думал хорош но я думаю плохо но в этом до важно подискутировать на общее дело в том что не знаю если ты перепишешь вот этот там свой класс weeping win 7 и win что произойдет с тестами но они все будут там если они во многих случаях подобно здесь они прям очень сильно упадут вам уж там что-то по-другому будет дергаться и типы
01:25:03 - 01:26:17
презента же не будет терпеть до вьюшки основной такой допрос одна из основных проблем почему там типа с термином опыт не очень хорошо потому что в идеале из мы говорю про всякие там интерес amway анода к начал гореть что начал спринтеров а теперь у тебя тоже вильям или какой поток используются те прикольно ну вот значит 5 используется и как но каким образом выглядит от этого тестирование в те просто отдают покрываемся невозможно ну скажем так экшенами базу проверяются на примере вызывается скажем
01:25:40 - 01:26:55
и получается если у вас все еще мог и это серого не мог а вот из логики но тесте там как скажем так не просто в домах на сваях говоря есть интерфейсами закрыты всяко возможно репозиторий прочие вот и там где нужно подпитывается стало с тобой а реализация вот и на ней проверяется что вызываются методы возвращается то есть скажем так настраиваемый такой мог без всякого муки-то без всего . билдеры такие из которых без поведения ожидается от этого репозитория интересно мы тоже себя используйте и у нас как раз таки но один момент почему
01:26:19 - 01:27:44
на него перешли что у нас вообще не тестируется эрнольд мысли ничего там практически не блокируются потому что и когда мы предадимся это же что эта функция которая state и какой-то экшен превращать новый сайт говорим что у нас есть новые станет ну да чистой функции мы проверяем что если какие-то новые эффекты ну типа не знаешь долететь так далее но получается что вот сам вызов ну вот все вот эти вот это работа зависимостями она там выделена в отдельный слой она не тестируется в ноткой на уровне без логики лад можем
01:27:03 - 01:28:05
этом вопросе детальнее поговорить но видно что как минимум там с таким паттернами работу и от хорошо и собственных тестировал не здесь накинуть накидывают что если тебя что-нибудь про модификации и ну нельзя что-то люди пришли онлайн добавить спросим тебя что-нибудь про дефекации что-то не знаешь так когда там скажем так очень давно пробовал с ними просто такие базовые модификации присылается как-то вызывать их из знаю просто ручками даже в принципе какое-то такое понимание посмотреть в классе то есть нужно будет
01:27:34 - 01:28:51
своими тихо запустить возможную смогу так вроде как есть во первых всякий бензин контент и place а какая там зачем он нужен так но зачем зачем вам нужен как бы сказать то тогда же почему он именно боевых правда так быстро когда ребят для всех когда вы что-то говорите но на интервью помните что его и варшава мог быть использовано против вас контент pendingintent на прям утром сами не работал помощи туда передавал данные а я вспомню как и передавал данным точная дата модификация была нажимал открывалась новые activity
01:28:13 - 01:29:36
в этот 9 передавал я какие-то данные делать надо почитать сегодня мы как раз говорили activity ломать мол и но вот одно из несколько это нужно как раз когда вы открывать 730 типа что вот вы когда до открыли activity что делать отличие одну такую же activity открытию как другом и так далее тут раз присели мы почему-то всякой удобную базу спрашивать нужно реально встречается иногда и здесь второй момент их и как раз видим его отходила когда я ссылался на верните нури важно и второй момент что и темп снова значит mth только в intent
01:28:53 - 01:30:01
и вообще ничего не нужны intent и это вроде как супер их намерения это скажем так сообщение что в системе обработать как будто действует когда стартуем activity на жизнь всякие как явно не явные интенты я говорил что откроем незнанский хорошо как приложение понимают что она может обработать тот или иной intent и intent filter по моему за них есть указы да все верно честь манифестом из intent filter и сами по себе intent и это краски способ общения различных компонентов да вот наш поэт в начале компоненты это типа to make it served
01:29:31 - 01:30:54
поля исторически они собой между собой общаться но все повышен тентов это может происходить рамках одного приложения это может происходить в рамках ну там что ты наружу кто-то кинул в intent и здесь начинается интересности опустим манифесте у тебя есть пять разные компоненты у них есть флаг экспорт что он значит ему нужен экспорт он нужен для того могут ли получается ноту словно у нас есть какой-то экшен у другого ну вот у нас если в приложении соответственно вызывает intent startactivity что такое старт интернет
01:30:12 - 01:31:20
пока я помню в декрет этот контент по весу на соответственно экспорт рутом и это понимаю можем обработать этот intent если мы не будем в этом списке кто окошко открывается приложение которые смогут соответственно productive and english почти до сам плане что окошко на окраски зависит от фильтров а экспорт зависит ну типа будет ли этот наш компонент доступен любым там каким-то другим привет но компонентом в системе плане что есть мы дело на экспорт от фол что никто другой не может это дернуть там
01:30:47 - 01:31:51
еще есть всякие штуки с ну там прямо перемешанными правами что вот типа такой то пакет может меня дергать такой-то не может это усилитель дополнительного ручки но к чему все это было что зачем нужен этот pendingintent что еще раз быть какой-то не экспортированный компонент который ты можешь типа такого себя внутри приложение дергать теперь подумай зачем может быть нужен pendingintent но скрыть но чтобы мы могли совместную смотреть знаю по action и не только других приложениях нас там приложения
01:31:19 - 01:32:20
которые на дефекацию создавала удобно почти считай донатики ridgid это не наше приложение и просто мой катер кеша менеджер не может взять открыть там любую нашу штуку любой наш компонент если он там экспорт фолз получается pendingintent это мы берем свой антенны говорим что хайда я расписываюсь это короче мой intent демонтаж менеджеру и когда на финише менеджер там четыре шелег у него есть intent чтобы сделать что-то как будто бы но без разрешения нашего приложения ну и также пилинг тента еще на можно по-разному делиться
01:31:49 - 01:32:44
но самый такой стандарт 10 - модификациями насколько тебе приходилось работать с разными каналами для модификации различными приоритетами с разными каналами вот опять же просто когда просто как-то помогать создавать модификации всегда ходила с не работать насколько я помню канал это будет и говоря как у нас иногда приложение одно например отжимаем почтой да может быть несколько миль считаться из у нас от нескольких пользователей сообщения чтобы не забывать все в одну то есть на перетирали не совсем да там есть сильная
01:32:17 - 01:33:32
группировка сообщения есть notification роз мысли каналы и каналы это когда ты как пользуется заходишь приложение там вырежь так не знаю новости выключить скидки глючить и персональное сообщение включительно и типа что вот этих ас могут быть проданы разные каналы и разные каналы можно их там парадом magic на этом участке подсказывает что начинаю с android 8 по моему появилась от заморочка с каналами мне тоже кажется что целом и хорошая была штука отлично так ну и по таймингу а уже затем всем давай вот краткий вопрос по
01:32:56 - 01:33:57
профайлинга вот это же поставил что опытные расскажи в двух словах правда с правильным с профайлинга могут такой что иногда приходилось ловить всякие возможные вики отслеживают приходилось иногда опцион смотреть на столько на сколько прожорливость раз каждого приложения может это не эффективно используются ресурсы самые шли к моментов просто с помощью встроенного про fallen to study либо церкви текила вилли обычные 0 и камере вот если теперь профайлер показывает что там не знаю тебя какой-то фрейм занял 120
01:33:27 - 01:34:50
миллисекунд что это значит что славич так назначено потратил первых каким образом знак кто кто пытался этот рисовать насколько я понимаю ну если сломался 120 секунд потехина секунд сколько рассеялись фонтанка да сейчас 16 но наверное на все 80 до 120 перс прочие телефоны вот вот надо допустим мы такие открылись и пью профайлер мы видим что у нас там есть да во первых ну какая то вот метод будет сверху отображаться из ты понимаешь да да конечно нас есть эта мудра есть это делать эти вот допустим
01:34:07 - 01:35:24
здесь один тег это типа в садах и секунда отрисовка это может быть но слишком не знаю широкой русской словно crochet один тег и этот тип она у нас прошел за автомат или секунд какой-то выгонишь руке если это моя какая-то красная юбка прямая может быть метод ondraw мощным шутка про тяжелое создается можем не брюшка если это небушко так скоро должны скон можно посмотреть да но вообще диета была в том что у тебя же там есть какой-нибудь flame чат и так далее что ты ему там смотришь просто лишь какие методы дергались пытаешься
01:34:49 - 01:36:00
понять какой из них был газом времени и дальше вы смотришь на для его там кого-нибудь вынести в другой трек олеся что такое хорошо ну здесь да для того чтобы эта опытность подтвердить наверное я бы еще пока полно у нас сейчас по времени нету особо времени поэтому на этом мы наверное в принципе будем уже заканчивать и давайте все сделаем так же как мы делали с викой я сейчас вот еще раз пройдусь по своим заметкам потом будет слово артема и потом комментаторы смогут что-нибудь прокомментировать так поэтому мы там
01:35:25 - 01:36:27
пропустили эту всякого начальную штучку и в целом и как в интервью сложилось впечатление что артем хоть и по-моему ты говорил что тебя полгода до production опыта что-то да за это время не ставить сайт проекта лечение дает артёму стоял поработать с очень большим количеством ну собственно штук в android фигурки потому что я сначала тоже так смотрите по базовой базовый опытный опытные же почтенными платья нет вот и на этом интервью у меня принципе это впечатление она довольно-таки подтвердилось что
01:35:56 - 01:36:57
вопросы которая сдала артем он довольно хорошо на них начал с достаточной глубиной были какие то там мелкие штуки на еще раз эти отличаются условно там сеньорат журнале натла чтобы за время работа на стена смотрите вот это вот все в целом у меня сложилось впечатление что если он там не зная будет проблемой артем сможете решить загуглить найти там как это сделать и так далее я для себя отметил что патрульные включение артём сказал что в диалогах не будет этих долбаных вам по усам стоп то что я думаю что точно будет он пауз
01:36:26 - 01:37:28
потому что эти профессиональной серии как и становится это самая такая больно юношества когда медиатора машине до интервью в том числе думаю по этому вопросу на неважно вот тренд в принципе да неплохо там про говорили про театр тоже видно что вот с копами ну нет же этого самом деле создавать музыку что можно было работать с холопами это может дать чтобы аннотация делать но это все равно как бы уровень из которых это управлять но можешь управлять он конечно чуть проседает но в целом у меня такое
01:36:59 - 01:38:07
минимум комментариев про то что вот что-то там не туда пошел и спасибо ну короче с моей с точки зрения все прям прошло отлично мне тоже на самом деле очень сильно понравилась паровоза что интервью было не такое как бы просто это просто the door to the dynamic это кажется легкости плавно такой перед стоящая интервью то есть вроде как много обсудили вообще время просто через озеро даже учись ему понравилась его решение стоит ракеты что будет везде но так бывает и я так люблю примерно за такие интервью
01:37:33 - 01:38:53
отлично так катя если у вас там что-то по комментариям комментариев и вопросов не грех нет да ребята просто обсуждали что-то об отречении стрима хочу сказать еще раз большое спасибо да [музыка] интервьюируемый ребята было очень классное качество большие молодцы да и еще раз напомню что если тут есть ли джун плюс медовыми дал виду сможете ван обратиться к ребятам из готического рока с которыми мы делали свое время эта матрица компетенций они вроде клёвые ну а там уже можете не про общаться проверить на сколько
01:38:17 - 01:39:26
еще одна маленькая очень много спрашивает будет ли запись записывается ли да ребята запись сейчас ведется мы стремимся youtube и на ютьюбе на канале android академии выложим сразу после стрима ссылку на эту матрицу я скинул в год наверное приложим к стриму так ну на этом все я останавливаю запись всем спасибо кто сегодня присоединился оставайтесь на highly мы будем проводить что интересное и сейчас я на эту кнопочку стоп может быть когда нибудь
01:38:52 - 01:40:03