Устраняем пробелы, изучаем Android
Речь пойдёт не о пробелах в знаниях, но об этом чуть позже.По старой привычке я по-прежнему читаю книги по программированию в бумажном варианте. В частности, про разработку под Android. Несколько лет назад с литературой по этой тематике на великом и могучем была напряжёнка. Сейчас положение немного выправилось. Я купил и прочитал, наверное, 99% всех выпущенных книг. Есть две проблемы с книгами. Первая — они однотипны в своей массе и рассказывают об одном и том же. Вторая проблема — значительная задержка в выпуске издания. Как правило, запаздывание происходит на 1–2 версии, что бывает достаточно критичным. Например, когда появились версии Android 3.0 и 4.0 с фрагментами, читать примеры создания приложений под Android 2.3 было глупо.
В далёком 2011 году вышла книга Android за 24 часа, которая, на мой взгляд, была одной из лучших. Мне понравился подход к раскрытию темы — брался один сквозной проект и постепенно усложнялся от часа к часу. Попутно объяснялись фундаментальные вещи на одном проекте. Было понятно, где и когда применять те или иные возможности.На прошлой неделе случайно наткнулся в интернете на сообщение, что вышло новое издание с более длинным названием Создание приложений для Android за 24 часа с теми же авторами. И немедленно выпил купил.При покупке меня немного смутило, что на обложке красовалась надпись 3-е издание. Видимо, отсчёт идёт от зарубежных изданий. Ладно, не будем придираться.
На этот раз авторы отказались от прежнего подхода и стали писать как все. Один час, одна тема, один проект. Затем всё по новой. В середине книге они временно вернулись к старому способу, когда в течение 4 уроков объясняли новые темы на примере одного проекта.
Начал читать. Уже к сороковой странице встретились две опечатки:
Прошли те времена, когда за подобное можно было и «партбилет на стол положить». Я общался с людьми, которые в советское время работали в издательском деле и знаю об этом не понаслышке. Теперь опечатками никого не удивишь, а в компьютерной литературе они встречались сплошь и рядом.Но дальше моё изумление нарастало всё больше и больше.Моему взору предстало предложение, написанное без единого пробела. Сразу вспомнился школьный немецкий язык, где длинные слова не были редкостью:
Если вы думаете, что была случайность, то вам ещё пример:
На самом деле, отсутствие пробелов встречается постоянно. Как будто, кто-то решил сэкономить на бумаге и сберечь лес. Иногда, в предложении не хватает одного пробела, иногда двух. Иногда их не существует как класса.
Оставим пока пробелы в покое. Обратимся к коду. Кстати, шрифт для кода мне не понравился, какой-то узкий и не слишком читаемый. Но я не шрифтовик, может чего-то не понимаю.
Смотрим на такой код:
Как вам? Две переменные с одинаковыми именами практически рядом. А принцип наименования из одного символа? Чего греха таить, я и сам лет пятнадцать назад в Visual Basic писал в таком же стиле для себя. Сейчас такой подход оправдан, наверное, только в js-библиотеках для уменьшения размера.
Потом авторы исправляются и стали давать кнопкам более осмысленные названия. Но хрен редьки не слаще.
По-моему, во всех современных языках существует негласное правило использовать глаголы для методов-функций.Но только в этом случае.
Форматирование кода без отступов (борьба с пробелами, вы помните):
Ладно, отступы. Так убрали пробел между именем класса и переменной.Случайность? Не думаю.
Код без ошибок — это фантастика. Программист не должен слепо копировать текст.
Снова «удачное название кнопки».
Оформление текста.Методы в Java пишутся с маленькой буквы. Ну это такая мелочь. А вот Word при форматировании заменил их на большие, Word не может ошибаться (одна из версий, почему так произошло).
Но иногда можно сделать исключение и один пункт оставить с маленькой. Действительно, чего я придираюсь.
Таблицы оформлены с любовью, пробелы не пройдут!
Если потихоньку воруем пробелы, то давайте отсыплем читателю одиночных кавычек.
Удивительно, на страницах книги приводятся отрывки из кода, а где посмотреть полные исходники нигде не написано. Никаких упоминаний в книге не нашёл. На сайте российского издательства тоже. Пришлось искать сайт зарубежного издательства, и только там я нашёл ссылку на архив.
На страницах книги встретилась ремарка, что сей труд писался в июне 2013 года. Помните, я говорил об отставании в начале статьи. Это означает, что здесь вы не встретите материалы о Material (каламбур), а также упоминания про Android Studio. Многие начинающие разработчики воспринимают Eclipse и Android Studio как разные и не совместимые языки программирования (!). Не раз встречал подобные заявления на форумах, где люди отказывались изучать пример, если там встречалось слово Eclipse, с утверждением: «Ведь там всё по другому и работать у меня не будет».
Книга оставила у меня двойственное впечатление. С одной стороны, там освещаются интересные темы с использованием API для Flickr и Facebook.
Сдругойсторонывсеэтиопечаткиивойнаспробеламивесьмаозадачиламеня.
Счастливоговампрограммирования!