- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
Программирование. Принципы и практика использования C++ Исправленное издание - Бьёрн Страуструп
Шрифт:
Интервал:
Закладка:
Округление (rounding). Преобразование значения в ближайшее менее точное значение по математическим правилам.
Операция (operation). Нечто, выполняющее какое-то действие, например функция или оператор.
Определение (definition). Объявление сущности, содержащее всю необходимую информацию для его использования в программе. Упрощенное определение: объявление, выделяющее память.
Отладка (debugging). Поиск и удаление ошибок из программы; обычно имеет менее систематичный характер, чем тестирование.
Ошибка (error). Несоответствие между разумными ожиданиями относительно поведения программы (часто выраженными в виде требований или руководства пользователя) и тем, что программа делает на самом деле.
Парадигма (paradigm). Несколько претенциозное название стиля проектирования или программирования. Часто (ошибочно) считают, что существует парадигма, превосходящая все остальные.
Параметр (parameter). Объявление явной входной информации для функции или шаблона. При вызове функция может обращаться к аргументам по именам своих параметров
Перегрузка (overload). Определение двух функций или операторов с одинаковыми именами, но разными типами аргументов (операндов).
Переменная (variable). Именованный объект заданного типа; содержит значение, если был инициализирован.
Переполнение (overflow). Создание значения, которое невозможно сохранить в предназначенной для него области памяти.
Подтип (subtype). Производный тип; тип, обладающий всеми свойствами базового типа и, возможно, дополнительными возможностями.
Последовательность (sequence). Совокупность элементов, которую можно перебрать последовательно.
Постусловие (post-condition). Условие, которое должно выполняться при выходе из фрагмента кода, например, функции или цикла.
Правильность (correctness). Программа или фрагмент программы считается правильным, если он соответствует своим спецификациям. К сожалению, спецификация может быть неполной или противоречивой или не соответствовать разумным ожиданиям пользователя. Таким образом, для того чтобы создать приемлемый код, мы иногда должны сделать больше, чем просто следовать формальной спецификации.
Предусловие (pre-condition). Условие, которое должно выполняться при входе во фрагмент кода, например функцию или цикл.
Прецедент использования (use case). Конкретный (как правило, простой) пример использования программы, предназначенный для ее тестирования и демонстрации возможностей.
Приложение (application). Программа или коллекция программ, рассматриваемая пользователями как сущность.
Принцип RAII (“Resource Acquisition Is Initialization”). Основная технология управления ресурсами, основанная на концепции области видимости.
Программирование (programming). Искусство выражения решений задач в виде кода.
Программное обеспечение (software). Совокупность фрагментов кода и связанных с ними данных; часто используется как синоним слова “программа”.
Программный код (возможно, вместе со связанными с ним данными). То, что полностью готово к выполнению на компьютере.
Проект (design). Общее описание того, как должно работать программное обеспечение, чтобы соответствовать своей спецификации.
Производный класс (derived class). Класс, являющийся наследником одного или нескольких базовых классов.
Псевдокод (pseudo code). Описание вычислений, записанное с помощью неформальных обозначений, а не языка программирования.
Реализация (implementation). 1) Действие, означающее написание и тестирование кода; 2) код, реализующий программу.
Регулярное выражение (regular expression). Обозначение шаблонов в виде строк символов.
Редактор связей (linker). Программа, объединяющая файлы объектного кода с библиотеками в исполняемый модуль.
Рекурсия (recursion). Вызов функции самой себя; см. также итерация.
Ресурс (resource). Нечто, чем можно завладеть и что впоследствии следует освободить, например дескрипторы файлов, блокировка или память.
Система (system). 1) Программа или набор программ для выполнения определенной задачи на компьютере; 2) сокращение словосочетания “операционная система”, т.е. базовая среда для выполнения программ и инструменты компьютера.
Слово (word). Основная единица памяти компьютера, обычно используется для хранения целых чисел.
Сложность (complexity). С трудом поддающееся точному определению понятие, представляющее собой некую меру трудности процесса поиска решения задачи или свойство самого решения. Иногда под сложностью (просто) понимают оценку количества операций, необходимых для выполнения алгоритма.
Сокрытие (hiding). Действие, предотвращающее доступ к информации. Например, имя из вложенной (внутренней) области видимости, совпадающее с именем из охватывающей (внешней) области видимости, может быть недоступно для непосредственного использования.
Сокрытие информации (information hiding). Действие, связанное с отделением интерфейса и реализации друг от друга, в результате которого детали реализации остаются за пределами внимания пользователя и возникает абстракция.
Состояние (state). Набор значений.
Спецификация (specification). Описание того, что должен делать фрагмент кода.
Ссылка (reference). 1) Значение, описывающее место в памяти значения, имеющего тип; 2) переменная, содержащая такое значение.
Стандарт (standard). Официально согласованное определение чего-либо, например, языка программирования.
Стиль (style). Совокупность методов программирования, обеспечивающая согласованное использование возможностей языка. Иногда используется в очень ограниченном смысле, касающемся правил выбора имен и внешнего вида текста программы.
Стоимость (cost). Затраты (например, время работы программиста, время выполнения программы или объем памяти), связанные с производством программы или ее выполнением. В идеале стоимость должна зависеть от сложности.
Строка (string). Последовательность символов.
Супертип (supertype). Базовый тип; тип, имеющий подмножество свойств производного типа.
Тестирование (testing). Систематический поиск ошибок в программе.
Тип (type). То, что определяет набор возможных значений и допустимых операций над объектов.
Требование (requirement). 1) Описание желательного поведения программы или части программы; 2) описание предположений об аргументах функции или шаблона.
Указатель (pointer). 1) Значение, используемое для идентификации в памяти объекта, имеющего тип; 2) переменная, содержащая такое значение.
Усечение (truncation). Потеря информации в результате преобразования типа в другой тип, который не может точно представить преобразованное значение.
Утверждение (assertion). Утверждение, вставленное в программу, чтобы установить (assert), какое условие всегда должно выполняться в данной точке программы.
Файл (file). Контейнер, содержащий информацию в постоянной памяти компьютера.
Функция (function). Именованная единица кода, которую можно активизировать (вызвать) из разных частей программы; логическая единица вычислений.
Целое число (integer). Целое число в математическом смысле, например, 42 и –99.
Цикл (loop). Фрагмент кода, выполняющийся повторно; в языке C++ циклы, как правило, реализуются инструкцией for или while.
Число с десятичной точкой (floating-point number). Компьютерная аппроксимация действительного числа, например 7.93 и 10.78e–3.
Чисто виртуальная функция (pure virtual function). Виртуальная функция, которая должна быть замещена в производном классе.
Шаблон (template). Класс или функция, параметризованные одним или несколькими типами или значениями (на этапе компиляции); основная конструкция в языке C++, поддерживающая обобщенное программирование.
Язык программирования (programming language). Язык для выражения программ.
Библиография
Aho, Alfred V., Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. Compilers: Principles, Techniques, and Tools, Second Edition (обычно ее называют “The Dragon Book”). Addison-Wesley, 2007. ISBN 0321547985. (Русский перевод: Ахо А., Сети Р., Ульман Дж., Лам М. Компиляторы. Принципы, технологии, инструменты. 2-е издание. — М.: Вильямс, 2008.)
Andrews, Mike, and James A. Whittaker. How to Break Software: Functional and Security Testing of Web Applications and Web Services. Addison-Wesley, 2006. ISBN 0321369440.
Austern, Matthew H. Generic Programming and the STL: Using and Extending the C++ Standard Template Library. Addison-Wesley, 1999. ISBN 0201309564. (Русский перевод: Остерн М. Обобщенное программирование и STL. Использование и наращивание стандартной библиотеки шаблонов C++. — Спб: Невский Диалект, 2004.)
Austern, Matt, ed.

