Речь пойдёт не о пробелах в знаниях, но об этом чуть позже.
По старой привычке я по-прежнему читаю книги по программированию в бумажном варианте. В частности, про разработку под Android. Несколько лет назад с литературой по этой тематике на великом и могучем была напряжёнка. Сейчас положение немного выправилось. Я купил и прочитал, наверное, 99% всех выпущенных книг. Есть две проблемы с книгами. Первая — они однотипны в своей массе и рассказывают об одном и том же. Вторая проблема — значительная задержка в выпуске издания. Как правило, запаздывание происходит на 1-2 версии, что бывает достаточно критичным. Например, когда появились версии Android 3.0 и 4.0 с фрагментами, читать примеры создания приложений под Android 2.3 было глупо.
В далёком 2011 году вышла книга Android за 24 часа, которая, на мой взгляд, была одной из лучших. Мне понравился подход к раскрытию темы — брался один сквозной проект и постепенно усложнялся от часа к часу. Попутно объяснялись фундаментальные вещи на одном проекте. Было понятно, где и когда применять те или иные возможности.
На прошлой неделе случайно наткнулся в интернете на сообщение, что вышло новое издание с более длинным названием Создание приложений для Android за 24 часа с теми же авторами. И немедленновыпил купил.
При покупке меня немного смутило, что на обложке красовалась надпись 3-е издание. Видимо, отсчёт идёт от зарубежных изданий. Ладно, не будем придираться.
На этот раз авторы отказались от прежнего подхода и стали писать как все. Один час, одна тема, один проект. Затем всё по новой. В середине книге они временно вернулись к старому способу, когда в течение 4 уроков объясняли новые темы на примере одного проекта.
Начал читать. Уже к сороковой странице встретились две опечатки:
![](https://habrastorage.org/r/w1560/files/bfe/f46/8d9/bfef468d908a4c47914cb9d0405716da.png)
Прошли те времена, когда за подобное можно было и «партбилет на стол положить». Я общался с людьми, которые в советское время работали в издательском деле и знаю об этом не понаслышке. Теперь опечатками никого не удивишь, а в компьютерной литературе они встречались сплошь и рядом.
Но дальше моё изумление нарастало всё больше и больше.
Моему взору предстало предложение, написанное без единого пробела. Сразу вспомнился школьный немецкий язык, где длинные слова не были редкостью:
![](https://habrastorage.org/r/w1560/files/60d/8eb/b8f/60d8ebb8ff9b4753bef9dc2371b6d4db.png)
Если вы думаете, что была случайность, то вам ещё пример:
![](https://habrastorage.org/r/w1560/files/acb/117/3d8/acb1173d8a0c4b1da25364e1db4d87f1.png)
На самом деле, отсутствие пробелов встречается постоянно. Как будто, кто-то решил сэкономить на бумаге и сберечь лес. Иногда, в предложении не хватает одного пробела, иногда двух. Иногда их не существует как класса.
![](https://habrastorage.org/r/w1560/files/cc1/968/940/cc1968940c4e4fb8b0441941d32fa09a.png)
Оставим пока пробелы в покое. Обратимся к коду. Кстати, шрифт для кода мне не понравился, какой-то узкий и не слишком читаемый. Но я не шрифтовик, может чего-то не понимаю.
Смотрим на такой код:
![](https://habrastorage.org/r/w1560/files/64f/e57/2ce/64fe572ce33f40618850f91b13a8c971.png)
Как вам? Две переменные с одинаковыми именами практически рядом. А принцип наименования из одного символа? Чего греха таить, я и сам лет пятнадцать назад в Visual Basic писал в таком же стиле для себя. Сейчас такой подход оправдан, наверное, только в js-библиотеках для уменьшения размера.
Потом авторы исправляются и стали давать кнопкам более осмысленные названия. Но хрен редьки не слаще.
![](https://habrastorage.org/r/w1560/files/469/d9e/a5b/469d9ea5bff74b6ea015dcb693539055.png)
По-моему, во всех современных языках существует негласное правило использовать глаголы для методов-функций.
Но только в этом случае.
![](https://habrastorage.org/r/w1560/files/cc7/9e2/195/cc79e21958d44c109fbc7997eb38db22.png)
Форматирование кода без отступов (борьба с пробелами, вы помните):
![](https://habrastorage.org/r/w1560/files/83a/b7f/feb/83ab7ffeba2043af888e25dce202a80f.png)
Ладно, отступы. Так убрали пробел между именем класса и переменной.
Случайность? Не думаю.
![](https://habrastorage.org/r/w1560/files/649/27e/3d0/64927e3d021048039ed4004b809c0faa.png)
Код без ошибок — это фантастика. Программист не должен слепо копировать текст.
Снова «удачное название кнопки».
![](https://habrastorage.org/r/w1560/files/3d5/f28/337/3d5f2833707d46e1ac587b76f5b230fd.png)
Оформление текста.
Методы в Java пишутся с маленькой буквы. Ну это такая мелочь. А вот Word при форматировании заменил их на большие, Word не может ошибаться (одна из версий, почему так произошло).
![](https://habrastorage.org/r/w1560/files/4e9/1bf/131/4e91bf131dde442bbe407a1ac68f181c.png)
Но иногда можно сделать исключение и один пункт оставить с маленькой. Действительно, чего я придираюсь.
![](https://habrastorage.org/r/w1560/files/d81/f88/979/d81f88979f914c429126a97b27a85a3f.png)
Таблицы оформлены с любовью, пробелы не пройдут!
![](https://habrastorage.org/r/w1560/files/216/39a/3a4/21639a3a4eb349c4a5d2cedcb42c9452.png)
Если потихоньку воруем пробелы, то давайте отсыплем читателю одиночных кавычек.
![](https://habrastorage.org/r/w1560/files/6c5/648/1a9/6c56481a92744cc7a14d5c767364577e.png)
Удивительно, на страницах книги приводятся отрывки из кода, а где посмотреть полные исходники нигде не написано. Никаких упоминаний в книге не нашёл. На сайте российского издательства тоже. Пришлось искать сайт зарубежного издательства, и только там я нашёл ссылку на архив.
На страницах книги встретилась ремарка, что сей труд писался в июне 2013 года. Помните, я говорил об отставании в начале статьи. Это означает, что здесь вы не встретите материалы о Material (каламбур), а также упоминания про Android Studio. Многие начинающие разработчики воспринимают Eclipse и Android Studio как разные и не совместимые языки программирования (!). Не раз встречал подобные заявления на форумах, где люди отказывались изучать пример, если там встречалось слово Eclipse, с утверждением: «Ведь там всё по другому и работать у меня не будет».
Книга оставила у меня двойственное впечатление. С одной стороны, там освещаются интересные темы с использованием API для Flickr и Facebook.
Сдругойсторонывсеэтиопечаткиивойнаспробеламивесьмаозадачиламеня.
Счастливоговампрограммирования!
По старой привычке я по-прежнему читаю книги по программированию в бумажном варианте. В частности, про разработку под Android. Несколько лет назад с литературой по этой тематике на великом и могучем была напряжёнка. Сейчас положение немного выправилось. Я купил и прочитал, наверное, 99% всех выпущенных книг. Есть две проблемы с книгами. Первая — они однотипны в своей массе и рассказывают об одном и том же. Вторая проблема — значительная задержка в выпуске издания. Как правило, запаздывание происходит на 1-2 версии, что бывает достаточно критичным. Например, когда появились версии Android 3.0 и 4.0 с фрагментами, читать примеры создания приложений под Android 2.3 было глупо.
В далёком 2011 году вышла книга Android за 24 часа, которая, на мой взгляд, была одной из лучших. Мне понравился подход к раскрытию темы — брался один сквозной проект и постепенно усложнялся от часа к часу. Попутно объяснялись фундаментальные вещи на одном проекте. Было понятно, где и когда применять те или иные возможности.
На прошлой неделе случайно наткнулся в интернете на сообщение, что вышло новое издание с более длинным названием Создание приложений для Android за 24 часа с теми же авторами. И немедленно
При покупке меня немного смутило, что на обложке красовалась надпись 3-е издание. Видимо, отсчёт идёт от зарубежных изданий. Ладно, не будем придираться.
На этот раз авторы отказались от прежнего подхода и стали писать как все. Один час, одна тема, один проект. Затем всё по новой. В середине книге они временно вернулись к старому способу, когда в течение 4 уроков объясняли новые темы на примере одного проекта.
Начал читать. Уже к сороковой странице встретились две опечатки:
![](https://habrastorage.org/files/bfe/f46/8d9/bfef468d908a4c47914cb9d0405716da.png)
Прошли те времена, когда за подобное можно было и «партбилет на стол положить». Я общался с людьми, которые в советское время работали в издательском деле и знаю об этом не понаслышке. Теперь опечатками никого не удивишь, а в компьютерной литературе они встречались сплошь и рядом.
Но дальше моё изумление нарастало всё больше и больше.
Моему взору предстало предложение, написанное без единого пробела. Сразу вспомнился школьный немецкий язык, где длинные слова не были редкостью:
![](https://habrastorage.org/files/60d/8eb/b8f/60d8ebb8ff9b4753bef9dc2371b6d4db.png)
Если вы думаете, что была случайность, то вам ещё пример:
![](https://habrastorage.org/files/acb/117/3d8/acb1173d8a0c4b1da25364e1db4d87f1.png)
На самом деле, отсутствие пробелов встречается постоянно. Как будто, кто-то решил сэкономить на бумаге и сберечь лес. Иногда, в предложении не хватает одного пробела, иногда двух. Иногда их не существует как класса.
![](https://habrastorage.org/files/cc1/968/940/cc1968940c4e4fb8b0441941d32fa09a.png)
Оставим пока пробелы в покое. Обратимся к коду. Кстати, шрифт для кода мне не понравился, какой-то узкий и не слишком читаемый. Но я не шрифтовик, может чего-то не понимаю.
Смотрим на такой код:
![](https://habrastorage.org/files/64f/e57/2ce/64fe572ce33f40618850f91b13a8c971.png)
Как вам? Две переменные с одинаковыми именами практически рядом. А принцип наименования из одного символа? Чего греха таить, я и сам лет пятнадцать назад в Visual Basic писал в таком же стиле для себя. Сейчас такой подход оправдан, наверное, только в js-библиотеках для уменьшения размера.
Потом авторы исправляются и стали давать кнопкам более осмысленные названия. Но хрен редьки не слаще.
![](https://habrastorage.org/files/469/d9e/a5b/469d9ea5bff74b6ea015dcb693539055.png)
По-моему, во всех современных языках существует негласное правило использовать глаголы для методов-функций.
Но только в этом случае.
![](https://habrastorage.org/files/cc7/9e2/195/cc79e21958d44c109fbc7997eb38db22.png)
Форматирование кода без отступов (борьба с пробелами, вы помните):
![](https://habrastorage.org/files/83a/b7f/feb/83ab7ffeba2043af888e25dce202a80f.png)
Ладно, отступы. Так убрали пробел между именем класса и переменной.
Случайность? Не думаю.
![](https://habrastorage.org/files/649/27e/3d0/64927e3d021048039ed4004b809c0faa.png)
Код без ошибок — это фантастика. Программист не должен слепо копировать текст.
Снова «удачное название кнопки».
![](https://habrastorage.org/files/3d5/f28/337/3d5f2833707d46e1ac587b76f5b230fd.png)
Оформление текста.
Методы в Java пишутся с маленькой буквы. Ну это такая мелочь. А вот Word при форматировании заменил их на большие, Word не может ошибаться (одна из версий, почему так произошло).
![](https://habrastorage.org/files/4e9/1bf/131/4e91bf131dde442bbe407a1ac68f181c.png)
Но иногда можно сделать исключение и один пункт оставить с маленькой. Действительно, чего я придираюсь.
![](https://habrastorage.org/files/d81/f88/979/d81f88979f914c429126a97b27a85a3f.png)
Таблицы оформлены с любовью, пробелы не пройдут!
![](https://habrastorage.org/files/216/39a/3a4/21639a3a4eb349c4a5d2cedcb42c9452.png)
Если потихоньку воруем пробелы, то давайте отсыплем читателю одиночных кавычек.
![](https://habrastorage.org/files/6c5/648/1a9/6c56481a92744cc7a14d5c767364577e.png)
Удивительно, на страницах книги приводятся отрывки из кода, а где посмотреть полные исходники нигде не написано. Никаких упоминаний в книге не нашёл. На сайте российского издательства тоже. Пришлось искать сайт зарубежного издательства, и только там я нашёл ссылку на архив.
На страницах книги встретилась ремарка, что сей труд писался в июне 2013 года. Помните, я говорил об отставании в начале статьи. Это означает, что здесь вы не встретите материалы о Material (каламбур), а также упоминания про Android Studio. Многие начинающие разработчики воспринимают Eclipse и Android Studio как разные и не совместимые языки программирования (!). Не раз встречал подобные заявления на форумах, где люди отказывались изучать пример, если там встречалось слово Eclipse, с утверждением: «Ведь там всё по другому и работать у меня не будет».
Книга оставила у меня двойственное впечатление. С одной стороны, там освещаются интересные темы с использованием API для Flickr и Facebook.
Сдругойсторонывсеэтиопечаткиивойнаспробеламивесьмаозадачиламеня.
Счастливоговампрограммирования!