DOU | Mobile
1.72K subscribers
922 photos
37 videos
2 files
935 links
Все про Mobile-розробку та продукти від спільноти DOU:

• технічні статті та блоги
• войсчати
• професійні обговорення
• події
• вакансії

З побажаннями, ідеями чи скаргами пишіть – maria@dou.ua 👈
Щодо розміщення реклами — events@dou.ua
Download Telegram
Forwarded from GameDev DOU
Epic Games перемогла. Суд зобов'язав Google відкрити Play Market для сторонніх магазинів: https://dou.ua/goto/2V4D

У справі Epic Games проти Google винесено остаточне рішення. Суддя Джеймс Донато зобов'язав Google відкрити свій магазин Google Play на Android для сторонніх магазинів додатків.

На корпорацію наклали низку обмежень, які зменшуватимуть конкуренцію в межах ОС. Проте не всі вимоги Epic задовольнили. Розповідаємо про це детальніше на форумі.
🔥6
🔍 Нові iOS-вакансії

Senior iOS Developer / Bird в ЛУН
Київ
👉 https://dou.ua/goto/AEwM

Junior iOS Developer в Weelorum, $800–1200
Дніпро, віддалено
👉 https://dou.ua/goto/akC3

iOS Developer в Stairway Soft, $2500–3000
віддалено
👉 https://dou.ua/goto/4xBI

iOS Developer в Axon, $2300–2800
Краків (Польща), віддалено
👉 https://dou.ua/goto/NmRa

Middle iOS Developer в Futurra Group
Київ
👉 https://dou.ua/goto/qNc4
🖕3🗿1
#iOSКомпас 🧭
7️⃣1️⃣ Завдання 71

Які види диспетчеризації існують у Swift?


Давно не бачились пасажири. З вами на зв'язку помічник капітана Сергій з @badlinkschannel

🤔 У Swift існує кілька видів диспетчеризації, які визначають, як і коли викликаються методи або функції. Основні види диспетчеризації включають:

1️⃣ Статична диспетчеризація (Static Dispatch)
Виклик функції або методу визначається на етапі компіляції. Використовується для структур, перерахувань і final класів.

struct MyStruct {
func printMessage() {
print("Hello from MyStruct")
}
}

let instance = MyStruct()
instance.printMessage() // Виклик визначається на етапі компіляції


2️⃣ Диспетчеризація за таблицею віртуальних функцій (Vtable Dispatch)
Використовується для виклику методів класу, які можуть бути перевизначені в підкласах. Віртуальна таблиця (vtable) визначає, який метод викликати.

class BaseClass {
func printMessage() {
print("Hello from BaseClass")
}
}

class SubClass: BaseClass {
override func printMessage() {
print("Hello from SubClass")
}
}

let instance: BaseClass = SubClass()
instance.printMessage() // Виклик визначається в runtime за допомогою vtable


3️⃣ Диспетчеризація за свідком (Witness Table Dispatch)
Використовується для виклику методів протоколів, реалізованих типами.

protocol MyProtocol {
func printMessage()
}

struct MyStruct: MyProtocol {
func printMessage() {
print("Hello from MyStruct")
}
}

let instance: MyProtocol = MyStruct()
instance.printMessage() // Виклик визначається в runtime за допомогою witness table


4️⃣ Динамічна диспетчеризація (Dynamic Dispatch)
Використовується для методів, позначених як dynamic, або методів Objective-C. Метод визначається в runtime за допомогою Objective-C runtime.

import Foundation

class MyClass: NSObject {
@objc dynamic func printMessage() {
print("Hello from MyClass")
}
}

let instance = MyClass()
instance.printMessage() // Виклик визначається в runtime за допомогою Objective-C runtime


#️⃣ У Swift існують різні види диспетчеризації: статична, диспетчеризація за таблицею віртуальних функцій, диспетчеризація за свідком і динамічна диспетчеризація. Кожен вид використовується в залежності від структури та вимог коду.

@Zatishna_Galera
Please open Telegram to view this post
VIEW IN TELEGRAM
👌4👍2🖕21
Last Call: цього тижня ми закриваємо дослідження бренду роботодавця і розігруємо мерч серед тих, хто заповнить анкету 🔥

Тому заповнюйте 👉 https://jobs.dou.ua/questionary/
Ми чекаємо саме на вашу відповідь 🤟
🖕5😁3👍2
Артем Герасимов, Senior React Native Engineer, розглядає використання компонентів списків у React Native.

Він ділиться власним досвідом оптимізації продуктивності, проблемами, з якими стикаються розробники, та рекомендаціями щодо вибору найкращого компонента для різних сценаріїв 👉🏻 https://dou.ua/goto/qiPy

#ReactNative
👍7👎42❤‍🔥1🌚1🖕1😭1
💥 Вриваємось у новий збір — 3,5 млн грн на FPV-дрони від Social Drone UA!

Добре відома вам спільнота збирає на плати ініціації та батареї для доукомплектування 1000 "пташок", що будуть нищити окупантів.

Тож просимо підтримати донатами, а подяки — не забаряться!

Деталі: https://dou.ua/goto/twPU
Банка: https://dou.ua/goto/JQn8
👍5🖕4
Діана Домославська, iOS Developer, ділиться своїм досвідом використання інструментів для оптимізації процесу розробки програмного забезпечення.

Вона розглядає сучасні рішення, які допомагають автоматизувати рутинні завдання та покращити якість коду 👉 https://dou.ua/goto/8c7m
8🖕4😁2🔥1🤨1
Спільното, пам'ятаєте навчання у виші? А може, навчаєтесь досі? Підготували аналітку щодо вступної кампанії на IT-спеціалізації 🔥

