Читать онлайн «Стандарты программирования на C++»

Автор Герб Саттер

Chabste андарты np • • - мм • • с ания н - ++ 101 правило и рекомендация Герб Саттер Андрей Александреску 'f : ?:>■■-' #; -'*-> - . О- • ■ i. ■ ■ / : '*■ stir' ' rf '■' - . ■ ^'Л-г-' »:, #■■ '»:: - . ■ ,•'. ,; 1%P;^ -•'•■*» f> #lr - . — ■ '/. (' Серия C++ In-Depth ♦ Бьярн Cmpaycmpyn С++/Языки программирования Стандарты программирования на C++ Герб Саттер и Андрей Александреску Согласованные, высококачественные стандарты программирования повышают качество программного обеспечения, сокращают время его разработки, способствуют командной работе, снижают затраты времени на решение несущественных вопросов и облегчают сопровождение программ. Два эксперта мирового уровня в программировании на C++, творчески переработав опыт всего программистского сообщества, сумели собрать лучшее в этой книге, которую любой программист или команда могут использовать в качестве основы для разработки собственных стандартов кодирования. Авторы не обошли вниманием ни один из разделов C++: проектирование и стиль кодирования, функции, операторы, дизайн классов, наследование, конструкторы и деструкторы, копирование, присваивание, пространства имен, модули, шаблоны, обобщенность, исключения, контейнеры и алгоритмы STL, а также многое другое.
Каждая рекомендация сопровождается кратким описанием и примерами из практики. От определения типа до обработки исключений — в этой книге собран лучший опыт, последние достижения и наработки, о которых вы могли просто еще не знать, даже если уже давно используете C++. В книге вы найдете ответы на массу различных вопросов, в том числе: • Что следует стандартизировать, а что нет? • Каким образом обеспечить масштабируемость кода? • Какие элементы входят в разумную стратегию обработки ошибок? • Как (и почему) следует избегать излишних зависимостей? • Когда и как следует совместно использовать статический и динамический полиморфизм? • Как обеспечить "безопасное" перекрытие функций? • Когда следует обеспечивать бессбойный обмен объектов? • Почему и как следует предотвращать пересечение исключениями границ модулей? • Почему вместо массивов следует использовать vector и string? • Как выбрать верный алгоритм STL для поиска или сортировки? • Каким правилам надо следовать для написания кода, безопасного в смысле использования типов? Работаете ли вы в одиночку или в группе — эта книга поможет вам писать более ясный код, причем делать это более быстро и качественно. Герб Саттер в первую очередь известен как автор бестселлера Решение сложных задач на C++, а также автор сотен статей, посвященных различным аспектам разработки программного обеспечения. Герб возглавляет комитет ISO по стандартизации языка, ведет раздел и регулярно печатается в журнале C/C++ Users Journal Он работает в Microsoft над архитектурой Visual C++, отвечая за проектирование расширений C++ для программирования в . NET. Андрей Александреску — автор знаменитой книги Современное проектирование на C++; он ведет раздел и регулярно печатается в журнале C/C++ Users Journal.