Практика программирования — В книге рассматриваются принципы практического профессионального программирования, которые, выходя за рамки простого написания кода, включают в себя проектирование, правильный выбор алгоритмов и структур данных, отладку и тестирование, оптимизацию быстродействия и переносимости, автоматизацию рабочего процесса. Изложение проиллюстрировано примерами из сложных, практически важных систем. Книга предназначена для повышения квалификации программистов. Может быть полезна студентам и преподавателям компьютерных специальностей.
Название: Практика программирования Автор: Брайан Керниган, Роб Пайк Издательство: Вильямс Год: 2015 Страниц: 287 Формат: PDF Размер: 15,2 Мб ISBN: 978-5-8459-2005-8 Качество: Отличное Язык: Русский
Содержание:
Предисловие Глава 1. Стиль программирования 1.1. Имена 1.2. Выражения и операторы 1.3. Единообразие стиля и устойчивые конструкции 1.4. Макрофункции 1.5. Явные числовые константы 1.6. Комментарии 1.7. Зачем утруждать себя Дополнительная литература Глава 2. Алгоритмы и структуры данных 2.1. Поиск 2.2. Сортировка 2.3. Библиотечные средства 2.4. Быстрая сортировка в Java 2.5. O-оценка 2.6. Расширяемые массивы 2.7. Списки 2.8. Деревья 2.9. Хэш-таблицы 2.10. Резюме Дополнительная литература Глава 3. Проектирование и реализация 3.1. Цепь Маркова 3.2. Выбор структур данных 3.3. Построение структуры данных на C 3.4. Генерирование выходных данных 3.5. Java 3.6. C++ 3.7. Awk и Perl 3.8. Вопросы быстродействия 3.9. Извлекаем уроки Дополнительная литература Глава 4. Интерфейсы 4.1. Данные, разделенные запятыми 4.2. Прототип библиотеки 4.3. Библиотека для общего пользования 4.4. Реализация на языке C++ 4.5. Принципы интерфейса 4.6. Управление ресурсами 4.7. Обработка ошибок 4.8. Пользовательские интерфейсы Дополнительная литература Глава 5. Отладка 5.1. Отладчики 5.2. Простые ошибки с очевидными симптомами 5.3. Сложные ошибки с трудными симптомами 5.4. Тяжелые случаи 5.5. Невоспроизводимые ошибки 5.6. Вспомогательные средства 5.7. Ошибки, сделанные другими 5.8. Резюме Дополнительная литература Глава 6. Тестирование 6.1. Тестирование по мере написания кода 6.2. Систематическое тестирование 6.3. Автоматизация тестирования 6.4. Тестирование компонентов в программных оболочках 6.5. Стрессовое тестирование 6.6. Полезные советы 6.7. Кто занимается тестированием 6.8. Тестирование марковской программы 6.9. Резюме Дополнительная литература Глава 7. Быстродействие 7.1. Узкие места 7.2. Измерение времени и профилирование 7.3. Стратегия ускорения 7.4. Настройка кода 7.5. Оптимизация использования памяти 7.6. Некоторые оценки 7.7. Резюме Дополнительная литература Глава 8. Переносимость 8.1. Язык 8.2. Заголовочные файлы и библиотеки 8.3. Организация программы 8.4. Изоляция 8.5. Обмен данными 8.6. Порядок следования байтов 8.7. Переносимость и модернизация 8.8. Интернационализация 8.9. Резюме Дополнительная литература Глава 9. Системы обозначений 9.1. Форматирование данных 9.2. Регулярные выражения 9.3. Программирование в командных оболочках 9.4. Интерпретаторы, компиляторы и виртуальные машины 9.5. Программы, пишущие программы 9.6. Генерирование кода с помощью макросов 9.7. Компиляция в реальном времени Дополнительная литература Эпилог Предметный указатель