Здравствуйте!
Разрабатываю мобильные приложения для Android. Через меня проходит большое количество новостей из мира технологий, которым хочется делиться и высказывать мнение.
Канал будет интересен тем, кто работает в области IT и мобильных технологий, а также интересуется ей.
Подписывайся, будет интересно.
Разрабатываю мобильные приложения для Android. Через меня проходит большое количество новостей из мира технологий, которым хочется делиться и высказывать мнение.
Канал будет интересен тем, кто работает в области IT и мобильных технологий, а также интересуется ей.
Подписывайся, будет интересно.
Как найти работу новичку?
#собеседование
Что нужно для работодателя? Важен ли диплом? Где найти работу? Что спрашивают на собеседовании? Попробую ответить на эти и другие вопросы.
Подобные вопросы часто возникают у человека после окончания вуза или если он решает сменить деятельность на сферу разработки ПО. Хочу поделиться опытом и мнением.
http://telegra.ph/Kak-najti-rabotu-novichku-11-16
#собеседование
Что нужно для работодателя? Важен ли диплом? Где найти работу? Что спрашивают на собеседовании? Попробую ответить на эти и другие вопросы.
Подобные вопросы часто возникают у человека после окончания вуза или если он решает сменить деятельность на сферу разработки ПО. Хочу поделиться опытом и мнением.
http://telegra.ph/Kak-najti-rabotu-novichku-11-16
Telegraph
Как найти работу новичку?
Работодателю важен один момент: нанимаемый сотрудник решает поставленные задачи быстро и профессионально. Понятно, что вопросы качества и скорости невозможно отнести к человеку без опыта. Следовательно, для понимания профессиональной пригодности, необходим…
Каждую неделю я буду публиковать топ статей, которые меня заинтересовали. Начну эту традицию с сегодняшней подборки:
#статьи #medium
1) Создание анимации кнопки "лайк", похожей на Instagram, используя StateListAnimators. -(5 минут)
В большинстве приложений, эта кнопка просто меняет состояние. Статья поможет вам выделиться на фоне этих приложений и добавит чуть больше анимаций в проект.
https://android.jlelse.eu/using-statelistanimators-to-create-instagram-like-animation-db2676c9391
2) Красивые анимации, созданные при помощи ConstraintLayout. - (6 минут)
Статья расскажет о использовании TransitionManager для достаточно красивых и простых анимаций
https://robinhood.engineering/beautiful-animations-using-android-constraintlayout-eee5b72ecae3
3) Стресс-тестирование своего приложения. - (6 минут)
Говорится о том, что необходимо проверять при тестировании приложения. Хороший чек-лист, рекомендую делать его как минимум перед каждым релизом
https://medium.com/default-to-open/stress-testing-android-apps-601311ebf590
#статьи #medium
1) Создание анимации кнопки "лайк", похожей на Instagram, используя StateListAnimators. -(5 минут)
В большинстве приложений, эта кнопка просто меняет состояние. Статья поможет вам выделиться на фоне этих приложений и добавит чуть больше анимаций в проект.
https://android.jlelse.eu/using-statelistanimators-to-create-instagram-like-animation-db2676c9391
2) Красивые анимации, созданные при помощи ConstraintLayout. - (6 минут)
Статья расскажет о использовании TransitionManager для достаточно красивых и простых анимаций
https://robinhood.engineering/beautiful-animations-using-android-constraintlayout-eee5b72ecae3
3) Стресс-тестирование своего приложения. - (6 минут)
Говорится о том, что необходимо проверять при тестировании приложения. Хороший чек-лист, рекомендую делать его как минимум перед каждым релизом
https://medium.com/default-to-open/stress-testing-android-apps-601311ebf590
Что изучать в начале карьеры Android-разработчика? Делюсь полезными библитеками, с которых стоит начать карьеру.
#статьи #библиотеки #разработка
http://telegra.ph/CHto-izuchat-v-nachale-karery-Android-razrabotchika-11-27
#статьи #библиотеки #разработка
http://telegra.ph/CHto-izuchat-v-nachale-karery-Android-razrabotchika-11-27
Telegraph
Что изучать в начале карьеры Android-разработчика
В начале разработки под Android, у многих возникает вопрос: что нужно изучать, с каких шагов начать путь разработчика. Из моего опыта, могу дать несколько советов, которые помогут в написании кода и работы в команде. 1. Используйте библиотеки. У новичков…
Хочу рассказать о полезной вещи как паттерны. Паттерн — это шаблон, который помогает правильно организовать код и который известен другим разработчикам, что не вносит неопределенности при работе в команде. Паттерны, как и архитектура, организуют код, делают его понятным. Только важно помнить, что все хорошо в меру и не стоит применять их «для галочки».
Первый, и самый простой #паттерн — это паттерн Builder. Наиболее известный пример — StringBuilder. Реже используются FloatBuffer, IntBuffer. Идея состоит в том, что для создания какого-то объекта, имеющего много свойств не создается отдельный конструктор, а вместо этого делается цепочка из методов, каждый из который возвращает объект с примененным в этом методе свойством.
Пример: представьте себе программу, которая создает для вас игроков для стратегии. Каждый игрок имеет определенные свойства: пол, вес, возраст, цвет волос, национальность. Вместо описания всех этих свойств сразу, мы можем задавать параметры шаг за шагом, до тех пор, пока не создадим персонажа. По такой же схеме работает и Builder.
Первый, и самый простой #паттерн — это паттерн Builder. Наиболее известный пример — StringBuilder. Реже используются FloatBuffer, IntBuffer. Идея состоит в том, что для создания какого-то объекта, имеющего много свойств не создается отдельный конструктор, а вместо этого делается цепочка из методов, каждый из который возвращает объект с примененным в этом методе свойством.
Пример: представьте себе программу, которая создает для вас игроков для стратегии. Каждый игрок имеет определенные свойства: пол, вес, возраст, цвет волос, национальность. Вместо описания всех этих свойств сразу, мы можем задавать параметры шаг за шагом, до тех пор, пока не создадим персонажа. По такой же схеме работает и Builder.
Топ статей с Medium по Android-разработке за неделю.
#статьи #medium
1) Описание многопоточности в RxJava 2. — (12 минут)
Эта библиотека для многих, (в том числе и для меня) незаменимым инструментом для работы с сервером, API, доступом к БД. Автор очень подробно описывает операторы для многопоточности в RxJava, разницу между thread pool, которые в ней используются.
https://blog.gojekengineering.com/multi-threading-like-a-boss-in-android-with-rxjava-2-b8b7cf6eb5e2
2) Knowledge boost for junior Android developers. — (6 + 6 минут)
Список компонентов, инструментов, приемов и библиотек, который полезно знать и учитывать всем разработчикам. Некоторые моменты статьи спорные и требуют изучения. Но хорошо, когда прочитанная статья заставляет изучить какую-то тему. Читайте, устраняйте свои пробелы.
https://android.jlelse.eu/knowledge-boost-for-junior-android-developers-part-i-b3250fe4b622
https://android.jlelse.eu/knowledge-boost-for-junior-android-developers-part-ii-e62ae5154160
3) Побитовые операторы. — (3 минуты)
Хорошо, с графиками и наглядно автор описывает применение побитовых операторов в разработке. Рекомендую изучить, особенно если ваши знания по этой теме давно не обновлялись.
https://android.jlelse.eu/java-when-to-use-n-8-0xff-and-when-to-use-byte-n-8-2efd82ae7dd7
#статьи #medium
1) Описание многопоточности в RxJava 2. — (12 минут)
Эта библиотека для многих, (в том числе и для меня) незаменимым инструментом для работы с сервером, API, доступом к БД. Автор очень подробно описывает операторы для многопоточности в RxJava, разницу между thread pool, которые в ней используются.
https://blog.gojekengineering.com/multi-threading-like-a-boss-in-android-with-rxjava-2-b8b7cf6eb5e2
2) Knowledge boost for junior Android developers. — (6 + 6 минут)
Список компонентов, инструментов, приемов и библиотек, который полезно знать и учитывать всем разработчикам. Некоторые моменты статьи спорные и требуют изучения. Но хорошо, когда прочитанная статья заставляет изучить какую-то тему. Читайте, устраняйте свои пробелы.
https://android.jlelse.eu/knowledge-boost-for-junior-android-developers-part-i-b3250fe4b622
https://android.jlelse.eu/knowledge-boost-for-junior-android-developers-part-ii-e62ae5154160
3) Побитовые операторы. — (3 минуты)
Хорошо, с графиками и наглядно автор описывает применение побитовых операторов в разработке. Рекомендую изучить, особенно если ваши знания по этой теме давно не обновлялись.
https://android.jlelse.eu/java-when-to-use-n-8-0xff-and-when-to-use-byte-n-8-2efd82ae7dd7
Уже несколько раз за время своей практики разработчика, встречаю один неприятный момент — RTL-языки (right-to-left, те языки, который пишутся справа-налево). Если пишите приложение для большого количества пользователей из разных стран - попробуйте поменять язык телефона на фарси и посмотрите, не появились ли аномалии в верстке.
Из опыта скажу, какие баги встречал:
1) LinearLayout. Один из самых распространенных элементов для верстки по умолчанию работает не очень хорошо с фарси. Если не выставлять нужные gravity у него верно, то получите кашу в своем. У RelativeLayout тоже есть проблемы, но опять же смотрите на gravity, layout_toLeftOf и подобные. С новомодным ConstraintLayout в этом плане проблем меньше,
2) Строки. Одной из задач, которую я делал — был показ счета команд. Выяснилось, что приходящие строки приходили верно, но по причине того, что строка была из цифр, латинских букв и фарси — она начала отображаться неверно, что было критично.
3) Календарь. Форматтер в фарси присылал день на один меньше, чем на самом деле. Проблема решилась тем, чтобы выводить дату в английской локали.
Иными словами — обязательно смотрите, как выглядит ваше приложение в RTL-локалях.
Из опыта скажу, какие баги встречал:
1) LinearLayout. Один из самых распространенных элементов для верстки по умолчанию работает не очень хорошо с фарси. Если не выставлять нужные gravity у него верно, то получите кашу в своем. У RelativeLayout тоже есть проблемы, но опять же смотрите на gravity, layout_toLeftOf и подобные. С новомодным ConstraintLayout в этом плане проблем меньше,
2) Строки. Одной из задач, которую я делал — был показ счета команд. Выяснилось, что приходящие строки приходили верно, но по причине того, что строка была из цифр, латинских букв и фарси — она начала отображаться неверно, что было критично.
3) Календарь. Форматтер в фарси присылал день на один меньше, чем на самом деле. Проблема решилась тем, чтобы выводить дату в английской локали.
Иными словами — обязательно смотрите, как выглядит ваше приложение в RTL-локалях.
Частым форматом для обмена между сервером и клиентом является JSON. Обычно, разработчики пользуются библиотеками для парсинга, например Gson. Для того, чтобы использовать её, необходимо сгенерировать POJO-файл с указанием необходимых полей для сереализации.
Для их генерации можно использовать сайты-генераторы (http://www.jsonschema2pojo.org/), которые на выходе дают текст этого файла. Данный сайт достаточно неплохое решение, но не так давно я обнаружил средство, которое ускоряет создание подобных файлов.
Это средство — RoboPOJOGenerator. Оно представляет из себя #плагин для Android Studio, которые позволяет в несколько кликов получить POJO-файл, включенный в проект и полностью готовый для использования. Это избавляет от необходимости ручного создания файлов. Также, генератор полностью совместим с Kotlin, поддерживает несколько популярных библиотек для парсинга.
Оптимизация подобных процессов ускоряет рабочий процесс и избавляет от рутинных действий.
Для их генерации можно использовать сайты-генераторы (http://www.jsonschema2pojo.org/), которые на выходе дают текст этого файла. Данный сайт достаточно неплохое решение, но не так давно я обнаружил средство, которое ускоряет создание подобных файлов.
Это средство — RoboPOJOGenerator. Оно представляет из себя #плагин для Android Studio, которые позволяет в несколько кликов получить POJO-файл, включенный в проект и полностью готовый для использования. Это избавляет от необходимости ручного создания файлов. Также, генератор полностью совместим с Kotlin, поддерживает несколько популярных библиотек для парсинга.
Оптимизация подобных процессов ускоряет рабочий процесс и избавляет от рутинных действий.