Сегодня закончил с книгой. Покупал её в июне прошлого года за 316 рублей, а сейчас она продается как минимум - в два раза дороже, а на сайте издательства и во все три! За что!? Не знаю… Верстка книги - ужасная, крупный шрифт со странным разбиением кода на две колонки делает его полностью не читаемым. Скопировать код не получится, по тому что он коряво оцифрован. Скопировать исходных код не получится, по тому что его там уже нет, а веб архив штормит еще с прошлого года и приходится тратить много времени. А без примеров кода разбирать как-то не очень, один Visitor чего только стоит :)

Вообще, это перевод курса COMP 310 Университета Райс, который читался в 2010-х гг. Сейчас он немного переработан, но все так же преподается и его все так же ведет один из соавторов, Stephen Wong. При этом сам материал первой части книги мне очень понравился. Позволяет взглянуть на процесс проектирования совершенно под другим углом. Очень круто описаны паттерны, их плюсы и минусы, наглядные примеры использования. В общем, очень! Правда, читается медленно, плотно упаковали.
Зная паттерны, которые описаны в первой части, можно закрыть 80% потребностей в проектировании бизнес-логики. Другими словами, книга дает фундаментальные знания для проектирования приложений. Но, это ладно, не первая и не последняя книга, которая это декларирует… просто именно мне такой стиль изложения зашел лучше всего. Хотя, может быть я просто дорос до этих проблем, по тому что до этого в принципе знакомился с Java, не знаю.
Заметил то, как в книге именуются интерфейсы и абстрактные классы, используется венгерская нотация. Это, когда название интерфейса начинается с I, а абстрактного класса с A. Так понял, что она была принята до распространения IDE, а сейчас считается моветоном. Видимо, в книге она используется для того, что бы легче было понимать материал и это работает! Что явно “в плюс” материалу. И на этом плюсы заканчиваются, похоже.
Примерно с середины книги начинаются материалы, которые мне показались скучными, вроде того как устроен неизменяемый массив, изменяемый, стёк с очередями и прочее. Скучным именно для меня он показался по тому, что тут уже я для себя не наше ничего нового. Всё это базируется на первой половине книги, которая достойна внимания. Но! Тут такое дело, что по сути она сводится к знакомству с базовыми паттернами и для этого покупать книгу не обязательно. Но, даже если брать, то явно не эту :) Не знаю, зачем вообще в это ввязалось издательство, да еще и в 2024 году!
В книге встречается куча опечаток, кривой перевод или ошибки оцифровки? Например, в коде new Class может быть заменено на новый Class, а вместо public повсеместно встречается puЫic. Уж не знаю, как так получилось… Но! Мне до этого нет особого дела, честно говоря, по тому что код для меня все равно понятен, а опечатки, оформление… ну, я был готов, когда покупал книгу издательства “АСТ”. Не в том смысле, что оно какое-то плохое, а в том что оно на таких книжках не специализируется. Вот для “Питера” это было бы куда обиднее. С другой стороны, даже не вычитать книгу после сканирования - это просто неуважение к читателям. Кроме того, что оформление книги не очень, еще и полиграфия сама по себе средненькая. В общем, не смотря на то, что первая часть мне зашла, книгу я бы не советовал никому :)
На всякий случай, ссылка на курс: https://www.clear.rice.edu/comp310/JavaResources/cnx/index.html и на электронную версию (англ.): https://archive.org/details/cnx-org-col10213
Автор(ы):
- Stephen Wong
- Dung Nguyen
Год издания: 2024
Количество страниц: 192
Оценка: 2/5
Издатель: АСТ Ссылка на страницу книги на сайте издательства: https://ast.ru/book/printsipy-obektno-orientirovannogo-programmirovaniya-876844/
Оригинальное название: Principles of Object-Oriented Programming
Год издания оригинала: 2013