Автор24

Информация о работе

Подробнее о работе

Страница работы

Краткий обзор языка программирования с++

  • 17 страниц
  • 2018 год
  • 87 просмотров
  • 0 покупок
Автор работы

user1434945

200 ₽

Работа будет доступна в твоём личном кабинете после покупки

Гарантия сервиса Автор24

Уникальность не ниже 50%

Фрагменты работ

Краткий обзор с++
Парадигмы программирования:
Процедурное программирование
Модульное программирование
Абстракция данных
Пределы абстракции данных
Объектно-ориентированное программирование
Улучшенный С (поддержка процедурного и модульного программирования)
Поддержка абстракции данных
Поддержка объектно-ориентированного программирования
Пределы совершенства
Заключение

Процедурное программирование
Первоначальной (и, возможно, наиболее используемой) парадигмой программирования было:
Определите, какие процедуры вам нужны; используйте лучшие из известных вам алгоритмов!
Ударение делалось на обработку данных с помощью алгоритма, производящего нужные вычисления. Для поддержки этой парадигмы языки предоставляли механизм передачи параметров и получения результатов функций. Литература, отражающая такой подход, заполнена рассуждениями о способах передачи параметров, о том, как различать параметры разных типов, о различных видах функций (процедуры, подпрограммы, макрокоманды, ...) и т.д. Первым процедурным языком был Фортран, а Алгол60, Алгол68, Паскаль и С продолжили это направление.
С продолжили это направление.
Типичным примером хорошего стиля в таком понимании может служить функция извлечения квадратного корня.
...

Модульное программирование
Со временем при в проектировании программ акцент сместился с организации процедур на организацию структур данных. Помимо всего прочего это вызвано и ростом размеров программ. Модулем обычно называют совокупность связанных процедур и тех данных, которыми они управляют.
Парадигма программирования приобрела вид:
Определите, какие модули нужны; поделите программу так, чтобы данные были скрыты в этих модулях Эта парадигма известна также как "принцип сокрытия данных". Если в языке нет возможности сгруппировать связанные процедуры вместе с данными, то он плохо поддерживает модульный стиль программирования. Теперь метод написания "хороших" процедур применяется для отдельных процедур модуля.
Типичный пример модуля - определение стека. Здесь необходимо решить такие
задачи:
• Предоставить пользователю интерфейс для стека (например, функции push () и pop ()).
...

Абстракция данных
Модульное программирование предполагает группировку всех данных одного типа вокруг одного модуля, управляющего этим типом.
Если потребуются стеки двух разных видов, можно определить управляющий ими модуль с таким интерфейсом:

class stack_id { /* ... */ }; // stack_id только тип
// никакой информации о стеках
// здесь не содержится
stack_id create_stack ( int size ); // создать стек и возвратить
// его идентификатор
void push ( stack_id, char );
char pop ( stack_id );
destroy_stack ( stack_id ); // уничтожение стека

Конечно такое решение намного лучше, чем хаос, свойственный традиционным, неструктурированным решениям, но моделируемые таким способом типы совершенно очевидно отличаются от "настоящих", встроенных.
...

Пределы абстракции данных
Абстрактный тип данных определяется как некий "черный ящик". После своего определения он по сути никак не взаимодействует с программой. Его никак нельзя приспособить для новых целей, не меняя определения. В этом смысле это негибкое решение.
Объектно-ориентированное программирование
Объектно-ориентированное программирование наилучшим образом предоставляет технологию управления элементами любой сложности, создавая условия для многократного использования программных компонентов и объединения данных с методами их обработки.
Суть объектно-ориентированного программирования в том, что оно позволяет выражать эти различия и использует их. Язык, который имеет конструкции для выражения и использования подобных различий, поддерживает объектно-ориентированное программирование. Все другие языки не поддерживают его. Здесь основную роль играет механизм наследования, заимствованный из языка Симула.
...

Поддержка объектно-ориентированного программирования
Поддержку объектно-ориентированного программирования обеспечивают классы вместе с механизмом наследования, а также механизм вызова функций-членов в зависимости от истинного типа объекта (дело в том, что возможны случаи, когда этот тип неизвестен на стадии трансляции). Особенно важную роль играет механизм вызова функций-членов. Не менее важны средства, поддерживающие абстракцию данных (о них мы говорили ранее). Все доводы в пользу абстракции данных и базирующихся на ней методов, которые позволяют естественно и красиво работать с типами, действуют и для языка, поддерживающего объектно-ориентированное программирование. Успех обоих методов зависит от способа построения типов, от того, насколько они просты, гибки и эффективны. Метод объектно-ориентированного программирования позволяет определять более общие и гибкие пользовательские типы по сравнению с теми, которые получаются, если использовать только абстракцию данных.
...

