Продолжаем наше нелегкое путешествие по бесконечному количеству книг о программировании на Python. И сегодня на обзоре сразу две книги одного автора — Жукова Романа Александровича, кандидата физико-математических наук, доцента, автора более 50 учебно-методических и научных работ.
И первое, что нам нужно сделать, это понять, чем книги отличаются. Из очевидного: одна книга — зеленая, втоаря — желтая.
Зеленая книга для бакалавриата, то есть для высшего образования. А желтая для среднего профессионального образования.
Но давайте заглянем внутрь и сравним их не по обложке, а по содержанию. Откроем страницу 129 в обеих книгах:
И попробуйте найти хоть одно отличие. Их нет. Эти книги абсолютно идентичны. Буква в букву. Ошибка в ошибку.
Давайте немного подробнее остановимся на 129 странице, которая посвящена функциям. И код, который вы тут видите это просто издевательтсво над Python.
Условная инструкция записана без отступов, вызов функций идет через точку с запятой, операторы не отбиты пробелами. Так писать нельзя. Это не эстетично.
Вы, конечно, можете сделать мне замечание, что да, код написан не канонично, но он работает. Но если вы перевернете страницу, то сразу же наткнетесь на две нерабочие программы. В них не соблюдены отступы, а это серьезная ошибка.
Её довольно сложно не заметить. И даже если это недоработки верстки, в чём я сомневаюсь, то за несколько лет можно было их исправить. Книга издается с 2019 года, а это издание 22. Время для правок есть.
При этом у книги как минимум два рецензента — доктора наук, но это, как видите, ей не помогло.
Также данная книга присутствует в качестве рекомендованной литературы на курсе по основам Python в Высшей Школе Экономики. И я даже не знаю, как это комментировать.
В общем я пролистал всю главу, посвященную функциям, и нашел там примерно 14 небольших программ, из которых 10 работать не будут.
И это на 8 страниц. Например, там вы можете встретить вот такой фрагмент. И это даже не спагетти-код, это просто переваренные пельмени.
Тут же в рамках 8 страниц, автор успел рассказать про лямбда функции, декораторы, а также генерацию итерации с помощью yield. Макс Ферстаппен так быстро не гоняет, как Роман Жуков обучает вас Python.
В целом на этом можно было бы закончить обзор, но я решил пролистать книгу с начала, чтобы понять, насколько автор вообще знает Python.
И первое на что у меня упал глаз — это на операторы для работы с числами. Среди них автор привел оператор неравенства <> и вот конкретно в Python такого нет. В Python неравенство проверяется только так: !=.
А еще при работе со строками автор почему-то называет одинарную кавычку апострофом. Да, визуально они похожи, но это разные символы и апострофы в python использовать нельзя.
Как и эти книги для обучения питону. Тут много ошибок, неточностей, проблемы с кодом и в целом само повествование далеко от того, которое должно быть в учебном пособии.
В общем это мусор, который отправляется к Майку МакГрату.
Список же хороших, проверенных книг вы найдете по этой ссылке.