Книжная полка: Сегодня разговор более предметный — обзор нескольких книг, уровень изложения в которых вполне доступен подросткам, увлекшимся программированием. Книги располагаются не в порядке моего субъективного рейтинга или личных предпочтений, а случайным образом. Буду рад комментариям, обсуждению и рекомендациям литературы, которая не попала в этот список (не такой уж, кстати, и длинный).
1. Программирование на Java для детей, родителей, дедушек и бабушек. Автор Яков Файн.
Видно из названия, что книга позиционируется как первый учебник для новичка. Изучаемый язык — Java. В предисловии автор заявляет примерный возраст, в котором уже можно начинать учиться программировать, — 11 лет. На мой взгляд, это, конечно, несколько рановато, но лет с 12-13 уже вполне можно начинать осваивать Java, особенно под присмотром учителя. Книга впервые была издана в 2004 году на английском языке. В 2011-м была переведена на русский, текст при этом подвергся коррекции, дополнениям и изменениям.
В первой части книги поясняются основные принципы работы в IDE Eclipse, далее автор переходит к основам объектно-ориентированного программирования и объясняет такие понятия, как класс и объект, затем изучаются основные конструкции языка Java. Также здесь поясняются такие понятия, как апплеты, исключения, потоки, чтение данных из файлов. В книге разбирается несколько примеров, даются практические задания, ссылки на материалы для дополнительного чтения (правда, на английском языке). Книга неплохо оформлена. Объем — чуть более 200 страниц.
Общая субъективная оценка — 4 из 5.
2. C# для школьников. Учебное пособие. Автор М. Драйер.
Книга Мартина Драйера издана в 2011 году. Кстати, она распространяется свободно, текст ее доступен на сайте Microsoft. Сейчас автор занимается разработкой программного обеспечения, но в прошлом был школьным учителем. Книга рассчитана на читателей 12-16 лет.
В качестве среды для обучения используется Microsoft Visual C# Express Edition. С первых же страниц книги вводятся понятия класса и объекта. В забавной игровой форме объясняется, зачем нужны эти понятия и как их использовать. Далее вводится понятия метода, а также объясняется, что такое наследование.
Следующая часть книги посвящена изучению начальных принципов работы с Windows Forms.
В последней части учебного пособия кратко поясняется, что такое XML, а также дается вводная информация о том, что такое базы данных.
В целом впечатление от книги двоякое. С одной стороны, достаточно интересно объясняются азы объектно-ориентированного подхода в программировании, а с другой — все остальное дается очень скомкано, при этом непонятно, почему так сделано. Общий объем книги — всего 120 страниц.
Общая субъективная оценка — 2,5 из 5.
3. Занимательное программирование: Visual Basic. Книга для детей, родителей и учителей. Авторы С. Симонович, Г. Евсеев
Была издана уже давно, в 2001 году. Заявленный возраст читателей — 12-15 лет. Книга позиционируется как самоучитель, материал подан так, что даже новичок должен освоить предлагаемые темы самостоятельно.
В начале книги сделан краткий исторический экскурс, в котором рассказывается, как и когда появились компьютеры, на очень простых примерах объясняется, что такое программирование, рассказывается о том, какие бывают языки программирования, когда они родились и почему они разные. Далее речь идет о разных подходах в программировании, поясняется, что такое процедурное программирование и чем от него отличается объектно-ориентированное программирование.
Затем авторы переходят к объяснению азов программирования на Microsoft Visual Basic, попутно объясняя, как хранится информация на компьютере, как устроена файловая система. Постепенно создаваемые программы усложняются, добавляются новые компоненты и некоторые языковые конструкции.
В целом информация дается очень подробно, но к сожалению, в виде «сюда поставили кнопку», тут вписали «что-то там». На мой взгляд, не хватает части, в которой давалось бы описание основ самого языка, без упора на визуальную составляющую.
Общий объем книги — 300 страниц.
В целом, учитывая возраст книги, а также стиль изложения, субъективная оценка — 3 из 5.
4. Занимательное программирование. Самоучитель. Автор М. Мозговой.
Издана в 2005 году. В этой книге не рассматривается какой-либо язык программирования, фактически она представляет собой сборник задач из различных областей знаний. Предполагается, что читатель уже знаком с основами программирования, а также уже приобрел опыт в программировании, знает, как решать типовые задания (такие как сортировка и подобные). Примеры решений в книге приводятся на языке Object Pascal.
Основные темы, рассматриваемые в этой книге, — моделирование некоторых физических процессов, анимация, трехмерная графика, лабиринты, сжатие данных, графы. Думаю, что названные темы будут интересны тем, кто по-настоящему увлекся программированием и уже приобрел определенный опыт. Так как рассматриваются достаточно сложные темы, то, думаю, целевой аудиторией данной книги будут старшеклассники и студенты начальных курсов.
Общий объем книги — 200 страниц.
Субъективная оценка — 4 из 5, но стоит помнить, что книга не является в полной мере именно учебником по программированию.
5. Как программировать на C++. Авторы Х. М. Дейтел, П. Дж. Дейтел.
Еще одна книга, которая изначально не была предназначена в качестве учебника для подростков. Однако я поместил эту книгу в данный обзор, поскольку она подкупает своей структурированностью и подробным изложением материала (более 1000 страниц!). Книга выдержала уже пять изданий. Тут есть все, начиная от вводных глав о том, что такое компьютер, и заканчивая стандартной библиотекой шаблонов и основами UML.
В конце каждой главы присутствуют следующие подразделы — «терминология», «типичные ошибки программирования», «хороший стиль программирования», «советы по повышению эффективности», «замечания по технике программирования», «упражнения для самопроверки». Задания к каждой главе приводятся трех уровней сложности — простые, продвинутые и повышенной сложности.
В книге более 20 глав.
На мой взгляд, эту книгу можно вполне использовать как самоучитель. Кому можно посоветовать это издание? Думаю, вполне подойдет для старшеклассников (10-11 класс), хотя и для студентов книга тоже будет полезна.
Однако учитывая количество страниц и относительную сложность излагаемого материала, ставлю субъективную оценку 3,5 из 5.
6. Программирование от нуля до ... Самоучитель для детей. Автор А.А. Галахов.
Данная книга отсутствует в моей коллекции, поэтому могу только процитировать описание, выуженное из сети:
«Эта книга — вводный курс программирования, предназначенный для школьников и студентов, желающих научиться основам этого искусства. Хотя речь в ней идет о достаточно сложных вещах, она написана простым и доступным языком. Более того, для упрощения освоения излагаемого материала автор предлагает собственную надстройку для популярного языка программирования Турбо Паскаль — Русский Паскаль. Это позволит юным читателям в самом начале сложного и интересного пути не заботиться о запоминании английских слов или их сокращений и писать программы на родном русском языке. В книге на простых игровых примерах рассмотрены все важнейшие темы программирования на языке Турбо Паскаль и даны основы объектно-ориентированного программирования в среде Windows с использованием пакета Delphi. Для работы с ней не требуется предварительной подготовки и достаточно лишь основ компьютерной грамотности».
Издана в 2006 году, фактически представляет из себя учебник по Pascal. По содержанию можно сделать вывод, что в книге даются основы Pascal и не более того. Предполагаемый возраст целевой аудитории — 14-15 лет.
Оценку ставить не буду, так как в каком виде излагается материал, мне неизвестно. Может, кто-нибудь читал эту книгу и готов поделиться своими наблюдениями в виде комментария?
К сожалению, действительно полезной литературы по азам программирования, такой, которую можно предложить подростку, не так уж и много. Однако я в дальнейшем планирую продолжать поиск и отбор таких книг и собираюсь делиться найденной информацией с вами, с уважаемым сообществом программистов dev.by.
До новых встреч!
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.