Средства миграции данных Android и улучшение поддержки приложений
Пользователи создают учетные записи, активируют их, а затем сохраняются, когда многократно запускают приложение. Обычно пользователю не нужно повторно вводить пароль для Android-приложения в течение многих лет, то есть до тех пор, пока он не купит новый телефон.
Покупка нового телефона — это редкое событие для многих людей, может пройти несколько лет между обновлением устройств. Существует несколько инструментов, которые помогут пользователям войти в систему, когда они будут использовать приложение на новом телефоне.
Understanding Dependencies
От переводчика
Мы — внедрители. Мы должны внедрять, а не фантазировать!
(Рина Зеленая, к/ф «Девушка без адреса»)
К переводу этой статьи меня побудили две причины: 1) желание лучше разобраться с фреймворком Spring, 2) небольшое количество источников по теме на русском языке.
Краеугольный камень ООП — «внедрение зависимостей». Если описание процесса «внедрения» в целом, удовлетворительно, то объяснение понятия «зависимость» обычно оставляют за скобками. На мой взгляд, это существенное упущение.
Чтобы не фантазировать, а внедрять, нужно сначала разобраться с тем, что мы внедряем. И в этом нам может помочь лаконичная статья Jakob Jenkov «Understanding Dependencies». Она будет полезна не только тем, кто пишет на Java, но и тем, кто пишет на других языках и следит за качеством проектирования приложений.
UPD: Я перевел еще одну статью Jakob Jenkov о зависимостях. Читайте на Хабре перевод статьи Dependency Injection, которая открывает одноименную серию статей и по смыслу продолжает данную статью. В статьях серии рассматриваются такие понятия как Dependency, Dependency Injection (DI), DI-контейнеры.
Ловкость рук и никакого мошенничества: практические советы по ускоренному обучению дизайну для разработчиков
Улучшаем дизайн проекта с помощью тактически грамотных действий, а не таланта.
Нравится вам это или нет, каждый веб-разработчик неизбежно сталкивался с ситуациями, когда ему необходимо принять решение, касающееся визуального дизайна.
Возможно, в компании, в которой вы работаете, нет штатного дизайнера, и вам необходимо реализовать интерфейс для нового функционала. Или, может быть, вы решили подработать на побочном проекте, и хотели бы, чтобы он выглядел лучше, чем «ещё один bootstrap-сайт».
Легко опустить руки и сказать: «Я никогда не смогу сделать это должным образом, я не художник!», Но, оказывается, есть уйма ловких приёмов, которые вы сможете использовать, чтобы поднять свою работу на другой уровень, не имея опыта в графическом дизайне.
Под катом семь простых идей, которые вы сможете использовать для улучшения своих проектов.
1. Для создания иерархии используем цвет и вес вместо размера
Технический долг и места его обитания
Эта статья — вольный пересказ доклада, который я посетил на конференции GOTO Berlin 2017: A Crystal Ball to Prioritize Technical Debt.
Изображения из доклада и права на них принадлежат автору @AdamTornhill.
Каждый разработчик в принципе понимает, что такое технический долг. Что в его проекте этот долг наверняка присутствует. Если повезет, он вспомнит несколько кусков кода, которые давно просятся быть переписанными.
Но как формализовать понятие технического долга, чтобы объяснить его другим? И, тем более, объяснить это менеджеру так, чтобы получить одобрение на рефакторинг? Как найти все места в проекте, которые нужно по-хорошему переписать, и как определить, какие из них должны быть переписаны в первую очередь?
Если эти вопросы неоднократно у вас возникали, прошу под кат.
Руководство по фоновой работе в Android. Часть 1
О фоновой работе приложений в Android есть много статей, но мне не удалось найти подробного руководства по реализации работы в фоне – думаю, из-за того, что появляется все больше новых инструментов для такой работы. Поэтому я решил написать серию статей о принципах, инструментах и методах асинхронной работы в приложениях под Android.
Git: советы новичкам – часть 2
Препарирование файлов .XLSX: строковые значения, разметка ячеек
Про строковые значения и метод их хранения я уже вскользь упоминал в первой части, а сейчас поговорим подробнее. Представим, что у нас есть таблица, заполненная строковыми данными, и что она большая. При этом крайне маловероятно, что все значения в ней будут уникальны. Некоторые из них нет-нет, да повторятся где-нибудь в разных частях таблицы. Хранить такой массив «как есть» внутри XML-разметки листа нерационально с точки зрения ресурсов ПК. Поэтому все строковые значения вынесены в отдельный файл, %file%/xl/sharedStrings.xml. Часть его, которая нас интересует, выглядит, допустим, так:
GitHub Flow
Увидев в очередной раз базворд GitFlow я психанул и решил перевести описание более простой и менее проблемной схемы работы с ветками под названием GitHub Flow. Именно её имеет смысл использовать по умолчанию, переходя к какой-то другой лишь в случае непреодолимых обстоятельств.
Создайте ветвь
Пока вы работаете над одним проектом, у вас может быть куча различных реализуемых параллельно улучшений. Некоторые из них готовы к работе, а другие — нет. Ветвление позволяет вам управлять этим рабочим процессом.
Драйвера nVidia и телеметрия
Всем привет.
Возможно ни для кого не секрет, что последние пакеты драйверов от nVidia содержат комплекс телеметрии.
Понимая, что разработчик желает получать данные об использовании своего продукта, оптимизировать и улучшать программную составляющую, многие не желают быть бесплатными тестерами, более того — без спроса.
На картинке выше приводится способ отключения телеметрии «из коробки», надо отдать должное — производитель засунул эту опцию в довольно неожиданное место, и надо ещё больше отдать должное — работает она не до конца.
Ниже будет рассмотрено, как полностью отключить телеметрию в драйверах nVidia последних версий.
Практика написания тестов. Лекция Яндекса
— Прежде чем двинуться вперед, давайте устроим небольшой соцопрос. Кто из вас знает, что такое тесты? Кто пишет тесты? А кто знает, зачем он пишет тесты?
Полное руководство по Splash Screen на Android
Перевод статьи Elvis Chidera "The (Complete) Android Splash Screen Guide". Но для начала немного истории о проблеме Splash Screen на Android.
Лекции Технотрека. Разработка под Android (осень 2017)
Представляем вашему вниманию очередную порцию лекций Технотрека. В рамках курса будут рассмотрены основы разработки под Android. Вы научитесь эффективно использовать среду разработки Android Studio для создания пользовательского интерфейса, написания и отладки кода, профилирования приложений, поиска и решения проблем в коде. Узнаете о возможностях стандартной библиотеки и платформы Android, научитесь эффективно их использовать. Освоите проектирование кода, обладающего качествами модульности, расширяемости, простоты поддержки. Научитесь использовать средства автоматизированного тестирования.
Курс ведут Юрий Береза, старший программист студии IT Territory, и Кирилл Филимонов, руководитель команды разработки BeepCar Android.
Git снизу вверх
Изображение из твиттера @girlie_mac
Но вот однажды я на три незабываемых дня попала в роддом — это иногда случается с женщинами. Из развлечений у меня были новорожденная дочь и телефон с большим экраном. Дочь поначалу развлекала плохо (дома она быстро исправилась), а на телефоне помимо книг и фильмов обнаружился текст «Git from the bottom up», который оказался более чем годным… С тех пор прошло почти 3 года,
Советы по созданию современного Android-приложения. Лекция Яндекса
— Все вы как минимум пару месяцев программируете под Android. Возможно, кто-то программирует пару лет и уже от корки до корки прочитал developer.android.com. А возможно, нет. Но вы все наверняка знаете, как можно сделать многие вещи как минимум одним из способов. Но не секрет, что этих способов может быть много, у каждой команды они могут быть свои, и часто тот или иной способ выбран исключительно по историческим причинам.
Сегодня я хочу сделать небольшой обзор того, какие вообще есть альтернативы и средства разработки и на чем стоит акцентировать внимание при выборе той или иной библиотеки.
8 учебных проектов
Предлагаем 8 вариантов проектов, которые можно сделать «по фану», дабы получить реальный опыт разработки.
Проект 1. Клон Trello
Клон Trello от Indrek Lasn .
Что вы освоите:
- Организация маршрутов обработки запросов (Routing).
- Drag and drop.
- Как создавать новые объекты (доски, списки, карточки).
- Обработка и проверка входных данных.
- Со стороны клиента: как использовать локальное хранилище, как сохранять данные в локальном хранилище, как читать данные из локального хранилища.
- Со стороны сервера: как использовать базы данных, как сохранять данных в базе, как читать данные из базы.
Тут пример репозитория, сделанного на React+Redux.
10 Вещей с которыми сталкиваются начинающие Android-разработчики
От переводчика: постарался все изложить максимально близко к оригиналу. Перевод получился в свободной форме — думаю это лучше передаст смысл статьи. На картинках есть всплывающие подсказки. Оригинал здесь.
Я решил написать о некоторых типичных ошибках и проблемах, с которыми когда-то столкнулся сам, когда начинал разрабатывать Android-приложения три года назад, и нескольких других, с которыми сталкивались начинающие Андроид-разработчики. Итак, поехали!
Современная Android разработка на Kotlin. Часть 1
Очень сложно найти один проект, который охватывал бы всё новое в разработке под Android в Android Studio 3.0, поэтому я решил написать его. В этой статье мы разберём следующее:
- Android Studio 3
- Язык программирования Kotlin
- Варианты сборки
- ConstraintLayout
- Библиотека привязки данных Data Binding
- Архитектура MVVM + паттерн repository (с mapper'ами) + Android Manager Wrappers
- RxJava2 и как это помогает нам в архитектуре
- Dagger 2.11, что такое внедрение зависимости, почему вы должны использовать это.
- Retrofit (Rx Java2)
- Room (Rx Java2)
Каким будет наше приложение?
Наше приложение будет самым простым, которое охватывает все перечисленные выше вещи: у него будет только одна функция, которая извлекает все репозитории пользователя googlesamples из GitHub, сохраняет эти данные в локальной базе данных и показывает их пользователю.
Я попытаюсь объяснить как можно больше строк кода. Вы всегда можете посмотреть код, который я опубликовал на GitHub.
Путь автоматизации: конкуренция с ИИ, избавление от рутины, безусловное базовое время
(c)
Как автоматизировать работу и никогда не работать? Прежде чем ответить на этот вопрос, спросите себя о другом: сколько времени вам нужно для счастья? Люди, которые не знают, чем занять вечер выходного дня, не нуждаются в автоматизации многих задач.
Сокращение рутины дает преимущество в конкурентной борьбе. Автоматизация «добывает» самый ценный ресурс на планете — время. Технический прогресс позволяет тратить время на то, что вам интересно: на решение интеллектуальных задач и, вероятно, более сложную работу, выполнение которой обеспечит больше возможностей для улучшения качества жизни.
Дальше — о том, что и как облегчает нам жизнь.
Будь мужиком, открой ИП
Последние 7 лет я как и многие здесь читал Хабр (а сейчас Гиктаймс), и обычно мне удавалось справляться с порывами запилить пост другой, и светлые идеи благополучно направлялись на склад, откуда никогда не возвращались. Но несколько недель назад все изменилось. Я прочел замечательный пост под названием «Если вместо оформления на работу предлагают открыть ИП», и теперь не могу молчать. И так, давайте разберемся что же меня так зацепило…
Information
- Rating
- Does not participate
- Location
- Москва и Московская обл., Россия
- Registered
- Activity