📌 Три ІТ-спеціальності входять у десятку найпопулярніших спеціальностей в Україні.
📌 Цього року на ІТ-спеціальності подали на 25% менше заявок, ніж торік.
📌 Кількість першокурсників на ІТ-спеціальностях зменшилась на 30%.


Деталі в статті 👉🏻 https://dou.ua/goto/JdJt
🖕2
😎 Рейтинг ІТ-роботодавців 2024: оцініть свою компанію

Настав час подивитися, як цього року працювалося розробникам, а ще – визначити найкращих ІТ-роботодавців. Запрошуємо узяти участь та оцінити свою компанію!

Рейтинг є безкоштовним і відкритим для всіх компаній. Приділіть 5 хвилин вашого часу 👉 https://dou.ua/goto/o09d
3🖕1🎄1
Як ми інтегрували React Native у наявний Android застосунок. Розглядаємо реальний кейс

Задача: потрібно реалізувати частину мобільного застосунку нативною мовою, а частину — на React Native. Може здатися, що це жарт, але це реальний кейс із практики команди Андрія Черниша, Engineering Manager та Android Engineer в Uptech. 

У статті він розповідає про рішення, які вони ухвалювали під час інтеграції React Native в наявний Android-застосунок, як фіксили технічні проблеми та про підхід, що оптимізував бізнес-процеси 👉 https://dou.ua/goto/JUPQ
🥴144👎4👍3🔥1
Розробники, які тільки починають працювати з Flutter, часто мають складнощі у виборі пакетів.

Тож Ігор Козарь вирішив розповісти про пакети, які сам використовує на практиці в роботі та вважає їх обовʼязковими для ознайомлення. Автор розділив їх на категорії, а також пропонує альтернативи й запрошує доповнювати список! 👉🏻 https://dou.ua/goto/pnoz
👎11🥴4👍32😁2🖕2🔥1
🥴21💯15😁3👍1
This media is not supported in your browser
VIEW IN TELEGRAM
Геннадій Міщевський — тестувальник і автор найпопулярнішого топіка на DOU (1,6 млн переглядів!) — ще й активний збирач і тестер FPV в Social Drone UA.

Він дякує за підтримку і донати, а ми все ще збираємо 3,5 млн грн на доукомплектування 1000 FPV. Долучайтесь, адже Геннадій особисто гарантує найвищу якість дронів 😉

Деталі збору: https://dou.ua/goto/twPU
Банка: https://dou.ua/goto/JQn8
👍1
В новому топіку Володимир Леонов, Android Technical Lead в Uklon, розповідає про свій досвід переходу з науки в IT.

Він почав кар'єру в теоретичній фізиці, досліджував молекулярні фотодіоди, але через обмежені можливості розвитку науки в Україні вирішив змінити сферу. Зацікавившись розробкою, він вивчив Java та почав займатися мобільною розробкою.

Автор відзначає, що науковий бекграунд допоміг у програмуванні завдяки вмінню моделювати задачі та мислити аналітично. Він також згадує про виклики, пов'язані з самодисципліною та адаптацією до швидшого робочого темпу в IT 👉🏻 https://dou.ua/goto/VRq1
👍10👎21🥴1🤣1🤪1
Цікаві події для мобайл-розробників 🔥

21.10, онлайн React Native Internship в Stormotion
29.10, Київ & онлайн CocoaTalks #1 by CocoaHeads Ukraine
21.11, Київ Офлайн DOU Mobile Meetup, Київ

Ви також можете додавати свої події в Календар 
👉🏻  https://dou.ua/calendar/add/

#DOU_Календар
🔥6🖕4
🔍 Нові Android-вакансії

Middle Android Kotlin Developer в APPVALES, до $2700
Remote
👉 https://dou.ua/goto/UBa6

Android Developer (Middle/Senior) в RIA.com
Київ, Вінниця, віддалено
👉 https://dou.ua/goto/4ko9

Senior Android Engineer в StartupSoft
Львів, Тернопіль
👉 https://dou.ua/goto/cjP7

Middle Android Developer в Quarks
за кордоном, віддалено
👉 https://dou.ua/goto/3Cim

Android Software Engineer в Дія
Київ
👉 https://dou.ua/goto/5t5s
😢5🤣3👻1
На зв’язку Андрій Провізіон, CEO агенції мобільного маркетингу ASO.Marketing. У цій статті ми обговоримо базові кроки в оптимізації сторінки для успішного просування застосунка 👉 https://dou.ua/goto/PVT3
🔥5🖕3👍1
Привіт, спільното!

Ми знаємо, що ви довго чекали на цю новину — офлайн DOU Mobile Meetup повертається після майже року перерви! 🔥
Це чудова нагода зустрітися з однодумцями, обговорити новинки мобільної розробки та познайомитися з новими людьми.

🗓️ Коли: 21 листопада о 18:00
📍 Де: Київ, UNIT.City

Незабаром оголосимо спікерів. Тим часом ознайомтеся з програмою і не забудьте зареєструватися за посиланням 👉🏻 https://dou.ua/goto/7B1m
3🖕3👍1
Користувач Форуму DOU запитує поради щодо роботи з Apple Enterprise Developer Program Account. Якщо маєте досвід і бажання допомогти — пишіть: https://dou.ua/goto/of77
🖕42
Сергій, iOS Developer, ділиться досвідом оптимізації роботи з відео у застосунку для соціальних мереж.

Він розповідає про використання AVFoundation, асинхронне завантаження ресурсів, а також впровадження AsyncDisplayKit для покращення продуктивності при роботі з UICollectionView 👉🏻 https://dou.ua/goto/mnRI
🔥11👍1🤨1🖕1