Forwarded from Библиотека программиста | программирование, кодинг, разработка
This media is not supported in the widget
VIEW IN TELEGRAM
Clicks Creator Keyboard выпустили чехол для iPhone с встроенной клавиатурой, похожей на те, что были у BlackBerry. Clicks не использует Bluetooth и не содержит аккумулятора, а получает питание непосредственно от смартфона. Согласно сайту Clicks, чехол поддерживает сквозную быструю зарядку на iPhone 15 Pro.
Команда проекта ещё работает над мобильным приложением-компаньоном, которое скоро появится в App Store и «со временем будет привносить в клавиатуру новые возможности».
Чехлы Clicks Creator Keyboard уже доступны для предзаказа в двух вариантах цветов. Цена удовольствия — $139
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤3😁2🔥1
Большой видео-курс по подготовке к собеседованию на iOS разработчика. В нем создается макет приложения по работе с списком подписчиков GitHub через сетевой запрос. Проект создается с нуля, вместе с дизайном. Примечательно, что:
— UI написан программно
— Выходит полноценное приложение
— Без сторонних библиотек
— Поддержка 15, 16 и 17 версий iOS
Видео длится более 16 часов, поэтому разбивайте на части, и бегом готовиться к собеседованию
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤2
#вопросы_с_собеседований
💻 Swift
В чем разница Weak и Unowned в Swift?
Weak (Слабая ссылка):
weak используется, когда ссылка на объект не должна увеличивать счетчик ссылок объекта.
Если объект, на который указывает weak ссылка, был освобожден, weak ссылка автоматически становится nil.
Опциональный тип используется для weak ссылок, так как они могут быть автоматически устанавливаемыми в nil.
class Person {
var apartment: Apartment?
}
class Apartment {
weak var tenant: Person?
}
Unowned (Неудерживаемая ссылка):
unowned также не увеличивает счетчик ссылок объекта, но предполагается, что объект, на который указывает unowned ссылка, всегда существует (не может быть nil).
Если объект, на который указывает unowned ссылка, был освобожден, попытка доступа к этой ссылке приведет к краху приложения.
Используется, когда можно гарантировать, что объект, на который указывает ссылка, будет существовать до тех пор, пока существует unowned ссылка.
class Customer {
var creditCard: CreditCard?
}
class CreditCard {
unowned var owner: Customer
}
Выбор между weak и unowned зависит от сценария использования. Если объект, на который указывает ссылка, может быть освобожден и ссылка может стать nil, то используйте weak. Если вы уверены, что объект всегда будет существовать, используйте unowned. Ошибочное использование unowned в случае, когда объект может быть освобожден, приведет к краху приложения из-за доступа к освобожденной памяти.
В чем разница Weak и Unowned в Swift?
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4🔥4👍2
Официально: продажи Apple Vision Pro стартуют 2 февраля. Гарнитура смешанной реальности станет доступна для предзаказа 19 января, а уже 2 февраля появится в продаже — но только в США.
Готовы разбивать копилку?
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6🎉2
Статья предлагает 10 советов по написанию чистого кода на Kotlin для разработки приложений в 2024 году. Некоторые из советов это:
– организацию файлов проекта
– использование именования, которое обеспечивает немедленное понимание содержания и цели файла
– использование SOLID-принципов для создания высококачественного кода, который легко тестируется и поддерживается.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Очередной мобильный #дайжест по Flutter
📊 Как структурировать область использования провайдеров в Flutter-проекте, использующем пакет Riverpod для управления состоянием и почему глобальное объявление провайдеров может приводить к проблемам с пониманием и тестированием кода.
🧭 Пакет flutter_gemini, который позволяет интегрировать Google Gemini API в Flutter-приложения. Он позволяет вам бесшовно интегрировать возможности Gemini в ваше приложение.
🌟 Подборка из 40 бесплатных шаблонов для разработки приложений на Flutter. Шаблоны включают в себя различные категории.
🗄 Создание кастомной нижней панели навигации в Flutter с анимированными иконками из Rive. Загрузка бесплатных анимированные иконки из Rive, создание модели для управления анимацией, и построение кастомного виджета для нижней панели навигации и как связать его с контроллерами анимации.
Please open Telegram to view this post
VIEW IN TELEGRAM
🥱5👍1
Forwarded from Библиотека дата-сайентиста | Data Science, Machine learning, анализ данных, машинное обучение
🧑💻 Особенности работы в айти: результаты опроса подписчиков
В декабре мы провели среди вас опрос, изучили результаты и сделали аналитическую статью на vc.ru.
Вот некоторые выводы:
🧔♂️ В основном наша аудитория состоит из мужчин — 92,1% опрошенных. Женщин, соответственно, всего 7,9%.
🐍 В ТОП-10 специальностей входят питонисты — их 12,4%. Дата-инженерами или дата-сайентистами себя назвали 3.7% респондентов.
👨🎓 25% аудитории — самоучки, у которых нет профильного образования, и они не заканчивали никаких платных курсов.
💲 У разработчиков с опытом менее года преобладают зарплаты до 90 000 рублей (88%). Если опыта 1-3 года, то доля получающих 150 000+ увеличивается до 53,6%.
💰 Опытные и образованные Python-разработчики (15,44%) также входят в шестёрку самых высокооплачиваемых специалистов.
🔗 Полный отчёт можно прочесть по этой ссылке
💬 Пишите, какие ещё подобные материалы вам было бы интересно почитать
В декабре мы провели среди вас опрос, изучили результаты и сделали аналитическую статью на vc.ru.
Вот некоторые выводы:
🧔♂️ В основном наша аудитория состоит из мужчин — 92,1% опрошенных. Женщин, соответственно, всего 7,9%.
🐍 В ТОП-10 специальностей входят питонисты — их 12,4%. Дата-инженерами или дата-сайентистами себя назвали 3.7% респондентов.
👨🎓 25% аудитории — самоучки, у которых нет профильного образования, и они не заканчивали никаких платных курсов.
💲 У разработчиков с опытом менее года преобладают зарплаты до 90 000 рублей (88%). Если опыта 1-3 года, то доля получающих 150 000+ увеличивается до 53,6%.
💰 Опытные и образованные Python-разработчики (15,44%) также входят в шестёрку самых высокооплачиваемых специалистов.
🔗 Полный отчёт можно прочесть по этой ссылке
💬 Пишите, какие ещё подобные материалы вам было бы интересно почитать
🎉1
Получается у вас интегрировать обучение в свою жизнь?
Anonymous Poll
23%
Конечно, свободное время трачу на учёбу 🤓
38%
Да, но с трудом втискиваю(
18%
Приходится жертвовать 😤
4%
Только учёба!
13%
Не хочу учиться
4%
Свой вариант ✍️
GitHub Pages — удобная платформа для размещения статических веб-страниц. На ней можно размещать любой контент, не нарушающий правила сервиса.
Размер сайта — до 1 Гб.
Объем трафика — 100 Гб в месяц.
Количество сборок в час — до 10.
Но, вместе с плюсами, есть и минусы. О них и обо всём другом в статье
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2👍1
➡️ Конфигурация:
Подготовьте новый набор значков приложений, импортируйте его в Xcode.
Теперь нам нужно включить оба набора App Icon в бинарный файл приложения. Для этого перейдите в настройки сборки и измените свойство Include All App Icon Assets на Yes.
Менять иконку будем через UIApplication.shared.setAlternativeIconName(_:). Если мы передадим nil в качестве параметра, приложение восстановит исходный значок приложения.
➡️ Настройки:
Создаём новый enum, который будет содержать всю информацию о значке, которая нам понадобится.
enum AppIcon: CaseIterable {
case `default`
case updateOne
var name: String? {
switch self {
case .default:
return nil
case .updateOne:
return «AppIcon-Update-1»
}
}
var description: String {
switch self {
case .default:
return «Default»
case .updateOne:
return «Update 1»
}
}
var icon: Image {
switch self {
case .default:
return Image(«AppIcon-Icon»)
case .updateOne:
return Image(«AppIcon-Update-1-Icon»)
}
}
}
extension AppIcon {
init(from name: String) {
switch name {
case «AppIcon-Update-1»: self = .updateOne
default: self = .default
}
}
Теперь создаем простой вид настроек, в котором будем выбирать варианты значка:
struct SettingsView: View {
/// State properties
@State private var selectedIcon: AppIcon = .default
var body: some View {
Form {
Section(
header: Text(«App Icon»).font(.headline),
footer: Text(«You can customize the app icon to fit in with your home theme»)
) {
ForEach(AppIcon.allCases, id: \.self) { icon in
Toggle(isOn: Binding(
get: { selectedIcon == icon },
set: { newValue in
if newValue {
selectedIcon = icon
updateIcon()
}
}
), label: {
HStack {
icon.preview
.resizable()
.aspectRatio(contentMode: .fit)
.frame(width: 50, height: 50)
.clipShape(RoundedRectangle(cornerRadius: 10))
Text(icon.description)
.font(.title3)
}
})
.tint(Color.accentColor)
}
}
}
.onAppear {
getCurrentIcon()
}
}
}
// MARK: — Helpers
private extension SettingsView {
func getCurrentIcon() {
if let iconName = UIApplication.shared.alternateIconName {
selectedIcon = AppIcon(from: iconName)
} else {
selectedIcon = .default
}
}
func updateIcon() {
Task {
await CommonUtils.updateAppIcon(with: selectedIcon.name)
}
}
}
// -------
class CommonUtils {
static func updateAppIcon(with iconName: String?) async {
Task {
do {
guard UIApplication.shared.alternateIconName != iconName else {
return
}
try await UIApplication.shared.setAlternateIconName(iconName)
} catch {
print(«Could not update icon \(error.localizedDescription)»)
}
}
}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥1
Data.ai представляет последние тенденции рынка мобильных приложений, отраслевые идеи, передовой опыт и лучшие данные, охватывающие 11 отраслей и 30 рынков.
— Южная Корея, Бразилия, Мексика и Турция выросли в деньгах больше чем на 25%.
— 6 приложений заработало более 1 миллиарда долларов, 69 больше 100 и 587 больше 10 миллионов.
— ИИ-приложения показали головокружительный рост. И речь идет не только о чат-ботах.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤1🔥1
Вспоминаем, что важного показали для iOS разработки на WWDC 2023. В статье собраны вебинары их краткое описание.
Из важного:
— Pushes Notifications. Что менялось в последние годы?
— Live Activities
— SwiftData
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
Какой у вас идеальный домашний сетап? Хватает вам одного монитора, или исключительно макбук? Или это какая-то незаменимая часть интерьера. Делитесь в комментариях 👇
Статья обсуждает развитие и перспективы языка программирования Kotlin. В ней рассматриваются преимущества и недостатки Kotlin по сравнению с Java и другими языками, включая такие аспекты, как взаимодействие, сложность и доступность рабочей силы.
Основное внимание уделяется важности выбора технологий для успеха проекта и предположениям о будущем Kotlin на фоне развития Java и тенденций в индустрии.
https://shiftmag.dev/kotlin-vs-java-2392/
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔2👍1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
На выставке CES 2024 был представлен первый компактный ИИ-фон Rabbit R1. Концепция этого устройства заключается в том, что девайс сам будет управлять всеми необходимыми приложениями вместо пользователя. Он умеет решать разные задачи пользователя, например, заказывать такси, отправлять сообщения или покупать продукты. Кроме того, новинка получила режим обучения, который адаптирует её к любому приложению.
Гаджет имеет 2,88-дюймовый экран, камеру с компьютерным зрением, которая вращается на 360 градусов, процессор MediaTek Helio P35 и память 4/128 ГБ.
На предзаказе смартфон быстро раскупили, и теперь перепродают в 3-4 раза дороже.
В продажу ИИ-фон поступит только в марте. Цена удовольствия — 200 долларов
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔4👍1
Forwarded from Библиотека программиста | программирование, кодинг, разработка
🍊Подборка лучших статей «Библиотеки программиста» за декабрь: сохраняй в заметки, чтобы не пропустить #самыйсок
🛠️ 17 суперинструментов для разработки фронтенда
🏃 Самоучитель по Go для начинающих: часть 3 + часть 4
🔟🏢 ТОП-10 российских IT-работодателей
📁💡Где программисту взять идеи для портфолио
🐍📋 F-строки в Python для интерполяции и форматирования строк
🤖 Машинное обучение: что это такое и как оно работает
🌎 ТОП-10: рейтинг лучших зарубежных работодателей в IT
🐍🤖✍️ Документирование кода и проектов на Python с помощью ChatGPT
📈 Обзор рынка труда в ИТ: III квартал 2023 года
🐍⚙️ Python или Rust: что выбрать для анализа данных и машинного обучения
🧠🧩 Зачем айтишнику психолог?
🐍🧫 Создаём игру «Жизнь» Джона Конвея на Python
👨🎓 14 бесплатных ресурсов, которые пригодятся каждому разработчику
✍️ Почему отсутствие технической документации убьёт ваш проект?
❓👨💻 Вопросы для подготовки к собеседованию по JavaScript. Часть 1
🎄🎁 10 абсурдных подарков программисту на Новый год
😺🐙✅ Как разобраться в Git: краткая инструкция для джунов
🔥 12 признаков выгорания или как понять, что вам пора в отпуск
⚙️✅📕 Ответы на вопросы для самопроверки из книги «Тестирование Дот Ком» Романа Савина
🏦⚠️ Борьба с ошибками разработки ПО в финтехе
🛠️ 17 суперинструментов для разработки фронтенда
🏃 Самоучитель по Go для начинающих: часть 3 + часть 4
🔟🏢 ТОП-10 российских IT-работодателей
📁💡Где программисту взять идеи для портфолио
🐍📋 F-строки в Python для интерполяции и форматирования строк
🤖 Машинное обучение: что это такое и как оно работает
🌎 ТОП-10: рейтинг лучших зарубежных работодателей в IT
🐍🤖✍️ Документирование кода и проектов на Python с помощью ChatGPT
📈 Обзор рынка труда в ИТ: III квартал 2023 года
🐍⚙️ Python или Rust: что выбрать для анализа данных и машинного обучения
🧠🧩 Зачем айтишнику психолог?
🐍🧫 Создаём игру «Жизнь» Джона Конвея на Python
👨🎓 14 бесплатных ресурсов, которые пригодятся каждому разработчику
✍️ Почему отсутствие технической документации убьёт ваш проект?
❓👨💻 Вопросы для подготовки к собеседованию по JavaScript. Часть 1
🎄🎁 10 абсурдных подарков программисту на Новый год
😺🐙✅ Как разобраться в Git: краткая инструкция для джунов
🔥 12 признаков выгорания или как понять, что вам пора в отпуск
⚙️✅📕 Ответы на вопросы для самопроверки из книги «Тестирование Дот Ком» Романа Савина
🏦⚠️ Борьба с ошибками разработки ПО в финтехе
👍2🥱1
В сеть утекли интересные подробности о линейке Samsung Galaxy S24 за несколько дней до анонса:
– Основная камера с разрешением 200 МП и широкоугольным объективом
– Дизайн Key Island, при котором кнопки питания и громкости выступают на рамке
– Три цвета корпуса: Awesome Iceblue, Awesome Lilac и Wesome Navy
– Samsung отказались от 10-кратного оптического зума в Ultra в пользу 5х, как в iPhone 15 Pro Max
– Все модели Galaxy S24 получат Android 14 и будут обновляться аж до Android 21.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6🔥3😁1