Информация об изменениях

Сообщение Re[3]: Как быстро войти в тему Android и iOS? от 24.09.2019 13:13

Изменено 24.09.2019 13:15 vsb

Re[3]: Как быстро войти в тему Android и iOS?
Здравствуйте, Евгений Музыченко, Вы писали:

vsb>>Вся суть на мобильных платформах во View, класс которого прописывается во всяких конфигурационных файлах и автоматически инстанцируется.


ЕМ>А насколько сложно обойти весь этот автоматизм?


Ну в iOS в проекте есть автосгенерированный маленький main.m. Думаю, можно всё остальное грохнуть и там писать код. Правда не знаю, как iOS отнесётся к такому приложению, которое не создаёт окон, возможно по таймауту грохнет.

Насчёт андроида не подскажу, не видел там main. Судя по всему там да, всё на фреймворке завязано, который читает XML файл манифеста и создаёт объект указанного класса Application, который уже создаёт окна и прочее.

ЕМ>Хочется, чтобы программа начинала исполняться классически — с заданной мною самим точки входа (или нескольких точек различного типа, как в драйверах или службах), и чтобы простейшая программа могла реально состоять из одной строчки типа "вывод hello, world", а при нужде вызывала бы все необходимые системные средства. То есть, чтобы не фреймворк оборачивал программу и навязывал ей свою парадигму взаимодействия, а просто исполнение программы начиналось бы с известного места, и дальнейшее ее поведение определялось бы в первую очередь самой программой (ну и системными ограничениями, само собой).


Моё имхо, такое можно делать уже когда примерно разобрался в том, что генерируют мастеры. Тем более, что генерируют они обычно не так много. А так сходу — не уверен, что в этом можно за ощутимое время разобраться, т.к. так никто не делает и придется всё расковыривать самому. А в iOS ещё и исходников нет, придётся дизассемблером смореть.

ЕМ>Еще раздражает принятый в андроиде подход рисовать элементы управления в отдельном редакторе, под каждый набор разрешений экрана, и подключать их к приложению через файлы описания. В винде я могу на выбор использовать редактор ресурсов, или вручную создавать в программе шаблон диалога, или вовсе создавать каждый элемент по отдельности. А в андроиде это возможно? Или тамошний гуй умеет создавать элементы только по описаниям из файлов?


Конечно возможно. Многие программисты именно в коде и предпочитают создавать интерфейс, что в андроиде, что в iOS. Хотя я считаю, что типовые интерфейсы надо стараться писать декларативно, но это лишь моё мнение. Кстати мне, лично, в андроиде почти всегда было проще редактировать XML-файл, а не тыкаться в визуальном редакторе. Благо там всё прекрасно синхронизируется во все стороны и XML вполне читаемый.
Re[3]: Как быстро войти в тему Android и iOS?
Здравствуйте, Евгений Музыченко, Вы писали:

vsb>>Вся суть на мобильных платформах во View, класс которого прописывается во всяких конфигурационных файлах и автоматически инстанцируется.


ЕМ>А насколько сложно обойти весь этот автоматизм?


Ну в iOS в проекте есть автосгенерированный маленький main.m. Думаю, можно всё остальное грохнуть и там писать код. Правда не знаю, как iOS отнесётся к такому приложению, которое не создаёт окон, возможно по таймауту грохнет.

Насчёт андроида не подскажу, не видел там main. Судя по всему там да, всё на фреймворке завязано, который читает XML файл манифеста и создаёт объект указанных классов Application, Activity и тд.

ЕМ>Хочется, чтобы программа начинала исполняться классически — с заданной мною самим точки входа (или нескольких точек различного типа, как в драйверах или службах), и чтобы простейшая программа могла реально состоять из одной строчки типа "вывод hello, world", а при нужде вызывала бы все необходимые системные средства. То есть, чтобы не фреймворк оборачивал программу и навязывал ей свою парадигму взаимодействия, а просто исполнение программы начиналось бы с известного места, и дальнейшее ее поведение определялось бы в первую очередь самой программой (ну и системными ограничениями, само собой).


Моё имхо, такое можно делать уже когда примерно разобрался в том, что генерируют мастеры. Тем более, что генерируют они обычно не так много. А так сходу — не уверен, что в этом можно за ощутимое время разобраться, т.к. так никто не делает и придется всё расковыривать самому. А в iOS ещё и исходников нет, придётся дизассемблером смореть.

ЕМ>Еще раздражает принятый в андроиде подход рисовать элементы управления в отдельном редакторе, под каждый набор разрешений экрана, и подключать их к приложению через файлы описания. В винде я могу на выбор использовать редактор ресурсов, или вручную создавать в программе шаблон диалога, или вовсе создавать каждый элемент по отдельности. А в андроиде это возможно? Или тамошний гуй умеет создавать элементы только по описаниям из файлов?


Конечно возможно. Многие программисты именно в коде и предпочитают создавать интерфейс, что в андроиде, что в iOS. Хотя я считаю, что типовые интерфейсы надо стараться писать декларативно, но это лишь моё мнение. Кстати мне, лично, в андроиде почти всегда было проще редактировать XML-файл, а не тыкаться в визуальном редакторе. Благо там всё прекрасно синхронизируется во все стороны и XML вполне читаемый.