Пределы совершенства
Язык С++ проектировался как "лучший С", поддерживающий абстракцию данных и объектно-ориентированное программирование. При этом он должен быть пригодным для большинства основных задач системного программирования.
Основная трудность для языка, который создавался в расчете на методы упрятывания данных, абстракции данных и объектно-ориентированного программирования, в том, что для того, чтобы быть языком общего назначения, он должен:
• идти на традиционных машинах;
• сосуществовать с традиционными операционными системами и языками;
• соперничать с традиционными языками программирования в эффективности выполнения программы;
• быть пригодным во всех основных областях приложения.
Это значит, что должны быть возможности для эффективных числовых операций (арифметика с плавающей точкой без особых накладных расходов, иначе пользователь предпочтет Фортран) и средства такого доступа к памяти, который позволит писать на этом языке драйверы устройств.
...

1. «Бьерн Страуструп. Язык программирования С++»
2. Джесс либерти, «Освой самостоятельно C++ за 21 день», изд. Дом «Вильямс», Москва - Санкт-Петербург – Киев, 2001
3. Н. Секунов, «Самоучитель Visual C++ 6», изд. «БХВ-Петербург», Санкт-Петербург, 2003

Форма заказа новой работы

Не подошла эта работа?

Закажи новую работу, сделанную по твоим требованиям

Согласен с условиями политики конфиденциальности и  пользовательского соглашения

Фрагменты работ

Краткий обзор с++
Парадигмы программирования:
Процедурное программирование
Модульное программирование
Абстракция данных
Пределы абстракции данных
Объектно-ориентированное программирование
Улучшенный С (поддержка процедурного и модульного программирования)
Поддержка абстракции данных
Поддержка объектно-ориентированного программирования
Пределы совершенства
Заключение

Процедурное программирование
Первоначальной (и, возможно, наиболее используемой) парадигмой программирования было:
Определите, какие процедуры вам нужны; используйте лучшие из известных вам алгоритмов!
Ударение делалось на обработку данных с помощью алгоритма, производящего нужные вычисления. Для поддержки этой парадигмы языки предоставляли механизм передачи параметров и получения результатов функций. Литература, отражающая такой подход, заполнена рассуждениями о способах передачи параметров, о том, как различать параметры разных типов, о различных видах функций (процедуры, подпрограммы, макрокоманды, ...) и т.д. Первым процедурным языком был Фортран, а Алгол60, Алгол68, Паскаль и С продолжили это направление.
С продолжили это направление.
Типичным примером хорошего стиля в таком понимании может служить функция извлечения квадратного корня.
...

Модульное программирование
Со временем при в проектировании программ акцент сместился с организации процедур на организацию структур данных. Помимо всего прочего это вызвано и ростом размеров программ. Модулем обычно называют совокупность связанных процедур и тех данных, которыми они управляют.
Парадигма программирования приобрела вид:
Определите, какие модули нужны; поделите программу так, чтобы данные были скрыты в этих модулях Эта парадигма известна также как "принцип сокрытия данных". Если в языке нет возможности сгруппировать связанные процедуры вместе с данными, то он плохо поддерживает модульный стиль программирования. Теперь метод написания "хороших" процедур применяется для отдельных процедур модуля.
Типичный пример модуля - определение стека. Здесь необходимо решить такие
задачи:
• Предоставить пользователю интерфейс для стека (например, функции push () и pop ()).
...

Абстракция данных
Модульное программирование предполагает группировку всех данных одного типа вокруг одного модуля, управляющего этим типом.
Если потребуются стеки двух разных видов, можно определить управляющий ими модуль с таким интерфейсом:

class stack_id { /* ... */ }; // stack_id только тип
// никакой информации о стеках
// здесь не содержится
stack_id create_stack ( int size ); // создать стек и возвратить
// его идентификатор
void push ( stack_id, char );
char pop ( stack_id );
destroy_stack ( stack_id ); // уничтожение стека

Конечно такое решение намного лучше, чем хаос, свойственный традиционным, неструктурированным решениям, но моделируемые таким способом типы совершенно очевидно отличаются от "настоящих", встроенных.
...

Пределы абстракции данных
Абстрактный тип данных определяется как некий "черный ящик". После своего определения он по сути никак не взаимодействует с программой. Его никак нельзя приспособить для новых целей, не меняя определения. В этом смысле это негибкое решение.
Объектно-ориентированное программирование
Объектно-ориентированное программирование наилучшим образом предоставляет технологию управления элементами любой сложности, создавая условия для многократного использования программных компонентов и объединения данных с методами их обработки.
Суть объектно-ориентированного программирования в том, что оно позволяет выражать эти различия и использует их. Язык, который имеет конструкции для выражения и использования подобных различий, поддерживает объектно-ориентированное программирование. Все другие языки не поддерживают его. Здесь основную роль играет механизм наследования, заимствованный из языка Симула.
...

Поддержка объектно-ориентированного программирования
Поддержку объектно-ориентированного программирования обеспечивают классы вместе с механизмом наследования, а также механизм вызова функций-членов в зависимости от истинного типа объекта (дело в том, что возможны случаи, когда этот тип неизвестен на стадии трансляции). Особенно важную роль играет механизм вызова функций-членов. Не менее важны средства, поддерживающие абстракцию данных (о них мы говорили ранее). Все доводы в пользу абстракции данных и базирующихся на ней методов, которые позволяют естественно и красиво работать с типами, действуют и для языка, поддерживающего объектно-ориентированное программирование. Успех обоих методов зависит от способа построения типов, от того, насколько они просты, гибки и эффективны. Метод объектно-ориентированного программирования позволяет определять более общие и гибкие пользовательские типы по сравнению с теми, которые получаются, если использовать только абстракцию данных.
...

