Вставлю свои пять копеек.
Про изначально не понравилось в FireMonkey...
Да, действительно, сначала было как у классика - "Да ты же, парень, прыгаешь в длину!" Т. е. брал Андроид и лепил десктопное приложение под него. Потом пришло понимание того, что так делать не надо. Взял тот же Андроид и начал смотреть, а как же там сделан GUI. После этого как-то отпала необходимость в гридах и прочих прелестях VCL. а вот не нравится то, что LiveBinding использовать невозможно. в принципе. Т. е. сейчас я ручками заполняю контролы из датасетов, и опять же ручками обрабатываю. Не сложно, но долго. Даже возникла идея, а не вооружиться ли старыми мануалами и не написать ли свои db-aware контролы. Отсюда сразу вопрос, нет ли каких-то принципиальных ограничений для этого? Почему пока есть только одна реализация чего-то подобного, которая нереальных денег стоит.
Вторая вещь, которая мне не нравится, скорее организационная. Отсутствие преемственности кода. Вот ни разу не удалось запустить приложение, собранное на предыдущей версии FM без каких-либо правок. ну, да ладно.
Потом я немного полистал литературу по Android Studio. И вот теперь задумался. Ведь FM приложения они по архитектуре несколько отличаются... А действительно, можно ли на FM написать всё то, что можно сделать в той же Андроид Студии? ну, пусть не сейчас, пусть в перспективе. Т.е. возможно ли это в принципе? Или это жертва, которую придётся приносить на алтарь кросс-платформенности?