Что использовать вместо //TODO в коде?
Периодически бывает необходимо добавить напоминание или даже вывод ошибки.
Это может пригодиться, если вы работаете над своим проектом и планируете в будущем что-то исправить или, например, оптимизировать.
В таком случае кроме традиционных комментариев на помощь могут прийти
#warning заставит Xcode выдать предупреждение при сборке проекта, а
Кстати, и #warning, и #error будут корректно работать вместе с директивой #if (конечно, если условие будет истинно). Например, как в коде ниже:
А пример для
Например, Firebase вполне мог бы использовать нечто подобное.
@iOS Dev — дополняем ваш инструментарий простыми средствами.
Периодически бывает необходимо добавить напоминание или даже вывод ошибки.
Это может пригодиться, если вы работаете над своим проектом и планируете в будущем что-то исправить или, например, оптимизировать.
В таком случае кроме традиционных комментариев на помощь могут прийти
#warning
и #error
.#warning заставит Xcode выдать предупреждение при сборке проекта, а
#error
покажет ошибку компиляции, поэтому код не соберётся вообще 😅 (будьте аккуратны!).Кстати, и #warning, и #error будут корректно работать вместе с директивой #if (конечно, если условие будет истинно). Например, как в коде ниже:
#if os(macOS)
#error("Эта библиотека пока что не поддерживается на маке. Используйте другое решение")
#endif
А пример для
#error
со скриншота будет актуален если вы раздаёте ключи для вашей библиотеки, без которых она не будет работать. Например, Firebase вполне мог бы использовать нечто подобное.
@iOS Dev — дополняем ваш инструментарий простыми средствами.
👍38🔥9👏4👌4
Топ-5 нововведений в Xcode 15, которые могут вас удивить
Так сложилось, что во время самого WWDC я был в самолёте и по определённым причинам не смог провести трансляцию, как в прошлый раз , но!
🤩 Вот пять новинок в Xcode, которые некоторые даже смогли предсказать:
1️⃣ Можно использовать previews в UIKit (и AppKit!).
До этого существовали некоторые способы, но теперь нативно.
2️⃣ Представлена SwiftData (многие давно ждали/верили/надеялись, но решили выкатить сейчас, анонс уже здесь).
3️⃣ Можно оставлять закладки в коде! Пока, задисейбленные брейпоинты?
4️⃣ Теперь доступна новая система макросов, которую можно использовать для уменьшения бойлерплейт-кода и улучшения API.
5️⃣ Неактивный код в блоках
😎 Бонус!
Теперь доступно действие Archive, даже если выбран симулятор. Наверняка каждый хоть раз, да забывал переключать симулятор для архива во всех 14 предыдущих версиях Xcode.
😃 iOS Dev — будем следить за новинками вместе (и копить на лыжную маску amazing хэдсет за $3 500)
1️⃣ Можно использовать previews в UIKit (и AppKit!).
До этого существовали некоторые способы, но теперь нативно.
2️⃣ Представлена SwiftData (многие давно ждали/верили/надеялись, но решили выкатить сейчас, анонс уже здесь).
3️⃣ Можно оставлять закладки в коде! Пока, задисейбленные брейпоинты?
4️⃣ Теперь доступна новая система макросов, которую можно использовать для уменьшения бойлерплейт-кода и улучшения API.
5️⃣ Неактивный код в блоках
#if…#endif
теперь будет отображаться с тенью. Очень полезно, когда выбран не тот таргет. Можно вернуть, как было в Text Editing > Display
.Теперь доступно действие Archive, даже если выбран симулятор. Наверняка каждый хоть раз, да забывал переключать симулятор для архива во всех 14 предыдущих версиях Xcode.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤33👍6🔥4🫡3🤩2🆒2👏1🎉1💯1👨💻1💘1