?

Log in

No account? Create an account

Предыдущая версия | Обновление

Андроид. Глава 1.

И так мои дорогие друзья. Сегодня я себя чувствую по лучше, так что напишу первую заметку.
Андроид.
На первфй взгляд, читая обзоры даешься диву. Действительно, телефон базовой операционкой на котором является Linux впечатляет. А приправленность этой сладости еще и тем, что писать приходится не на низкоуровневых C/C++, а на полноценной Java-машине, создает впечатление рая на земле. Причем, то, что писалось и рассказывалось окружающими создало впечатление, что писать на всей этой ерунде будет одно удовольствие. Сами посудите.

  • готовый встроенный в платформу язык описания интерфейса, который базируется на XML и имеет довольно неплохой набор разных компонентов и layout-менеджеров (к слову будет сказанно, я так и не освоил до конца дао писания на свинге, по причине непонимания представленного в нем набора layout алгоритмов)
  • Полноценная JVM версии 5 или 6. С reflection, auto-boxing, generic, for-each и пр вкусностями. (как потом выяснилось JVM нифига не принадлежал Sun, а был написан "в стенах" Google)
  • Полная кастомизация всего, включая приложение для телефона. (что сейчас мне представляется несколько сомнительным)

Ну что еще нужно? Ощущение рая наивысшее. Но такой уж у меня характер, если все кричат "круто", я всегда ищу подвох. Ну не бывает идеальных SDK. Тем более когда им всего ничего. И так, с чувством легкой тревоги я таки скачал SDK и принялся постигать новые для меня горизонты.
Первое, что как всегда меня взбесило, это идолопокланине этой проклятой IDE основанной на Eclipse SDK (для тех кто не в курсе, Eclipse - это не IDE, а SDK для написания различных IDE).
Я не буду вдаваться в подробности Keymap-ов и прочих мелочах, которые по сути являются делом привычки. Просто у IntelliJ есть ряд фич, которые не предоставляются Eclipse. И самой главной из них, является удобный просмотрщик сигнатуры скомпиленного класса. Без нее я бы помер уже давно. Но это не по теме.
Так вот, просочился слух, что месте с плагином к SDK Google предоставляет...(барабанная дробь) вы неповерите - Interface Builder. Это магическое сочетание взвало бурю оваций и беспричинного мочеиспускания среди моих коллег. Сам я к данным вещам всегда был равнодушным по нескольким причинам.

  1. Принципы layout-а сводят на нет удобство его использования, по причине того, что зачастую компонент располагается не там где мы хотим, а там где решит контейнер.
  2. Я ужасно не люблю мышь, и при наличии легочитаемого (как в принципе и есть в android-е) XML-я предпочитаю его. (в 90% случаев это ускоряет процесс раза в полтора)
  3. Такой инструмент очень быстро отупляет, поскольку человек перестает понимать то, как все это устроено внутри (но это уже из разряда "суровых" программистов)

Опуская разговор, который произошел между нами (Замечу лишь, что каждая из сторон оказалась по своему права и неправа). Я таки ознакомился с тулзой, которая гордо имеавалась почетным званием Interface Builder.
Впечатление отрицательное по всем показателям.

  1. Тулза полностью заточена на мышь. Даже кнопка <delete> не работает.
  2. Все параметры задаются в ручную в списке (ориентироваться по которому не сахар, скажу я вам)
  3. Тулза позволяет делать ошибки, после которых графическому интерфейсу становится не очень хорошо, и приходится лезти и править руками XML.
  4. Выходной формат, как и ожидалось - тот что используется по всему SDK. (Имеется и обратная совместимость.)
  5. Тулза, как потом выяснилось, не поддерживает понятие стилей и тем. А при наличии ссылки на XML какого-нибудь изображения (например градиента) не умеет его загрузить.

Собственно все как и подсказывала мне интуиция и опыт.
Продолжение следует...

История версий

Октябрь 2015
Вс Пн Вт Ср Чт Пт Сб
    123
45678910
11121314151617
18192021222324
25262728293031
Разработано LiveJournal.com
Designed by Katy Towell