Современные информационные технологии / 2. Вычислительная техника и
программирование
Краюшкина А.Ю., Надобенко Е.А.
Карагандинский
государственный технический университет, Казахстан
Философия программирования, заложенная в языке С++
Поскольку
язык C++ вносит в язык С новую философию программирования, следует сначала рассмотреть более
старую философию языка С. Вообще, языки программирования имеют дело с двумя
основными понятиями: данными и алгоритмами. Данные представляют собой информацию, которую программа
обрабатывает. А
алгоритмы — это методы, которые программа использует (для обработки данных). Язык С, как и большинство основных
языков программирования нашего времени, является процедурным. Это означает, что основное внимание в нем
уделяется алгоритмам. Теоретически процедурное программирование заключается в
том, что сначала определяется последовательность действий, которая должна быть
выполнена компьютером, а затем эти действия реализуются с помощью языка программирования. Программа содержит
набор процедур, которые
компьютер должен выполнить, чтобы получить требуемый результат. Это во многом
похоже на то, как кулинарный
рецепт предписывает последовательность действий (процедур), следуя которым повар печет пирог.
По
мере того как программы становились все больше, первые процедурные языки, такие как FORTRAN и BASIC, столкнулись с проблемами
организационного плана.
Например, в программах часто используются инструкции ветвления, которые направляют ход выполнения
программы в сторону того или иного набора операторов в зависимости от результатов некоторой
проверки. У многих
старых программ такой запутанный ход выполнения (их называют "программы-спагетти"),
что понять их,
читая, по существу, невозможно, а модификация такой программы может привести к настоящей катастрофе. В ответ на это ученые
разработали более упорядоченный стиль программирования, который называется структурное
программирование. Язык
С включает ряд элементов, облегчающих применение структурного программирования. Например,
структурное программирование ограничивает возможности ветвления (выбора следующего выполняемого оператора) небольшим набором хорошо функционирующих конструкций. Эти конструкции (циклы for, while, do while и оператор if else) входят в словарь языка С.
Еще
одним из новых принципов программирования было проектирование программ сверху вниз.
Идея
заключается в разбиении большой программы на меньшие, легче программируемые задачи. Если одна из этих задач по-прежнему
остается слишком обширной, разделите ее также на более мелкие задачи. Продолжайте этот процесс до тех пор, пока
программа не будет разделена на маленькие, легко программируемые модули.
Важной вехой в развитии программирования явилось создание и широкое
распространение языка С++. Этот язык, сохранив средства ставшего общепризнанным
стандартом для написания системных и прикладных программ языка С (процедурно-ориентированный
язык), ввел в практику программирования возможности нового технологического подхода
к разработке программного обеспечения, получившего название «объектно-ориентированное
программирование».
Язык программирования C++ - это
C, расширенный введением классов,
inline-функций, перегруженных операций, перегруженных имен функций,
константных типов, ссылок, операций управления свободной памятью, проверки
параметров функций.
Внедрение в практику написания программ объектно-ориентированной
парадигмы дает развитие новых областей информатики, значительное повышение
уровня технологичности создаваемых программных средств, сокращение затрат на
разработку и сопровождение программ, их повторное использование, вовлечение в
процесс расширения интеллектуальных возможностей ЭВМ.
Объектный подход информационного моделирования предметных областей все
более успешно применяется в качестве основы для структуризации их информационных
отражений и, в частности, баз знаний.
С++ является языком
программирования общего назначения. Именно этот язык хорошо известен своей
эффективностью, экономичностью, и переносимостью.
Указанные преимущества С++ обеспечивают хорошее качество разработки
почти любого вида программного продукта. Использование С++ в качестве
инструментального языка позволяет получать быстрые и компактные программы. Во
многих случаях программы, написанные на С++, сравнимы по скорости с
программами, написанными на языке ассемблера.
Перечислим некоторые существенные особенности языка С++:
- С++ обеспечивает полный набор операторов
структурного программ-мирования;
- Многие операции С++ соответствуют машинным командам
и поэтому допускают прямую трансляцию в машинный код;
- С++ поддерживает
указатели на переменные и функции;
- С++ поддерживает
арифметику указателей, и тем самым позволяет осуществлять непосредственный
доступ и манипуляции с адресами памяти.
Литература:
1. Бочков С.О., Субботин Д.М. «Язык программирования С
для персонального компьютера», М.:
Радио и связь 2002. - 448 с., в
электронном виде;
2. Джехани Н. «Программирование на языке С++», Пер. с
англ. – М.: Радио и связь;
3.
Керниган Б., Ритчи Д., Фьюэр А. «Язык программирования С. Задачи по языку СИ» Пер. с англ. – М.: Финансы и статистика., в
электронном виде;