Пределы совершенства
Язык С++ проектировался как "лучший С", поддерживающий абстракцию данных и объектно-ориентированное программирование. При этом он должен быть пригодным для большинства основных задач системного программирования.
Основная трудность для языка, который создавался в расчете на методы упрятывания данных, абстракции данных и объектно-ориентированного программирования, в том, что для того, чтобы быть языком общего назначения, он должен:
• идти на традиционных машинах;
• сосуществовать с традиционными операционными системами и языками;
• соперничать с традиционными языками программирования в эффективности выполнения программы;
• быть пригодным во всех основных областях приложения.
Это значит, что должны быть возможности для эффективных числовых операций (арифметика с плавающей точкой без особых накладных расходов, иначе пользователь предпочтет Фортран) и средства такого доступа к памяти, который позволит писать на этом языке драйверы устройств.
...

1. «Бьерн Страуструп. Язык программирования С++»
2. Джесс либерти, «Освой самостоятельно C++ за 21 день», изд. Дом «Вильямс», Москва - Санкт-Петербург – Киев, 2001
3. Н. Секунов, «Самоучитель Visual C++ 6», изд. «БХВ-Петербург», Санкт-Петербург, 2003

Купить эту работу

Краткий обзор языка программирования с++

200 ₽

или заказать новую

Лучшие эксперты сервиса ждут твоего задания

от 200 ₽

Гарантии Автор24

Изображения работ

Страница работы
Страница работы
Страница работы

Понравилась эта работа?

или

11 июля 2018 заказчик разместил работу

Выбранный эксперт:

Автор работы
user1434945
4.5
Купить эту работу vs Заказать новую
0 раз Куплено Выполняется индивидуально
Не менее 40%
Исполнитель, загружая работу в «Банк готовых работ» подтверждает, что уровень оригинальности работы составляет не менее 40%
Уникальность Выполняется индивидуально
Сразу в личном кабинете Доступность Срок 1—4 дня
200 ₽ Цена от 200 ₽

5 Похожих работ

Реферат

реферат ПРОЦЕССОРЫ С CISC - АРХИТЕКТУРОЙ

Уникальность: от 40%
Доступность: сразу
500 ₽
Реферат

Роль государства в создании информационного общества

Уникальность: от 40%
Доступность: сразу
200 ₽
Реферат

КОД МОРЗЕ

Уникальность: от 40%
Доступность: сразу
300 ₽
Реферат

Война ПК и книг

Уникальность: от 40%
Доступность: сразу
300 ₽
Реферат

использование системы moodle в образовательном процессе

Уникальность: от 40%
Доступность: сразу
100 ₽

Отзывы студентов

Отзыв Марина [email protected] об авторе user1434945 2015-03-14
Реферат

+

Общая оценка 5
Отзыв ttt2121 об авторе user1434945 2015-03-25
Реферат

Доволен работой автора

Общая оценка 5
Отзыв monte к----ов0 об авторе user1434945 2015-02-27
Реферат

спасибо автору .работа выполнена прекрасно с соблюдением всех правил .

Общая оценка 5
Отзыв Lika4951 об авторе user1434945 2015-12-29
Реферат

Лучший автор сайта!!

Общая оценка 5

другие учебные работы по предмету

Готовая работа

Роль нефти в современном мире - доклад

Уникальность: от 40%
Доступность: сразу
300 ₽
Готовая работа

Web-сайты….

Уникальность: от 40%
Доступность: сразу
280 ₽
Готовая работа

Методология и средства разработки информационно-аналитических систем

Уникальность: от 40%
Доступность: сразу
100 ₽
Готовая работа

Роль экономиста на всех стадиях цикла ИСЭ, как заказчика и пользователя.

Уникальность: от 40%
Доступность: сразу
280 ₽
Готовая работа

Векторная архитектура компьютеров

Уникальность: от 40%
Доступность: сразу
280 ₽
Готовая работа

Преобразования информативного акустического сигнала при воздействии его на инженерно-технические коммуникации защищаемых помещений

Уникальность: от 40%
Доступность: сразу
600 ₽
Готовая работа

Принципы устройства компьютеров: «Гарвардская архитектура»

Уникальность: от 40%
Доступность: сразу
210 ₽
Готовая работа

Развитие электронной коммерции в металлургии.

Уникальность: от 40%
Доступность: сразу
280 ₽
Готовая работа

Рынок труда в электронной промышленности.

Уникальность: от 40%
Доступность: сразу
280 ₽
Готовая работа

Уроавни сетевой безопасности(7 уровней)

Уникальность: от 40%
Доступность: сразу
280 ₽
Готовая работа

Производительность компьютера, зависимость от типа задач, измерение производительности

Уникальность: от 40%
Доступность: сразу
250 ₽
Готовая работа

Применение дистанционных технологий при обучении информатике и ИКТ в старших классах.

Уникальность: от 40%
Доступность: сразу
30 ₽