Login Sign Up
Advert
Your ad spot
Reserve this exclusive slot for the selected period.
Buy advertising →
Telegram community logo - BW Swift
Added 06 Jan 2025

BW Swift

@bwswift
Number of subscribers: 1 742
Photos: 1,710
Videos: 176
Links: 1,590
Description:
Канал створений для навчання програмування на swift та розробці програм під iOS. Мета проекту - допомогти студентам пройти шлях від розробника-початківця до оплачуваного фахівця. Тут я публікую актуальні та цікаві статті щодо iOS розробки. Адмін: @bws2007
Source

BW Swift | Swift стає “розумнішим” з C-бібліотекамиЯкщо ти коли-небудь підключав ...

Telegram community logo - BW Swift BW Swift @bwswift
870 Views/Reach 2026-01-23 11:05 Message №2318
🧩 Swift стає “розумнішим” з C-бібліотекамиЯкщо ти коли-небудь підключав C-шну бібліотеку в Swift і бачив щось типу wgpuInstanceCreateSurface(...) + купу UnsafePointer + ручні Release() — то ти знаєш цей біль. Swift це вміє, але виглядає як “Swift, який удає що він C”.Apple (Swift team) показали класну штуку: можна зробити C API більш “swift-овим”, НЕ переписуючи бібліотеку, просто додавши анотації в хедерах. (Плюс частина фіксів приїхала в Swift 6.2.3.)Що можна “покращити” майже безкоштовно: Нормальні імена з argument labels через SWIFT_NAME, щоб виклики читались як Swift Імпортувати C-функції як methods (коли перший аргумент — це умовний self) Enum замість констант і типобезпека замість “просто Int” OptionSet замість flags (щоб не міксувати несумісні біти випадково) ARC-поведінка для C-обʼєктів через SWIFT_SHARED_REFERENCE(...) — і більше не треба писати AddRef/Release вручну Computed properties замість get-функцій (через getter: у Swift name) Навіть C-bool можна зробити дружнім, щоб в Swift працювало як true/false, а не магічні WGPU_TRUEІ головне: це не “якась магія”. Це буквально шар косметики + безпеки, який Swift накладає на C API під час імпорту, щоб воно виглядало як нормальний Swift-код.Якщо у вас в проєкті є хоч одна C/ObjC бібліотека — ці анотації це найкращий ROI апгрейд, бо ви покращуєте і читабельність, і безпеку, і кількість багів “на рівному місці” без переписування світу.Джерело:https://www.swift.org/blog/improving-usability-of-c-libraries-in-swift/BWSwift 📱 YouTube 📱 Patreon