PostgreSQL. Разработка баз данных. Учебник. Рецензия на книгу (книга дрянная).
Коллектив авторов аж из 6 человек сочинил это поделие объёмом 228 страниц. И выложил на litres. За 790 рублей(!).
Если бы цена была 5 рублей - например, пособие по Oracle на 855 страниц автор за столько выложил, - претензий было бы значительно меньше.
Не хотелось бы писать "верните мои деньги назад", а, получается, написал.
Наверное, достаточно этой цитаты, чтобы оценить уровень этого учебного пособия - "Все переменные, объявленные как NOT NULL должны иметь ненулевое значение по умолчанию" (стр 156) - и понять, что писалось всё левой ногой. И редактуры было ровно 0. Ни 1 программист в здравом уме такое никогда не напишет.
И это не опечатка - на следующей странице будет "Если предложение (WTF?!) DEFAULT не задано, переменная инициализируется нулевым (!!!) значением SQL"."
Не буду писать подробно, очень вкратце пробегусь по главам, но сначала оценим аннотацию:
"Цель данной книги — кратко, доступно и в то же время просто изложить приемы работы с СУБД PostgreSQL в версии Postgres Pro. PostgreSQL в версии Postgres Pro — отечественная СУБД, единственная в своем роде, которая по своим возможностями сопоставима с известными зарубежными системами. При изложении материала авторы стремились к максимальной простоте, поскольку студенты хотя и имеют дело с информационными технологиями, все же не являются профессиональными программистами."
Во всей книге о Postgres Pro упомянуто только в предисловии - и больше ни одного упоминания не будет.
Если кто-то из книги хотел узнать, какие там есть отличия от ванильного PG - такого тоже не будет.
И, к слову, студенты вполне могут быть профессиональными программистами, если они работают программистами на работе за зарплату. Как и авторы этого ... поделия.
Глава 1. Установка PostgreSQL в виртуальной среде
Это просто стыд, 32 страницы потрачены, чтобы рассказать про Oracle VM VirtualBox и работу с ним. К самому материалу сущностных претензий нет, но достаточно было дать ссылку - к работе с PostgreSQL эта глава никакого отношения не имеет.
Ну и кто в реальной жизни будет заморачиваться устанавливать специально VM VirtualBox, потом доставлять туда ОС, а потом PostgreSQL. Видимо, только авторы курса, т.к. они "начинали свою преподавательскую деятельность еще в период мейнфре́ймов типа IBM 360" и думают, что так делать в 2023 (год выхода этого) - это норм.
Глава 2. Создание базы данных PostgreSQL
По сути тут про работу в pgAdmin. Кмк, инструмент больше для одминов.
Можно узнать про некий инструмент ERD - что-то вроде Power Designer. Наверное, что-то полезное, а раз оно входит в комплект поставки, то нельзя сказать, что совсем не по теме.
Хотя нет, всё-таки не по теме.
Олала, наконец-то мы пришли к использованию SQL! На 72 странице книги из 228 страниц.
Такое впечатление, что авторы не очень заморачивались за особенности PostgreSQL.
А ещё можно познакомиться с интересной терминологией - встроенные запросы, например (так авторы подзапросы называют).
Это мне напомнило, как view - которые общепринято на русском называть представлением, - такие же не особо заморачивавшиеся назвали "обзорами"))
Рассказали про виды джойнов. Но про cross join забыли. Про lateral join, возможно, и не знали. А может не посчитали его джойном - имеет право на существование такая позиция.
Ууух, авторы не знают о конструкции create or replace, у них строго create.
Про внезапную перегрузку упомянули мельком - в бд могут существовать несколько ф-й с одним именем, но разной сигнатурой.
Отчего они так могут, почему - молчок. Ну ... некрасиво.
Ещё есть главы 6 (Функции PL/pgSQL) и 7(Триггеры PostgreSQL) - не буду эти главы комментировать.
И список литературы. В котором 6 источников за авторством так называемых "создателей" этой "книги".
Думаю, не ошибусь, если скажу, что так называемые "авторы" сами из этого списка книжки не читали. (для инфо - я пп. 14 - 16, 18-19 читал).
Возможно, у кого-то возникнет вопрос: "а почему, если 2 главы посвящены функциям в PostgreSQL и глава - триггерам, то нет главы о хранимых процедурах?"
Обоснованно предположу, что авторы не в курсе, что в PostgreSQL их уже завезли. И не вчера. Они появились ещё в 11 версии, т.е. в 2018 году. Но авторы почему-то в 2023 году предпочитают использовать версию PostgreSQL 9.5.
Ну и про категории изменчивости функций "авторы" тоже "забыли" написать.
P.S. Примечательно, что на Литресе мой отзыв 3 раза был отклонён.
Сначала с пометкой "спам и реклама" - я там написал, что у Postgres Pro лучше курсы посмотреть и книжки читать забесплатно. Окей, убрал.
Потом с пометкой, что нужен подробный отзыв - хотя на том же Литресе полным-полно отзывов из 3 предложений.
И последний раз - "Следите за ошибками и опечатками, уважайте авторов и чужое мнение".
Такое впечатление, что на Литресе только хвалебные отзывы можно. Или совсем недовольные нельзя.