Сообщений 0 Оценка 0 Оценить |
В большинстве книг, посвященных программированию, основное внимание
уделяется изучению синтаксиса языка, средств и приемов написания программ,
а в качестве примеров приводятся довольно простые проекты. Эта книга
построена совсем иначе. В ходе работы над проектом TinyPIM автор шаг за
шагом проведет вас через все фазы разработки объектно-ориентированного
приложения на основе классов и функций стандартной библиотеки С++. Будут
рассмотрены вопросы постановки задач, анализа, выбора оптимальных
стандартных средств программирования и реализации проекта с проверкой
работоспособности приложения. Цель книги состоит не только в том, чтобы
познакомить вас с большинством средств стандартной библиотеки С++, но и в
том, чтобы объяснить основные концепции, положенные в основу разработки
стандартных шаблонов классов и функций, а также научить правильно выбирать
необходимые средства для достижения максимальной эффективности и
ошибкоустойчивости создаваемых приложений.
Книга рассчитана главным
образом на начинающих программистов, желающих познакомиться со стандартной
библиотекой С++, но она также будет интересна и профессиональным
программистам, которые перешли к С++ от С или других языков
программирования.
Книга построена совершенно не так, как большинство книг по С++, STL и программированию вообще. Автор изначально декларирует тезис, что научиться использовать некоторый инструмент программирования можно, если применять его в реальных программах. Поэтому, чтобы научиться использовать стандартную библиотеку, надо разработать реальное, достаточно сложное приложение. В этой книге на практическом примере программирования записной книжки автор показывает преимущества использования средств STL. Все делается постепенно: сначала формулируются требования к проекту, затем делается набросок проекта с использованием диаграмм классов UML. Только потом начинается программирование. Чтобы на практике продемонстрировать преимущества STL, автор сначала реализует класс Adress с помощью символьных массивов, затем динамических символьных массивов, и наконец, с помощью строк.
В книге последовательно разрабатываются все необходимые составные части записной книги с использованием STL. Текстов программ много, и они разбираются достаточно подробно. Программирование каждой подсистемы тоже начинается с изложения требований и наброска схемы классов UML. Потом начинается программирование. По ходу дела автор делает небольшие отступления, в которых разъясняет тот или иной не совсем тривиальный вопрос, например, почему функция pop не возвращает значение.
Некоторые решения достаточно оригинальны. Попробуйте написать систему вложенных меню без использования GUI. В книге такая система является составной частью записной книжки. В главе 9 приводятся довольно хорошие классы даты и времени.
В общем, книжка неплохая, если читать ее последовательно, и при этом выполнять ту работу, которая там описана. В конце у вас появится работающий проект записной книжки, который можно будет развивать дальше. Кроме того, вы получите опыт использования С++ и STL для написания довольно большой программы. Советовал бы ее прочитать программистам, уже "понюхавшим пороху", и начинающим осваивать С++ всерьез. Квалифицированным программистам-профессионалам на С++ книга уже не нужна, поскольку как справочник ее использовать невозможно.
Не всегда переводные термины соответствуют уже устоявшимся названиям. Например, вместо слова "привязка" используется "подшивка". Иногда это сбивает с толку.
Сообщений 0 Оценка 0 Оценить |