company_banner

Что посмотреть на карантине? Подборка материалов от Технострима (часть 1)


    Сидение на необъявленном карантине можно провести с пользой, совершенствуя тело и разум. О первом мы, возможно, когда-нибудь поговорим, а пока предлагаем вам пищу для ума: подборку разноплановых интересных материалов в виде двух курсов и двух интервью.

    Курс по Android-разработке, Технополис, весна 2019


    Напомним, что Технополис — один из наших совместных образовательных проектов, в данном случае с Петербургским политехническим университетом.

    Этот курс поможет вам овладеть необходимыми знаниями и навыками для разработки программного обеспечения под Android. Вы изучите API Android, инструменты разработчика (SDK), популярные библиотеки и многое другое. Кроме этого вы научитесь обеспечивать отказоустойчивость.

    • Лекция 1. Введение. Общая характеристика Android и мобильной разработки в целом. Основные инструменты разработки. Создание Hello World-приложения. Устройство приложения. Особенности мобильной разработки.
    • Лекция 2. Основы верстки. Знакомство с основными UI элементами Android. Вёрстка экранов и обработка взаимодействия с UI-элементами.
    • Лекция 3. Асинхронная работа. Процессы и потоки в Android. Классы MessageQueue, Looper, Handler. Фоновые потоки. Выполнение операций в фоне: интерфейс Executor, классы AsyncTask и AsyncTaskLoader, классы Service, IntentService и JobIntentService. Фреймворк RxJava.
    • Лекция 4. Хранение данных. Откуда брать и где хранить файлы? Как Android SDK помогает решать типичные задачи хранения данных? Как приложениям обмениваться данными?
    • Лекция 5. CustomView, measure/layout/draw/touch event/etc. Что такое CustomView, measure и layout? Пример: Wave View. Анимация. Обработка касаний. Пример: свайп для удаления.
    • Лекция 6. Ресурсы, стили, темы. Где хранятся и как применяются различные виды ресурсов мобильного приложения? Из каких компонентов создаются визуальные стили приложения? Как создавать оформления (темы) приложений?
    • Лекция 7. Архитектура Android OS и инструментарий. Как приложение взаимодействует с операционной системой. Поиск ошибок в приложениях.
    • Лекция 8. Тестирование. Основы тестирования в Android-среде. Встраивание тестирования в процесс разработки. Инструменты тестирования в Android-среде. Сквозные и модульные тесты.
    • Лекция 9. Проектирование Android-приложений. Проблемы при разработке Android-приложений. SOLID-принципы проектирования. Паттерны проектирования. Model View Controller и Model View Presenter. Фреймворк Dagger 2. MVVM. Компоненты Android-архитектуры. Data Binding. Чистая архитектура.
    • Лекция 10. Kotlin. Свойства и возможности языка Kotlin. Зачем он нужен, если кругом Java? Powerful Kotlin для Android. Спасение в DSL или нет?
    • Лекция 11. Реактивное программирование. Что такое реактивное программирование и RxJava? Пример стрима (цепочки) данных. Контракт. Операторы. Marble-диаграммы. Типы Observable. Работа с потоками в RxJava. Некоторые сложности Android-разработки и их решение c помощью RxJava.
    • Лекция 12. Энергопотребление. Какие подсистемы влияют на энергопотребление? Особенности разных типов дисплеев. Замеры потребления подсистем смартфона. Замеры потребления в зависимости от частоты сетевых запросов. Как Android помогает оптимизировать потребление. Методики пассивного и активного уменьшения потребления.

    Видеозаписи лекций.

    Курс «Базы данных. Лаборатория Tarantool»


    Цель курса — изучение топологии, многообразия и основных принципов функционирования систем хранения и данных, а также алгоритмов, заложенных в основу как централизованных, так и распределённых систем, демонстрация фундаментальных компромиссов присущих тем или иным решениям.

    • Лекция 1. Введение в современные СУБД. Многообразие решений для хранения данных. Модели данных классических и NoSQL-систем. Модели консистентности. Семантика и допустимость овердрафта в интернет-приложениях. Классические алгоритмы организации данных для двухуровневой памяти.
    • Лекция 2. Современные алгоритмы для двухуровневой памяти. Понятие cache-oblivious алгоритма. Базовые cache-oblivious алгоритмы. Понятие write amplification. Фрактальные деревья. LSM-деревья. Блум-фильтры. Двухуровневые деревья.
    • Лекция 3. Кэширование. Алгоритм Least Recently Used. LRU: реализация в СУБД. Понятие online-алгоритма. Понятие c-compettve. LFD: доказательство идеальности. FIFO. Другие алгоритмы и их оценки. Понятие консервативного алгоритма. Рандомизированный алгоритм MARK.
    • Лекция 4 и 5. Архитектура СУБД. Модули. Структуры данных — статика и динамика. Форматы и протоколы. Жизненный цикл запроса.
    • Лекция 6 и 7. Транзакции. Принципы ACID в транзакционной обработке данных. Реализация подсистемы хранения с использованием журнала. Принцип двойной записи. Понятие истории изменений. Стратегии NO UNDO, NO REDO. Стратегии STEAL, NO STEAL.
    • Лекция 8. Управление транзакций с помощью блокировок. Иерархические блокировки. Специальные блокировки. Дедлоки. Приоритеты локов. Понятие hot spot. Алгоритмы поиска дедлоков. Понятие насыщения системы массового обслуживания в применении к транзакционной системе.

    Видеозаписи лекций.

    Как построить команду разработки на удаленке. Опыт Skyeng


    Руководитель разработки в Skyeng Алексей Катаев рассказывает о том, как они создали команду из 68 разработчиков на удаленке, как справляются с экстренными задачами и борются с отвлекающими факторами в домашних условиях.


    Android-разработка: команда, рынок, тестирование


    Как проходит интеграция новых сотрудников в команду, что происходит с рынком Андроид-разработчиков, как выглядит архитектура приложения Новости@mail.ru и всё о тестировании мобильных приложений.




    Напомним, что актуальные лекции и мастер-классы о программировании от наших IT-специалистов по-прежнему публикуются на канале Технострим. Подписывайтесь, чтобы не пропустить новые лекции!
    Mail.ru Group
    Строим Интернет

    Комментарии 5

      +2
      Чета бесят люди, которые «а, чем бы заняться на карантине, какой бы сериальчик посмотреть?»
      простите, наболело
        0
        Сериальчики у меня совсем не зашли. А вот узнать что — то новое и еще применить (особенно сейчас, когда много работы и хочется более продуктивных подходов) — самое то
        0
        да, с одной стороны повсеместная продуктивность подмораживает.
        тут и так на каждом углу блоггер, который в 10 утра уже и марафон пробежал и чек-лист написал, и вообще весь продуктивный.
        а еще появилось куча постов типа «топ-10 вещей, если вы не знаете, что делаь на карантине»

        серьезно? -____-

        ну ладно, люди на удалёнке со своей колокольни судят (я в том числе). для меня-то по сути не поменялось ничего. просто офис теперь не в 30 минутах езды на машине, а в паре метров от кровати.

        а подборка хорошая, глянуть стоит :) спасибо
          +1

          Спасибо большое за видео! Спасибо, что создаёте образовательную среду. Ещё хотелось бы видеть математику.

            0
            хорошая подборка, спасибо

            Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

            Самое читаемое