tgoop.com »
United States »
Библиотека мобильного разработчика | Android, iOS, Swift, Retrofit, Moshi, Chuck » Telegram Web
🎭 Dev Memes: 1 апреля, а баги всё те же
Сегодня день официально разрешённого троллинга — и мы не могли пройти мимо. Собрали подборку мемов для мобильного разработчика, которые вызывают лёгкое желание уволиться.
👉 Всё это — из нашего мемного канала «Библиотека IT-мемов»
Библиотека мобильного разработчика
Сегодня день официально разрешённого троллинга — и мы не могли пройти мимо. Собрали подборку мемов для мобильного разработчика, которые вызывают лёгкое желание уволиться.
👉 Всё это — из нашего мемного канала «Библиотека IT-мемов»
Библиотека мобильного разработчика
🎰 Инструмент недели: SDK для скретч-карт
Scratchify — это легкий и настраиваемый SDK для скретч-карт, созданный с использованием Jetpack Compose Multiplatform (поддерживает Android и iOS). Он позволяет создавать интерактивные скретч-поверхности, на которых пользователи могут соскрести верхний слой, чтобы открыть скрытый под ней контент. Идеально подходит для поощрений, скидок, сюрпризов и элементов геймификации в вашем приложении.
⚙️ Scratchify на GitHub
Библиотека мобильного разработчика #буст
Scratchify — это легкий и настраиваемый SDK для скретч-карт, созданный с использованием Jetpack Compose Multiplatform (поддерживает Android и iOS). Он позволяет создавать интерактивные скретч-поверхности, на которых пользователи могут соскрести верхний слой, чтобы открыть скрытый под ней контент. Идеально подходит для поощрений, скидок, сюрпризов и элементов геймификации в вашем приложении.
⚙️ Scratchify на GitHub
Библиотека мобильного разработчика #буст
Forwarded from Proglib.academy | IT-курсы
🧐 Разбираемся: FAANG — не мечта, а капкан
Раньше работа в Google или Meta казалась вершиной айтишной карьеры. Сейчас — всё чаще звучат слова «стресс», «сокращения», «выгорание».
➡️ В статье разбираем
— Почему бывшие сотрудники бегут из FAANG
— Как изменилась культура внутри Big Tech
— Где теперь искать стабильность и уважение
— Реальные комментарии от действующих инженеров
— И что на самом деле стоит за блестящей обёрткой FAANG
Если вы всё ещё решаете LeetCode ради «заветной должности» — обязательно прочитайте нашу статью.
📎 Ссылка
🔵 Включайся в обучение и устраивайся куда хочешь, тебя ждет продвинутый этап нашего курса «Алгоритмы и структуры данных»
Раньше работа в Google или Meta казалась вершиной айтишной карьеры. Сейчас — всё чаще звучат слова «стресс», «сокращения», «выгорание».
— Почему бывшие сотрудники бегут из FAANG
— Как изменилась культура внутри Big Tech
— Где теперь искать стабильность и уважение
— Реальные комментарии от действующих инженеров
— И что на самом деле стоит за блестящей обёрткой FAANG
Если вы всё ещё решаете LeetCode ради «заветной должности» — обязательно прочитайте нашу статью.
Please open Telegram to view this post
VIEW IN TELEGRAM
📝 Промпт для идеального код ревью
Чтобы облегчить код ревью, используйте этот промпт для ChatGPT:
⚡ Как вы обычно проводите код ревью? Делитесь в комментариях!
Библиотека мобильного разработчика #буст
Чтобы облегчить код ревью, используйте этот промпт для ChatGPT:
1. Проанализируй приведенный [язык] код на предмет признаков проблемного кода и предложи улучшения: [фрагмент кода].
2. Проверь [язык] код на предмет правильности логирования и мониторинга: [фрагмент кода].
3. Проанализируй [язык] код на предмет потенциальных проблем масштабируемости: [фрагмент кода].
4. Оцени тестовое покрытие этого [язык] кода: [фрагмент кода].
5. Оцени [язык] код на совместимость с [платформой или технологией]: [фрагмент кода].
⚡ Как вы обычно проводите код ревью? Делитесь в комментариях!
Библиотека мобильного разработчика #буст
💻 How to: реализовать кастомный делегат
Чтобы написать кастомный делегат, нужно определить класс, который реализует интерфейс
Классы, реализующие
•
•
Например, рассмотрим создание кастомного делегата для логирования изменения значения свойства:
Здесь мы определяем класс
Затем мы можем использовать наш кастомный делегат следующим образом:
Здесь мы создаем экземпляр класса
👉 Подробнее в статье
Библиотека мобильного разработчика #буст
Чтобы написать кастомный делегат, нужно определить класс, который реализует интерфейс
ReadOnlyProperty
для делегата val
или ReadWriteProperty
для делегата var.Классы, реализующие
ReadOnlyProperty
и ReadWriteProperty
, содержат два метода:•
getValue(thisRef: T, property: KProperty<*>): R,
который должен возвращать значение свойства.•
setValue(thisRef: T, property: KProperty<*>, value: R)
, который должен устанавливать значение свойства.Например, рассмотрим создание кастомного делегата для логирования изменения значения свойства:
class LoggingDelegate(private var value: T) : ReadWriteProperty {override fun getValue(thisRef: Any?, property: KProperty): T {println(«Getting value of ${property.name}: $value»)return value}override fun setValue(thisRef: Any?, property: KProperty, value: T) {println(«Setting value of ${property.name} to $value»)this.value = value}}
Здесь мы определяем класс
LoggingDelegate
, который реализует интерфейс ReadWriteProperty
. Метод getValue
выводит в консоль текущее значение свойства и возвращает его, а метод setValue
выводит новое значение свойства в консоль и сохраняет его в переменной value
.Затем мы можем использовать наш кастомный делегат следующим образом:
class MyClass {var myProperty: Int by LoggingDelegate(0)}fun main() {val obj = MyClass()obj.myProperty = 42 // Setting value of myProperty to 42println(obj.myProperty) // Getting value of myProperty: 42}
Здесь мы создаем экземпляр класса
MyClass
, который содержит свойство myProperty
, использующее наш кастомный делегат LoggingDelegate
. При установке значения свойства или получении его значения будут вызываться соответствующие методы нашего делегата, и мы увидим соответствующие сообщения в консоли.👉 Подробнее в статье
Библиотека мобильного разработчика #буст
⚔️ Микросервисы vs. Монолит
В мире разработки программного обеспечения выбор архитектурного подхода — это один из самых важных и стратегических шагов.
На одной стороне баррикад стоят микросервисы, обещающие гибкость, масштабируемость и независимость команд. На другой — монолитные приложения, которые, несмотря на свою кажущуюся устарелость, продолжают привлекать разработчиков своей простотой и целостностью.
Какой подход лучше? Микросервисы действительно обеспечивают более быструю разработку и развёртывание, или же монолиты всё ещё имеют свои преимущества в стабильности и управляемости?
❤️ — Микросервисы
🤝 — Монолит
Библиотека мобильного разработчика #междусобойчик
В мире разработки программного обеспечения выбор архитектурного подхода — это один из самых важных и стратегических шагов.
На одной стороне баррикад стоят микросервисы, обещающие гибкость, масштабируемость и независимость команд. На другой — монолитные приложения, которые, несмотря на свою кажущуюся устарелость, продолжают привлекать разработчиков своей простотой и целостностью.
Какой подход лучше? Микросервисы действительно обеспечивают более быструю разработку и развёртывание, или же монолиты всё ещё имеют свои преимущества в стабильности и управляемости?
❤️ — Микросервисы
🤝 — Монолит
Библиотека мобильного разработчика #междусобойчик
⛓️ Распутываем легаси-код на Android проекте
Попадая на новый проект с долгой историей, вас неизбежно ждёт легаси-код. Возможно, проект прошёл через несколько команд, и теперь он в ваших руках. Бывает, что на проекте уже нет контекст-овнера, а на любой вопрос тимлид отвечает: «Так исторически сложилось».
Приложение может тормозить, состояние определяться десятками мутабельных переменных. Фризы, утечки памяти, файлы на сотни, а то и тысячи строк кода. Год-обжекты. Знакомо?
Автор даёт несколько советов, которые помогут разобраться в происходящем и распутать спагетти-код.
👉 Читать статью
Библиотека мобильного разработчика #свежак
Попадая на новый проект с долгой историей, вас неизбежно ждёт легаси-код. Возможно, проект прошёл через несколько команд, и теперь он в ваших руках. Бывает, что на проекте уже нет контекст-овнера, а на любой вопрос тимлид отвечает: «Так исторически сложилось».
Приложение может тормозить, состояние определяться десятками мутабельных переменных. Фризы, утечки памяти, файлы на сотни, а то и тысячи строк кода. Год-обжекты. Знакомо?
Автор даёт несколько советов, которые помогут разобраться в происходящем и распутать спагетти-код.
👉 Читать статью
Библиотека мобильного разработчика #свежак
Forwarded from Proglib.academy | IT-курсы
Математика в действии — как уравнения, придуманные века назад, сегодня управляют интернетом, медициной, космосом и вашими финансами.
— Как египтяне строили пирамиды с помощью математики
— Почему Wi-Fi и JPEG невозможны без преобразования Фурье
— Что объединяет кота Шредингера и квантовые компьютеры
— Как формула Гаусса управляет фондовыми рынками
— И при чём тут Джеймс Гарфилд и i² = –1
🔗 Читайте статью
Proglib Academy
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека нейросетей | ChatGPT, Midjourney, DeepSeek, Sora
Новый тренд среди разработчиков — «вайб-кодинг». Это когда ты не продумываешь архитектуру, не пишешь руками, а просто даёшь задание ИИ и ждёшь, что он всё сам сделает. Быстро, магически… и с кучей подводных камней.
⠀
Что в статье:
⠀
Это не нытьё про «машины нас заменят», а здравый взгляд на технологии без розовых очков.
⠀
Please open Telegram to view this post
VIEW IN TELEGRAM
📱 Приготовили для вас дайджест по актуальному из мира iOS, Android и кроссплатформы.
🔹 Как правильно организовать проект c модульной архитектурой в iOS-разработке
🔹 Документируем код с помощью DocC
🔹 Разбираем чистую архитектуру в Android: от а до я
🔹 Все знают, какие приложения установлены на вашем телефоне
🔹 Dart / Flutter — применяя zero / empty объекты ко всему
Библиотека мобильного разработчика #свежак
🔹 Как правильно организовать проект c модульной архитектурой в iOS-разработке
🔹 Документируем код с помощью DocC
🔹 Разбираем чистую архитектуру в Android: от а до я
🔹 Все знают, какие приложения установлены на вашем телефоне
🔹 Dart / Flutter — применяя zero / empty объекты ко всему
Библиотека мобильного разработчика #свежак
🔥 Мобильные разработчики, нужен ваш совет!
Пилим крутую подборку ноутов для кодеров в 2025-м и хотим собрать реальный фидбек от тех, кто в теме!
Какой ноут спасает вас в кодинге и почему?
Расскажите все:
▪️ Что за зверь (модель, начинка)
▪️ Где жмет и где радует в ежедневной работе
▪️ На какие фишки смотреть при выборе
▪️Как вам с ним живется
Топовые советы попадут в нашу статью!
Делитесь в комментах 👇 Сделаем годный гайд, который реально поможет коллегам!
Библиотека мобильного разработчика
#междусобойчик
Пилим крутую подборку ноутов для кодеров в 2025-м и хотим собрать реальный фидбек от тех, кто в теме!
Какой ноут спасает вас в кодинге и почему?
Расскажите все:
▪️ Что за зверь (модель, начинка)
▪️ Где жмет и где радует в ежедневной работе
▪️ На какие фишки смотреть при выборе
▪️Как вам с ним живется
Топовые советы попадут в нашу статью!
Делитесь в комментах 👇 Сделаем годный гайд, который реально поможет коллегам!
Библиотека мобильного разработчика
#междусобойчик
💻 Конкатенация против интерполяции текста в SwiftUI
SwiftUI позволяет нам объединять несколько представлений текста в одно представление с помощью оператора плюс (+). Это позволяет нам применять разные стили к отдельным частям текста.
Конкатенация и интерполяция — два подхода, которые могут показаться схожими, но на самом деле имеют свои уникальные особенности и преимущества.
👉 Читать статью
Библиотека мобильного разработчика
#свежак
SwiftUI позволяет нам объединять несколько представлений текста в одно представление с помощью оператора плюс (+). Это позволяет нам применять разные стили к отдельным частям текста.
Конкатенация и интерполяция — два подхода, которые могут показаться схожими, но на самом деле имеют свои уникальные особенности и преимущества.
👉 Читать статью
Библиотека мобильного разработчика
#свежак