
- Главная
- Каталог
- Интернет технологии
- Библиотека мобильного разработчика
Библиотека мобильного разработчика
Полезные материалы по всему, что может быть интересно мобильному разработчику.
Статистика канала
В одних командах разработчики детально оценивают каждую фичу, спорят за часы, раскладывают риски и зависимости.
В других — оценки спускаются «сверху», а разработчик узнаёт сроки вместе со всеми на демо.
Кто-то говорит: без участия девов оценки превращаются в фантазии.
Кто-то считает, что оценки — это лишняя бюрократия, которая всё равно не сбывается.
А по факту страдают либо сроки, либо нервы, либо и то и другое.
Как у вас? Вы реально влияете на оценки или просто узнаёте дедлайн постфактум? Делитесь в комментариях
#междусобойчик
В карточках разобрали, почему опыт больше не гарантирует легкого трудоустройства и какие направления останутся на плаву.
#MadeInProglib
Приготовили для вас дайджест по актуальному из мира iOS, Android.
По сути, больше нет никакого морального превосходства в том, чтобы говорить себе «я сделал это без ИИ» — по крайней мере, когда речь идёт о задачах программирования.
Плагин Android Gradle 9.0 уже доступен, и он включает в себя два важных изменения, которые затронут существующие проекты на Kotlin.
В этой статье автор разберет, как во Flutter реализовать поддержку deeplink-ов и универсальных ссылок и как управлять ими на уровне платформы.
#свежак
При передаче значения переменной или константы значимого типа в другую переменную или константу происходит копирование этого значения, а при передаче значения ссылочного типа передается ссылка на область в памяти, в которой хранится это значение.
Вначале рассмотрим ситуацию с классами:
class Person{
var name: String
var age: Int
init(name: String, age: Int){
self.name = name
self.age = age
}
}
var tom: Person = Person(name: "Tom", age: 24)
var bob = tom
bob.name = "Bob"
print(tom.name) // Bob
Здесь определяется переменная tom, которая представляет класс Person. После ее присвоения переменной bob обе этих переменных будут указывать на один и тот же объект в памяти. То есть присвоение фактически приведет к копированию ссылки на объект памяти. Поэтому при изменении свойств в переменной tom, также изменятся значения свойств в переменной bob. Так как это свойства одного и того же объекта в памяти.
struct User{
var name: String
var age: Int
}
var alice: User = User(name: "Alice", age: 24)
var bil = alice
bil.name = "Bil"
print(alice.name) // Alice
Здесь определяется похожая структура User. Далее создаем объект этой структуры alice. Затем присваиваем этот объект переменной bil. В результате присвоения произойдет копирование значений объекта alice в объект bil. Поэтому если мы изменим свойства переменной bil, то свойства переменной alice не изменят своих значений. Так как это два разных объекта в памяти.
#буст #JuniorKit #Swift
Foundation Models — фреймворк от Apple, который позволяет разработчикам использовать в проектах локальные языковые модели. Благодаря этому можно реализовывать несложные нейросетевые функции с офлайн-доступом.
Чтобы локальные модели лучше следовали запросам, инженеры Apple рекомендуют соблюдать следующие рекомендации:
Запросы с несколькими условиями инженеры Apple рекомендуют разделять с помощью управляющих конструкций. Это поможет модели не отвлекаться на условия, которые неприменимы в конкретной ситуации.
Например, следующий запрос в проекте:
let instructions = """
You are a friendly innkeeper. Generate a greeting to a new guest that walks in the door.
IF the guest is a sorcerer, comment on their magical appearance.
IF the guest is a bard, ask if they're willing to play music for the inn tonight.
IF the guest is a soldier, ask if there’s been any dangerous activity in the area.
There is one single and one double room available.
"""
Можно разделить с помощью конструкции
switch-case:var customGreeting = ""
switch role {
case .bard:
customGreeting = """
This guest is a bard. Ask if they’re willing to play music for the inn tonight.
"""
case .soldier:
customGreeting = """
This guest is a soldier. Ask if there’s been any dangerous activity in the area.
"""
case .sorcerer:
customGreeting = """
This guest is a sorcerer. Comment on their magical appearance.
"""
default:
customGreeting = "This guest is a weary traveler."
}
let instructions = """
You are a friendly inn keeper. Generate a greeting to a new guest that walks in the door.
\(customGreeting)
There is one single and one double room available.
"""
Если нужен особый формат ответа, то его лучше явно указать. Можно перечислить несколько возможных вариантов, например, так:
// Instructions that contain JSON key-value pairs that represent the structure
// of a customer. The structure tells the model that each customer must have
// a `name`, `imageDescription`, and `coffeeOrder` fields.
let instructions = """
Create an NPC customer with a fun personality suitable for the dream realm. \
Have the customer order coffee. Here are some examples to inspire you:
{name: "Thimblefoot", imageDescription: "A horse with a rainbow mane", \
coffeeOrder: "I would like a coffee that's refreshing and sweet, like the grass in a summer meadow."}
{name: "Spiderkid", imageDescription: "A furry spider with a cool baseball cap", \
coffeeOrder: "An iced coffee please, that's as spooky as I am!"}
{name: "Wise Fairy", imageDescription: "A blue, glowing fairy that radiates wisdom and sparkles", \
coffeeOrder: "Something simple and plant-based, please. A beverage that restores my wise energy."}
"""
#свежак #iOS #Swift
Классическое резюме просматривают 7 секунд и забывают. А вот сайт с визуализацией навыков, видео на 90 секунд или Notion-страница с трекером роста — это уже запоминается. Показываем 6 форматов, которые помогают не затеряться в потоке кандидатов. Главное правило: креатив не должен убивать суть, иначе тебя просто не поймут.
👉 Читать статью
#MadeInProglib
Автор опубликовал перевод официального анонса Capacitor 8 с ключевыми замечаниями по миграции с предыдущей версии. Данный материал ориентирован в первую очередь на разработчиков, которые уже используют платформу в продакшене и могли пропустить основные анонсы.
Если у вас есть рабочее приложение на Capacitor 7, переход на новую версию выглядит логичным следующим шагом.
В статье подробно разбираются следующие аспекты:
Материал подготовлен с фокусом на существующие веб-проекты, которые уже используются в production-среде.
👉 Читать статью
#свежак
Чем анонимная функция отличается от лямбда-выражения?
• Лямбда-выражения используют {} с -> для параметров и тела функции, в то время как анонимные функции используют ключевое слово fun.
• Анонимные функции позволяют явно указывать типы возвращаемых значений, в то время как лямбда-выражения определяют тип возвращаемого значения автоматически.
#междусобойчик #Kotlin
Отзывы канала
всего 2 отзыва
- Добавлен: Сначала новые
- Добавлен: Сначала старые
- Оценка: По убыванию
- Оценка: По возрастанию
Каталог Телеграм-каналов для нативных размещений
Библиотека мобильного разработчика — это Telegam канал в категории «Интернет технологии», который предлагает эффективные форматы для размещения рекламных постов в Телеграмме. Количество подписчиков канала в 9.4K и качественный контент помогают брендам привлекать внимание аудитории и увеличивать охват. Рейтинг канала составляет 9.3, количество отзывов – 2, со средней оценкой 5.0.
Вы можете запустить рекламную кампанию через сервис Telega.in, выбрав удобный формат размещения. Платформа обеспечивает прозрачные условия сотрудничества и предоставляет детальную аналитику. Стоимость размещения составляет 20559.42 ₽, а за 9 выполненных заявок канал зарекомендовал себя как надежный партнер для рекламы в TG. Размещайте интеграции уже сегодня и привлекайте новых клиентов вместе с Telega.in!
Вы снова сможете добавить каналы в корзину из каталога
Комментарий