Пять правил код-ревью, для стажёров, джунов и мидлов
Эксперт Газпромбанка делится своим опытом и рассказывает, как специалистам разного уровня стоит анализировать код.
Из статьи вы также узнаете, как оформлять описание кода, что такое nit и какие существуют универсальные принципы для всех грейдов.
#лучшиепрактики
Эксперт Газпромбанка делится своим опытом и рассказывает, как специалистам разного уровня стоит анализировать код.
Из статьи вы также узнаете, как оформлять описание кода, что такое nit и какие существуют универсальные принципы для всех грейдов.
#лучшиепрактики
🗿20👍7😁4🌚1
Как Apple может удалить все ваши приложения из-за атаки мошенника-конкурента
История приключилась с разработчиками Sarafan Mobile Limited. Пару месяцев назад их учётную запись внезапно заблокировали и пометили для удаления. Ребята разрабатывают фото- и видеоприложения для креаторов контента. Вроде бы ничего нелегального, но не тут-то было.
Все началось с того, что в августе Apple удалила одно из приложений разработчика из-за нарушениия раздела 3.2(f) Лицензионного соглашения Apple Developer Program. Мол, учетная запись использовалась для нечестных или мошеннических действий.
Позже разработчики заметили, что кто-то размещает рекламу с их креативами для продвижения похожего приложения. Оказалось, что их приложение Rolly полностью скопировали (видео ниже). А на оригинальное приложение накручивались фэйковые 5-звёздочные отзывы. Скорее всего, это и привело к блокировке. Но несмотря на все доводы и доработки, Apple отклонила все аппеляции, удалила учетную запись и все приложения.
Студия разработки неплохо зарабатывала с этих приложений. По их словам, за три месяца блокировки Apple лишила их дохода в $ 108 878. Конечно, сейчас ребята призывают к помощи и поддержке всяких петиций.
Сложно сказать, как было на самом деле, но случай интересный. Если история полностью правдива, то злоумышленники даже такими глупыми методами могут просто угнать у вас бизнес. Будьте аккуратны и внимательны не только к своим действиям, но и действиям конкурентов.
#apple #ios
История приключилась с разработчиками Sarafan Mobile Limited. Пару месяцев назад их учётную запись внезапно заблокировали и пометили для удаления. Ребята разрабатывают фото- и видеоприложения для креаторов контента. Вроде бы ничего нелегального, но не тут-то было.
Все началось с того, что в августе Apple удалила одно из приложений разработчика из-за нарушениия раздела 3.2(f) Лицензионного соглашения Apple Developer Program. Мол, учетная запись использовалась для нечестных или мошеннических действий.
Позже разработчики заметили, что кто-то размещает рекламу с их креативами для продвижения похожего приложения. Оказалось, что их приложение Rolly полностью скопировали (видео ниже). А на оригинальное приложение накручивались фэйковые 5-звёздочные отзывы. Скорее всего, это и привело к блокировке. Но несмотря на все доводы и доработки, Apple отклонила все аппеляции, удалила учетную запись и все приложения.
Студия разработки неплохо зарабатывала с этих приложений. По их словам, за три месяца блокировки Apple лишила их дохода в $ 108 878. Конечно, сейчас ребята призывают к помощи и поддержке всяких петиций.
Сложно сказать, как было на самом деле, но случай интересный. Если история полностью правдива, то злоумышленники даже такими глупыми методами могут просто угнать у вас бизнес. Будьте аккуратны и внимательны не только к своим действиям, но и действиям конкурентов.
#apple #ios
😐18🙊1
Почему джунов в мобильной разработке не берут на работу?
Делимся видео, в котором наконец-то разобрали важную тему: почему многие компании избегают найма джунов в сфере мобильной разработки. Видео основано на реальном опыте, общении с HR-специалистами и техническими директорами.
Особенно приятно, что есть какие-то итоги для джунов, которые можно учитывать при поиске работы и устройстве в такие компании: https://www.youtube.com/watch?v=Evku6LOqJMs
#карьера #работа
Делимся видео, в котором наконец-то разобрали важную тему: почему многие компании избегают найма джунов в сфере мобильной разработки. Видео основано на реальном опыте, общении с HR-специалистами и техническими директорами.
Особенно приятно, что есть какие-то итоги для джунов, которые можно учитывать при поиске работы и устройстве в такие компании: https://www.youtube.com/watch?v=Evku6LOqJMs
#карьера #работа
YouTube
Почему джунов не берут на работу / Мобильный разработчик
В этом видео я глубоко погружаюсь в актуальную проблему: почему столь многие компании избегают найма джунов в сфере мобильной разработки. Откуда такие стереотипы и есть ли для них причина? Основываясь на своем реальном опыте, а также общении с HR-специалистами…
👎29❤🔥4👍1
Что нового в Android Studio 2023.1 Hedgehog и стоит ли обновляться? Спойлер: впечатления спорные
Вышла новая версия Android Studio, которая базируется на IntelliJ 2023.1.
Основные изменения кратко:
— Android Vitals теперь отображаются в проекте в Android Studio
— Появился Power Profile — замер расхода энергии на устройстве.
— Автоматизировали миграцию на Target SDK 34 (Android 14).
— Сделали возможным показ и управление подключенным устройством из Android Studio (на гифке ниже).
— Теперь управлять всеми Deep Link можно будет в одном месте.
— Появился режим «Галарея» в Compose Preview.
— Информация о Compose State теперь есть в дебагере.
— Появились стандартные шаблоны превью для Compose.
— Минимизировали эффект антивирусов на скорость сборки в Windows.
— Минимальная версия Android Gradle Plugin теперь 8.1.1.
Почитать подробнее об обновлении можно здесь.
Кто-то говорит, что обновление стоящее. Кто-то —что среда стала ещё тормознутее, а компиляция теперь происходит не за одну минуту, а за три.
А как у вас?
#android
Вышла новая версия Android Studio, которая базируется на IntelliJ 2023.1.
Основные изменения кратко:
— Android Vitals теперь отображаются в проекте в Android Studio
— Появился Power Profile — замер расхода энергии на устройстве.
— Автоматизировали миграцию на Target SDK 34 (Android 14).
— Сделали возможным показ и управление подключенным устройством из Android Studio (на гифке ниже).
— Теперь управлять всеми Deep Link можно будет в одном месте.
— Появился режим «Галарея» в Compose Preview.
— Информация о Compose State теперь есть в дебагере.
— Появились стандартные шаблоны превью для Compose.
— Минимизировали эффект антивирусов на скорость сборки в Windows.
— Минимальная версия Android Gradle Plugin теперь 8.1.1.
Почитать подробнее об обновлении можно здесь.
Кто-то говорит, что обновление стоящее. Кто-то —что среда стала ещё тормознутее, а компиляция теперь происходит не за одну минуту, а за три.
А как у вас?
#android
👍6❤5🤔2
Логические задачи для программистов, которые бесят своей простотой
На собеседованиях часто задают каверзные логические задачи. Они кажутся глупыми, их применимость к реальным рабочим задачам оценить вообще не получается. Но тем не менее, они здорово развивают логику и их все равно придётся когда-нибудь решать.
Составили список каверзных задач по программированию, которые чаще других встречаются на собеседованиях: https://tproger.ru/articles/logicheskie-zadachi-po-programmirovaniyu-kotorye-tolko-kazhutsya-slozhnymi
#задачи #собеседование
На собеседованиях часто задают каверзные логические задачи. Они кажутся глупыми, их применимость к реальным рабочим задачам оценить вообще не получается. Но тем не менее, они здорово развивают логику и их все равно придётся когда-нибудь решать.
Составили список каверзных задач по программированию, которые чаще других встречаются на собеседованиях: https://tproger.ru/articles/logicheskie-zadachi-po-programmirovaniyu-kotorye-tolko-kazhutsya-slozhnymi
#задачи #собеседование
👍6😁5
Как использовать WebView в Android-приложениях
Это нормальная история, когда Android-приложения полагаются на веб-контент. Будь то отображение веб-страниц, интеграция веб-функций или использование серверных операций, компонент WebView играет жизненно важную роль в плавном преодолении разрыва между собственными приложениями Android и веб-технологиями.
И вот небольшой гайд с хорошими практиками, в котором автор разобрал, как эффективно работать с веб-контентом в Android с помощью WebView: https://proglib.io/p/osobennosti-ispolzovaniya-webview-v-android-prilozheniyah-2023-06-23
#android
Это нормальная история, когда Android-приложения полагаются на веб-контент. Будь то отображение веб-страниц, интеграция веб-функций или использование серверных операций, компонент WebView играет жизненно важную роль в плавном преодолении разрыва между собственными приложениями Android и веб-технологиями.
И вот небольшой гайд с хорошими практиками, в котором автор разобрал, как эффективно работать с веб-контентом в Android с помощью WebView: https://proglib.io/p/osobennosti-ispolzovaniya-webview-v-android-prilozheniyah-2023-06-23
#android
👍6🔥6
Old but gold: измеряем производительность Android-приложения
Небольшой видеоурок о том, как с помощью Jetpack Benchmarking легко измерить время запуска и производительность UI:
https://youtu.be/XHz_cFwdfoM
#android
Небольшой видеоурок о том, как с помощью Jetpack Benchmarking легко измерить время запуска и производительность UI:
https://youtu.be/XHz_cFwdfoM
#android
❤🔥7👍2
Forwarded from Точка входа в программирование
Различия между MVC, MVP, MVVM, MVVM-C, и VIPER
Эти архитектурные паттерны являются одними из наиболее часто используемых при разработке приложений, как на платформах iOS, так и Android.
MVC (Model-View-Controller) — один из самых широко используемых архитектурных шаблонов. Он разделяет приложение на три основных компонента: модель (представляет данные и бизнес-логику), представление (отвечает за отображение интерфейса) и контроллер (действует как посредник между моделью и представлением).
MVP (Model-View-Presenter) похож на MVC, но имеет немного другой подход. В MVP посредником между моделью и представлением является презентер , а не контроллер. Презентер отвечает за обновление представления данными из модели и обработку пользовательского ввода и событий.
MVVM (Model-View-ViewModel) — архитектурный шаблон, набирающий популярность и используемый в приложениях со сложными пользовательскими интерфейсами. Он похож на MVP, но с добавлением модели представления (view model), которая отвечает за управление состоянием представления и за предоставление данных из модели в представление.
MVVM-C (Model-View-ViewModel-Coordinator) — это вариация MVVM, с добавлением координатора, который отвечает за управление навигацией между различными экранами или представлениями в приложении. Этот шаблон полезен для приложений, в которых есть несколько управляемых экранов или представлений.
VIPER (View-Interactor-Presenter-Entity-Router) — относительно новая архитектурный шаблон, который похож на MVC, но с добавлением нескольких новых компонентов, включая интерактор (отвечает за обработку бизнес-логики), сущность (представляет данные) и маршрутизатор (обрабатывает навигацию между различными экранами и представлениями).
#android #ios #frontend
Эти архитектурные паттерны являются одними из наиболее часто используемых при разработке приложений, как на платформах iOS, так и Android.
MVC (Model-View-Controller) — один из самых широко используемых архитектурных шаблонов. Он разделяет приложение на три основных компонента: модель (представляет данные и бизнес-логику), представление (отвечает за отображение интерфейса) и контроллер (действует как посредник между моделью и представлением).
MVP (Model-View-Presenter) похож на MVC, но имеет немного другой подход. В MVP посредником между моделью и представлением является презентер , а не контроллер. Презентер отвечает за обновление представления данными из модели и обработку пользовательского ввода и событий.
MVVM (Model-View-ViewModel) — архитектурный шаблон, набирающий популярность и используемый в приложениях со сложными пользовательскими интерфейсами. Он похож на MVP, но с добавлением модели представления (view model), которая отвечает за управление состоянием представления и за предоставление данных из модели в представление.
MVVM-C (Model-View-ViewModel-Coordinator) — это вариация MVVM, с добавлением координатора, который отвечает за управление навигацией между различными экранами или представлениями в приложении. Этот шаблон полезен для приложений, в которых есть несколько управляемых экранов или представлений.
VIPER (View-Interactor-Presenter-Entity-Router) — относительно новая архитектурный шаблон, который похож на MVC, но с добавлением нескольких новых компонентов, включая интерактор (отвечает за обработку бизнес-логики), сущность (представляет данные) и маршрутизатор (обрабатывает навигацию между различными экранами и представлениями).
#android #ios #frontend
❤22👎8🥱6👍2
Old but gold: Создаём игру «Крестики-нолики» на Android
2-часовой видеоурок, в котором разбирается, как создать популярную игру с помощью Ktor и Web Sockets. Автор также показывает, как настроить серверную часть, чтобы играть с друзьями:
Хоть ролику и год, он всё еще актуален: https://youtu.be/sKCCwl5lNBk
#android
2-часовой видеоурок, в котором разбирается, как создать популярную игру с помощью Ktor и Web Sockets. Автор также показывает, как настроить серверную часть, чтобы играть с друзьями:
Хоть ролику и год, он всё еще актуален: https://youtu.be/sKCCwl5lNBk
#android
👍18❤3🆒2❤🔥1
Google планирует интегрировать ИИ-модель Gemini в Android: что надо знать разработчикам?
Gemini — это новая нейросетевая модель от Google и у неё есть три версии: Ultra, Pro и Nano. Компания утверждает, что версия модели Ultra отвечает качественнее, чем GPT-4.
Но самое интересное для нас — это версия Nano, оптимизированная для мобильных устройств. Эта модель способна выполнять задачи на мобильном процессоре, включая качественное резюмирование текстов, контекстные умные ответы и продвинутую грамматическую коррекцию.
Нас ждёт интеграция с новой системой Android AICore в Android 14. И главные вопросы для Android-разработчиков сейчас — как подготовиться к нововведениям и попасть в программу раннего доступа?
Программа раннего доступа здесь (да, это ссылка на гуглформу :)). Устройство вкратце — на картинке. Немного подробнее — в небольшой заметке: https://apptractor.ru/info/news/gemini-announce.html
#android #google #ии
Gemini — это новая нейросетевая модель от Google и у неё есть три версии: Ultra, Pro и Nano. Компания утверждает, что версия модели Ultra отвечает качественнее, чем GPT-4.
Но самое интересное для нас — это версия Nano, оптимизированная для мобильных устройств. Эта модель способна выполнять задачи на мобильном процессоре, включая качественное резюмирование текстов, контекстные умные ответы и продвинутую грамматическую коррекцию.
Нас ждёт интеграция с новой системой Android AICore в Android 14. И главные вопросы для Android-разработчиков сейчас — как подготовиться к нововведениям и попасть в программу раннего доступа?
Программа раннего доступа здесь (да, это ссылка на гуглформу :)). Устройство вкратце — на картинке. Немного подробнее — в небольшой заметке: https://apptractor.ru/info/news/gemini-announce.html
#android #google #ии
✍10❤3
Как тестировать интерфейс мобильных приложений?
Сегодня в нашей рубрике #инструменты — Appium, опенсорс-платформа для тестов.
С его помощью можно тестировать нативные, гибридные и веб-приложения. При этом автоматизированное тестирования возможно как на физических устройствах, так и на эмуляторе/симуляторе.
Appium не зависит от операционной системы мобильного устройства — у инструмента есть фреймворк или оболочка, переводящие команды Selenium Webdriver в команды UIAutomation (iOS) или UIAutomator (Android).
У репозитория уже больше 17 тыс звёзд, а функциональность доступна бесплатно: https://appium.io/docs/en/2.2/
#android #ios #инструменты #тестирование
Сегодня в нашей рубрике #инструменты — Appium, опенсорс-платформа для тестов.
С его помощью можно тестировать нативные, гибридные и веб-приложения. При этом автоматизированное тестирования возможно как на физических устройствах, так и на эмуляторе/симуляторе.
Appium не зависит от операционной системы мобильного устройства — у инструмента есть фреймворк или оболочка, переводящие команды Selenium Webdriver в команды UIAutomation (iOS) или UIAutomator (Android).
У репозитория уже больше 17 тыс звёзд, а функциональность доступна бесплатно: https://appium.io/docs/en/2.2/
#android #ios #инструменты #тестирование
🔥6👍1
Инструкция: как быстро настроить GitLab CI/CD на Flutter-проекте
В интернете немного подробных руководств по этой теме. А в тех, что есть, встречаются нерабочие и запутанные примеры либо они просто плохого качества.
Вот свежая инструкция, составленная «по горячим следам». Сохраните, чтобы не потерять — инструкция здорово облегчит жизнь, когда вам быстро понадобится собрать CI/CD на Flutter-проекте.
Код будет проверяться и тестироваться, сборки собираться, а вы сэкономите кучу времени и нервов: https://habr.com/ru/companies/agima/articles/779028/
#flutter
В интернете немного подробных руководств по этой теме. А в тех, что есть, встречаются нерабочие и запутанные примеры либо они просто плохого качества.
Вот свежая инструкция, составленная «по горячим следам». Сохраните, чтобы не потерять — инструкция здорово облегчит жизнь, когда вам быстро понадобится собрать CI/CD на Flutter-проекте.
Код будет проверяться и тестироваться, сборки собираться, а вы сэкономите кучу времени и нервов: https://habr.com/ru/companies/agima/articles/779028/
#flutter
👍4
Android vs iOS
Android лучше iOS? Или iOS лучше Android? Что круче: пиксель или айфон? Почему?
Никто лучше мобильных разработчиков не знает ответы на эти вопросы. Пришла пора наконец-то разобраться.
#обсуждение
Android лучше iOS? Или iOS лучше Android? Что круче: пиксель или айфон? Почему?
Никто лучше мобильных разработчиков не знает ответы на эти вопросы. Пришла пора наконец-то разобраться.
#обсуждение
😁18🌚8🥱3
Forwarded from Нейроканал
This media is not supported in your browser
VIEW IN TELEGRAM
Компания Google представила новую мультимодальную модель искусственного интеллекта под названием Gemini. Её отличительная черта — возможность обрабатывать информацию из разнообразных источников: кода, текстов, изображений, аудио и даже видео.
Gemini будет доступна в трёх версиях:
— Gemini Ultra: самая большая и мощная модель серии, которая по результатам тестирований превзошла даже GPT-4 (выйдет в начале 2024 года).
— Gemini Pro: более компактный вариант. Доступ к API откроется с 13 декабря, но вы уже сейчас можете опробовать модель в Google Bard (для этого измените язык в настройках гугла на английский и используя VPN с регионом США).
— Gemini Nano: оптимизирована для работы на мобильных устройствах.
Для дополнительной информации можете ознакомиться с техническим отчётом.
#нейроновости #llm #gemini
Gemini будет доступна в трёх версиях:
— Gemini Ultra: самая большая и мощная модель серии, которая по результатам тестирований превзошла даже GPT-4 (выйдет в начале 2024 года).
— Gemini Pro: более компактный вариант. Доступ к API откроется с 13 декабря, но вы уже сейчас можете опробовать модель в Google Bard (для этого измените язык в настройках гугла на английский и используя VPN с регионом США).
— Gemini Nano: оптимизирована для работы на мобильных устройствах.
Для дополнительной информации можете ознакомиться с техническим отчётом.
#нейроновости #llm #gemini
👍6
Чек-лист вопросов потенциальному работодателю: про зарплату, условия и стек
На собеседовании важно, чтобы не только работодатель оценил вас по достоинству, но и вы работодателя.
В статье собрали чек-лист вопросов, который позволит вам поэтапно выяснить нюансы, касающиеся зарплаты, условий трудоустройства, организационной культуры, возможностей для карьерного роста и технического стека: https://tproger.ru/articles/chek-list-voprosov-potencialnomu-rabotodatelyu
#карьера #работа
На собеседовании важно, чтобы не только работодатель оценил вас по достоинству, но и вы работодателя.
В статье собрали чек-лист вопросов, который позволит вам поэтапно выяснить нюансы, касающиеся зарплаты, условий трудоустройства, организационной культуры, возможностей для карьерного роста и технического стека: https://tproger.ru/articles/chek-list-voprosov-potencialnomu-rabotodatelyu
#карьера #работа
👍8