Практика программирования, Керниган Б.У., Пайк Р., 2015.
Вашему вниманию предлагается перевод на русский язык исправленного и дополненного издания (уже восьмого по счету) популярной книги, вышедшего из печати в январе 2004 года. Верификацию кода в русском издании выполнили сами авторы книги — Брайан Керниган и Роб Пайк, что лишний раз свидетельствует об их огромной ответственности перед читателями.
В книге рассматриваются принципы практического профессионального программирования, которые, выходя за рамки простого написания кода, включают в себя проектирование, правильный выбор алгоритмов и структур данных, отладку и тестирование, оптимизацию быстродействия и переносимости, автоматизацию рабочего процесса. Изложение проиллюстрировано примерами из сложных, практически важных систем.
Книга предназначена для повышения квалификации программистов. Может быть полезна студентам и преподавателям компьютерных специальностей.
Единообразие стиля и устойчивые конструкции.
Соблюдение единообразного стиля позволяет писать программы более высокого качества. Если форматирование кода непредсказуемо меняется от одного блока к другому, или перебор массива в цикле выполняется то в одном, то в другом порядке, или строки копируются один раз функцией strcpy, а другой раз — в цикле for, то все эти вариации очень сильно мешают правильному восприятию программы и пониманию того, что же она действительно делает. А вот если одна и та же вычислительная операция выполняется каждый раз одинаково, то какие-либо отличия появляются только в том случае, если изменяется и сам характер выполняемых вычислений, что позволяет легко привлечь внимание программиста.
Используйте единую систему отступов и расстановки фигурных скобок. Отступы призваны наглядно демонстрировать структуру программы. Какой же стиль абзацного отступа наилучший? Следует ли ставить открывающую фигурную скобку в той же строке, что и оператор if, или в следующей? Программисты постоянно спорят о форматировании исходного кода, но сам но себе стиль не так важен, как его строгое и последовательное соблюдение. Выберите один стиль (лучше всего— наш), придерживайтесь его во всех своих программах, и хватит тратить время на ненужные споры.
Оглавление.
Предисловие.
Глава 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. Компиляция в реальном времени.
Дополнительная литература.
Эпилог.
Предметный указатель.
Бесплатно скачать электронную книгу в удобном формате, смотреть и читать:
Скачать книгу Практика программирования, Керниган Б.У., Пайк Р., 2015 - fileskachat.com, быстрое и бесплатное скачивание.
Скачать pdf
Ниже можно купить эту книгу по лучшей цене со скидкой с доставкой по всей России.Купить эту книгу
Скачать - pdf - Яндекс.Диск.
Дата публикации:
Теги: учебник по программированию :: программирование :: Керниган :: Пайк
Смотрите также учебники, книги и учебные материалы:
Следующие учебники и книги:
- Численные методы, Использование MATLAB, Мэтьюз Д.Г., Финк К.Д., 2001
- Создание Windows-приложений в среде Delphi, Федотова С.В., 2010
- Основы программирования па Visual Basic и VBA в Excel 2007, Гарбер Г.З., 2008
- Технологии программирования, Программирование графических интерфейсов, Microsoft Visual Studio и Borland Delphi, Ноткин А.М., 2013
Предыдущие статьи:
- Практикум прикладного программирования на MFC и С++ в среде VS .NET, Снетков В.М., 2016
- Моделирование систем, практикум, учебное пособие для вузов, Советов Б.Я., 2003
- Стильный Java, код, который работает всегда и везде, Фаэлла М., 2021
- Web API Design, сrafting Interfaces that Developers Love, Mulloy B., 2012