Pull to refresh

Comments 6

нам никак не удается придумать способ реализации code blocks из Objective-C в Delphi

Может стоит взглянуть на то, что давно изобретено даже для Delphi — анонимные функции.
Простите, но вы ничего не поняли в статье. Анонимные функции Delphi не могут быть напрямую использованы как блоки в методах Cocoa. Решению как раз этой проблемы и посвящена публикация.
Зачем вам использовать блоки из Objective-C?
Неужели язык Delphi настолько ограничен что не позволяет использовать нативные способы?
Может на задачу, которую вы пытаетесь решить, нужно взглянуть свежим взглядом?

Просто такими подходами вы в конечном итоге перенесете огромную часть инфраструктуры языка Objective-c (фреймворки/библиотеки) ибо со временем вам будет недоставать остальных инструментов из этого языка.
Действительно, зачем использовать WinAPI, когда вы пишете для Windows? Неужели Delphi настолько ограничен, что нельзя обойтись без этого? Расскажите миру, как в Windows узнать IP-адрес адаптера средствами Delphi или как в macOS узнать, когда система отправляется в sleep средствами Delphi. Без API. Нет, не выходит:)? Нужен свежий взгляд.
Зря Вы так.
Я сейчас сам вынужден поддерживать кросс-платформенные приложения и знаю какой это АД.
Приходиться использовать такие платформы как:
— Xamarin это основной язык C# mono
— Robovm это основной язык java

Весь непортируемый код на нативном Objective-c приходиться компилить во wrapper библиотеку.
И потом линковать эту библиотеку к виртуальной машине C# mono или Java.
Ну замечательно, т.е. вы согласны, что нужен доступ к native API платформы. Тогда встает вопрос: как нормально использовать методы Cocoa-классов, которые требуют в качестве параметра указатель на code block? До сих пор решений для Delphi не было, я его предложил. Для Xamarin, кстати, оно есть.
Sign up to leave a comment.

Articles