Разъяснил, как по полкам разложил
Л. Кэррол. "Алиса в Зазеркалье"
Так уж получилось, что иногда я пишу не только статьи в PC Week/RE, но и Windows-программы в среде Microsoft Visual C++. Сначала это был Visual C++ версии 1.5х, а потом - версии 4.х. И всякий раз мне приходилось разыскивать книги, в которых доходчиво объяснялось бы, как именно решить ту или иную проблему с помощью Visual C++. Я не имею в виду описание самого языка, для этого вполне достаточно того, что есть в справочных файлах.
Конечно, книг на английском языке, где рассматриваются все тонкости программирования в среде Visual C++, хватает, но+ Нет, я не хочу сказать, что у меня проблемы с английским, скорее, у меня проблемы с возможностью достать эти книги - они же издаются там, а здесь, увы, таких книг нет, вернее, почти нет.
И вот, наконец, у меня и многих программистов, работающих с Visual C++, появилась возможность прочитать о том, как работать и как писать программы, используя все богатые возможности Microsoft Visual C++ 4.0. Один из авторов этой книги*, Владимир Арнольдович Биллиг, работает в области программирования с 60-х годов. Уж кому, как не ему, рассказать о программировании.
Как написано на титульном листе - это книга для программистов. "А чем же она хороша?" По-моему, тем, что в ней изложено о Visual C++ 4.0 практически все, что нужно знать для создания программ для Windows 95 или Windows NT.
Эта - не очень толстая (всего 352 страницы) - книга расскажет вам и об основных понятиях объектно-ориентированного программирования, и о библиотеке классов MFC 4.0, о том, что представляет собой Microsoft Developer Studio, и о том, как создавать в этой среде разработчика типовые Windows-приложения.
Книга написана в лучших традициях компьютерной литературы: у каждой главы есть эпиграф, повествование идет от простого к сложному, если в главе говорится о разработке какого-либо приложения, то показано, как это сделать, и, конечно, приводятся тексты тех функций, которые надо добавить к созданному скелету приложения, чтобы получить необходимый результат.
Некоторые главы посвящены не вопросам программирования, а основным понятиям или описанию самого инструмента программирования - Microsoft Developer Studio. На мой взгляд, одно из достоинств книги - это то, что в ней просто и понятно рассказано об архитектуре Document-View (Документ-Облик) и о взаимосвязи событий и сообщений (мне очень нравится одно определение, которое я прочитал в Microsoft Systems Journal, - "message-driven maze").
Конечно, рассказать обо всем нельзя, и, наверное, поэтому в книге так мало внимания уделено OLE и OLE-объектам, но, как сказал Козьма Прутков: "Никто не обнимет необъятного". Недостаток информации об одних элементах программирования полностью исчерпывается подробным изложением принципов работы с диалогами, описанием функций основного класса CWnd и многим другим, без чего нельзя понимать и создавать Windows-приложения с помощью MFC.
А теперь - совсем маленькая ложка дегтя.
Некоторые термины в книге мне кажутся спорными, например "добавление ускорителей". В главе, рассказывающей о работе с диалогами, приводится пример приложения "Он и Она" (HeAndShe). Так вот, когда идет речь о модальном диалоге и классе "Он" (He), используется английское слово "He". Поэтому некоторые фразы в главе звучат несколько странно - "ClassWizard добавляет в конструктор Не класса Не инициализацию переменных+" Когда же идет речь о немодальном диалоге и классе "Она" (She), то использование русского слова не приводит к подобным ляпам. Ну и, наконец, в таблице, описывающей назначение кнопок панелей инструментов, по непонятным причинам произошел сдвиг текста относительно рисунка кнопки.
Однако эти маленькие "ляпы" - не главное в книге. Главное - то, что она написана специалистами и для специалистов, а это дорогого стоит.
Алексей Роговцев
*Биллиг В. А., Мусикаев И. Х. Visual C++ 4. Книга для программистов. М.: издательский отдел "Русская редакция". ТОО "Channel Trading Ltd.". 1996. 352 с.