Бьерн Страуструп. Язык программирования С++ Второе дополненное издание



Pdf көрінісі
бет15/256
Дата11.07.2022
өлшемі2,87 Mb.
#37591
1   ...   11   12   13   14   15   16   17   18   ...   256
ПРЕДИСЛОВИЕ 
"А дорога идет все дальше и дальше" 
 (Бильбо Бэгинз) 
Как было обещано в первом издании книги, запросы пользователей определили развитие С++. Его 
направлял опыт широкого круга пользователей, работающих в разных областях программирования. За 
шесть лет, отделяющих нас от первого издания описания С++, число пользователей возросло в сотни 
раз. За эти годы были усвоены многие уроки, были предложены и подтвердили практикой свое право на 
существование различные приемы программирования. О некоторых из них и пойдет речь ниже. 
Сделанные за эти шесть лет расширения языка прежде всего были направлены на повышение 
выразительности С++ как языка абстракции данных и объектно-ориентированного программирования 
вообще и как средства для создания высококачественных библиотек с пользовательскими типами 
данных в 
частности. Библиотекой высокого качества мы считаем библиотеку, позволяющую пользователю 
определять с помощью классов понятия, работа с которыми сочетает удобство, эффективность и 
надежность. Под надежностью понимается то, что класс предоставляет защищенный по типам 
интерфейс между пользователями библиотеки и ее разработчиками. Эффективность предполагает, что 
использование классов не влечет за собой больших накладных расходов по памяти или времени по 
сравнению с "ручными" программами на С. 
Эта книга является полным описанием языка С++. Главы с 1 по 10 представляют собой учебник, 
знакомящий с языком. В главах с 11 по 13 обсуждаются вопросы проектирования и развития 
программного обеспечения. Завершается книга справочным руководством по языку С++. Естественно, 
что все расширения языка и способы их использования, которые появились после выхода в свет 
первого издания, являются частью изложения. К ним относятся уточненные правила для разрешения 
перегрузки имени, средства управления памятью и средства контроля доступа, надежная по типам 
процедура связывания, статические и постоянные функции-члены, абстрактные классы, множественное 
наследование, шаблоны типов и обработка особых ситуаций.
С++ является языком программирования общего назначения. Естественная для него область 
применения - системное программирование, понимаемое в широком смысле этого слова. Кроме того, 
С++ успешно используется во многих областях приложения, далеко выходящих за указанные рамки. 
Реализации С++ теперь есть на всех машинах, начиная с самых скромных микрокомпьютеров - до 
самых больших супер-ЭВМ, и практически для всех операционных систем. Поэтому книга дает лишь 
описание собственно языка, не объясняя особенности конкретных реализаций, среды 
программирования или библиотек. 
Читатель найдет в книге много примеров с классами, которые, несмотря на несомненную пользу, можно 
считать игрушечными. Такой стиль изложения позволяет лучше выделить основные понятия и 
полезные приемы, тогда как в настоящих, законченных программах они были бы скрыты массой 
деталей. Для большинства предложенных здесь классов, как то связанные списки, массивы, строки 
символов, матрицы, графические классы, ассоциативные массивы и т.д., - приводятся версии "со 100% 
гарантией" надежности и правильности, полученные на основе классов из самых разных коммерческих 
и некоммерческих программ. Многие из "промышленных" классов и библиотек получились как прямые 
или косвенные потомки игрушечных классов, приводимых здесь как примеры. 
В этом издании книги по сравнению с первым больше внимания уделено задаче обучения. Вместе с 
тем, уровень изложения в равной мере учитывает и опытных программистов, ни в чем не умаляя их 
знаний и профессионализма. Обсуждение вопросов проектирования сопровождается более широкой 
подачей материала, выходящей за рамки описаний конструкций языка и способам их использования. В 
этом издании приводится больше технических деталей и повышена строгость изложения. В 
особенности это относится к справочному руководству, которое вобрало в себя многолетний опыт 
работы в этом направлении. Предполагалось создать книгу с достаточно высоким уровнем изложения, 
которая бы служила программистам не только книгой для чтения. Итак, перед вами книга с описанием 
языка С++, его основных принципов и методов программирования. Надеемся, что она доставит вам 
радость. 


Бьерн Страуструп.
Язык программирования С++ 
 
10 


Достарыңызбен бөлісу:
1   ...   11   12   13   14   15   16   17   18   ...   256




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет