1. Новые покупки

    12.09.2019: LPACK: создаём лендинги западного уровня при помощи шаблонов + как на этом заработать + 550 шаблонов

    05.09.2019: Николай Ягодкин - "Все программы центра Advance" 2015

    05.09.2019: [Michael Pavlovich] Substance Designer Quick Start [ENG-RUS]

    03.09.2019: Волшебство симорона от Бурланов, новый вебинарный курс

    03.09.2019: Мастер-класс по сторителлингу [Артём Михалап, Влада Маршева]

    03.09.2019: Amazon FBA Arbitrage/ Dropshipping Coaching Courses Andrei Kreicbergs

    02.09.2019: Взламываем Сайты / Тестирование На Проникновение С Нуля - Часть 4 Из 7

    02.09.2019: Взламываем Сайты / Тестирование На Проникновение С Нуля - Часть 3 Из 7

    01.09.2019: CPA 3.0 - Арбитраж трафик - Обновленный тренинг [Андрей Золотарев] 2018

    28.08.2019: Практический онлайн-курс по видеосъёмке от агентства «Хохлов Сабатовский» [Влад Сабатовский]

    28.08.2019: До 6000 рублей в день на лазейке в популярном сервисе

    28.08.2019: Серо белый прибильный бизнес

    27.08.2019: [НЕТОЛОГИЯ] - ПРОГРАММА ПО ИНТЕРНЕТ-МАРКЕТИНГУ 2018

    26.08.2019: Udemy.com Нейромаркетинг: руководство потребителя

    25.08.2019: Взламываем сайты / тестирование на проникновение с нуля - часть 1 из 7

    24.08.2019: Как настроить рекламу в Instagram / Facebook за 1 день и получать клиентов дешевле, чем в директе [M

    22.08.2019: Богатый Beauty-мастер 12 поток (Юлиана Бондаренко) 2019

    22.08.2019: Запуск издательского бизнеса на Amazon SalesHub 2017

    21.08.2019: Практика видеосъёмки [profileschool] [Дмитрий Скобелев]

    20.08.2019: [New Masters Academy] Color and Tone for Composition

    20.08.2019: [Rogelio Olguin] Substance designer с Rogelio Olguin

    20.08.2019: [Luxion] KeyShot 6 Master Series [ENG-RUS]

    17.08.2019: [РБК] Бизнес-план агентства интернет-маркетинга (с финансовой моделью)

    14.08.2019: [Eat3D] Анимации в Maya для игр и не только

    14.08.2019: Залоговые аукционы. Государственный и банковский конфискат

Скрыть объявление

Схемы заработка

Складчины

Инфопродукты

Скрыть объявление
На сайте доступно более 50.000 инфопродуктов, схем заработка и складчин

Дмитрий Виноградов - Производительность (STARTANDROID) (2018)

Тема в разделе "Программирование и Администрирование", создана пользователем Toretto, 3 июн 2019.

  1. Toretto

    Администратор

    Регистрация:
    13 янв 2014
    Сообщения:
    8.817
    Симпатии:
    6.473
    Дмитрий Виноградов Производительность (STARTANDROID)

    Предыстория
    На DroidCon 17 Berlin мне довелось послушать про новый Android Profiler. Докладчик из Google рассказывал о новых удобных инструментах, доступных разработчикам для мониторинга сетевых запросов, потребления памяти и использования процессора. Это был очень полезный и интересный доклад, и, слушая его, я понял, что тема очень важная, и о ней надо обязательно рассказать.

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

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

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

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

    В ваше резюме можно будет добавлять пункт Application Performance, а на собеседованиях вы будете рассказывать о том, как на текущем проекте вы нашли и пофиксили множество мемори ликов, ускорили старт приложения в два раза и избавились от тормозов при скролле списка. При этом вы сможете подробно описать, какие именно действия вы предпринимали и какие инструменты использовали. Все это будет вам огромным плюсом в глазах будущего работодателя.

    Пару раз меня на собеседовании спрашивали, какие я знаю инструменты для выявления проблем производительности. А также просили перечислить правила оптимизации, которых я придерживаюсь при создании приложений.

    Ну и в целом, производительность - это интересная тема. Можно увидеть работу приложения изнутри. Например - подробный стек вызова методов с указанием, сколько времени выполнялся каждый метод. Или содержимое памяти приложения - какие там сейчас есть объекты, и кто на кого держит ссылку. Или все сетевые запросы с указанием их содержания, стека вызова и потока.

    Содержание курса
    Урок 1. Введение
    В этом уроке поговорим о том, почему для приложения очень важна производительность, и обсудим общую схему поиска и устранения проблем. Я опишу пару случаев из моей практики и расскажу, о чем будет этот курс.

    Урок 2. Советы по производительности
    В этом уроке рассмотрим несколько общих и универсальных советов по производительности.

    Урок 3. StrictMode.
    В этом уроке рассмотрим возможности StrictMode. Разберем, как узнать, что в UI потоке выполняются операции с диском или сетью.

    Урок 4. Память.
    В этом уроке обсуждаем память: на что она расходуется, что такое Garbage Collector, как программно узнать количество свободной памяти. А также разберем режим Low memory и метод onTrimMemory, в котором система просит нас освободить память.

    Урок 5. Memory Profiler. Allocation.
    В этом уроке разбираемся, как с помощью Memory Profiler получить подробную информацию о создании новых и удалении старых объектов.

    Урок 6. Memory Profiler. Dump.
    В этом уроке рассмотрим как создать Memory Dump, и подробно разберемся, как читать его содержимое.

    Урок 7. Утечки памяти. Что это такое и как образуется.
    В этом уроке узнаем, что такое утечка памяти, и на примерах подробно рассмотрим, как она образуется. Кроме этого обсудим такие понятия как слабая ссылка WeakReference, Anonymous class и скрытая ссылка.

    Урок 8. Утечки памяти. Как понять, что она есть, и как ее найти.
    В этом уроке рассмотрим, как определить, что в приложении есть утечка памяти, и как ее найти.

    Урок 9. Утечки памяти. LeakCanary.
    В этом уроке мы рассматриваем инструмент LeakCanary: как его использовать, как читать и понимать результаты его работы. Кроме этого изучим возможности кастомизации и разберем несколько реальных примеров ликов.

    Урок 10. CPU Profiler.
    В этом уроке начинаем работу с CPU профайлером. Рассмотрим, какую информацию отображает его основной экран.

    Урок 11. CPU Profiler. Стек методов.
    В этом уроке рассмотрим доступные нам представления стека методов: Call Chart, Flame Chart, Top Down, Bottom Up.

    Урок 12. CPU Profiler. Режимы записи стека методов.
    В этом уроке рассмотрим доступные нам возможности записи стека методов.


    Продажник
    startandroid.ru/ru/courses/performance.html

    Скачать