Алгоритмизация и программирование. Языки программирования высокого уровня. Технологии программирования icon

Алгоритмизация и программирование. Языки программирования высокого уровня. Технологии программирования


Смотрите также:
Рабочая программа по курсу “Программирование на языках высокого уровня” Факультет экономический...
Существуют различные классификации языков программирования...
Введение Предмет "Программирование"...
Рабочая программа по дисциплине Основы алгоритмизации и программирования (язык С/C++) Для...
Лекция 3
Программа обучения студентов ( Syllabus ) по дисциплине Языки и технологии программирования...
Рабочей программы учебной дисциплины языки программирования Уровень основной образовательной...
Конспект лекций по курсу язык ассемблера ibm...
Календарный план учебных занятий по дисциплине «Языки и технология программирования» Неделя...
Выявление и анализ требований. Требования к программному обеспечению...
Учебная программа по дисциплине языки программирования низкого уровня л. В. Шарапова...
Учебно-методический комплекс по языки программирования и методы трансляции наименование...



Загрузка...
скачать
Часть 3.


Алгоритмизация и программирование.

Языки программирования высокого уровня.

Технологии программирования.


Определение:

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

Замечание:

Некоторые действия алгоритма должны быть выполнены последовательно, некоторые могут быть и независимыми и выполняться одновременно (параллельно).


Комментарий.

Слово «алгоритм» образовано от имени персидского учёного аль-Хорезми (al-Khwarazmi).


Ранее часто писали «алгорифм», сейчас такое написание используется редко.


Часто в качестве исполнителя выступает некоторый механизм (компьютер, токарный станок, швейная машина), но понятие алгоритма необязательно относится к компьютерным программам, так, например, чётко описанный рецепт приготовления блюда также является алгоритмом, в таком случае исполнителем является человек.


Свойства алгоритмов, требования к алгоритмам:

  • Дискретность - процесс решения задачи является последовательным выполнением простых шагов за конечный отрезок времени.

  • Детерминированность - в каждый момент времени следующий шаг однозначно определяется состоянием системы. Т.е. алгоритм выдаёт один и тот же результат для одних и тех же исходных данных.

  • Понятность - алгоритм содержит команды, понятные исполнителю (которые входят в его систему команд).

  • Конечность – для корректных исходных данных алгоритм должен успешно завершать работу за конечное число шагов.

  • Массовость - алгоритм должен быть применим к разным наборам исходных данных.

  • Результативность – работа алгоритма должна завершаться определёнными результатами.


Определение:

Алгоритмизация – процесс построения алгоритма.


Определение:

Программирование - процесс создания программного обеспечения с помощью языков программирования.


Комментарий.

Программирование сочетает в себе элементы искусства, фундаментальных наук (это прежде всего информатика и математика), инженерии, спорта и ремесла.


Замечание:

Программирование следует отличать от ремесла кодирования программы


Программирование включает в себя:

  • Анализ поставленной задачи.

  • Проектирование/разработку комплекса алгоритмов.

  • Кодирование – реализация алгоритмов - написание исходного текста программы на языке программирования (исходников).

  • Компиляцию - преобразование исходников в исполнимый код с помощью компилятора.

  • Тестирование и отладку - выявление и устранение ошибок в программах.

  • Испытания и сдачу программ.

  • Сопровождение программ.


Определение:

Язык программирования - система, предназначенная для записи компьютерных программ. Язык программирования определяет набор правил, задающих внешний вид программы и действия, которые выполнит исполнитель (компьютер) под ее управлением.


Комментарий.

На сегодняшний день известно более 8500 языков программирования.


Языки программирования делятся на:

  • компилируемые

  • интерпретируемые



  • низкоуровневые

  • высокоуровневые


Определение:

Компилятор это специальная программа, которая переводит исходный текст программы с языка программирования высокого уровня в двоичные коды инструкций процессора, которые записываются в отдельный исполнимый файл (например exe-файл). Этот файл может быть запущен как отдельная программа.


Определение:

Интерпретатор выполняет исходный текст программы без предварительной компиляции. При этом программа остаётся на исходном языке и не может быть запущена без интерпретатора.


Преимущества:

Компилируемые программы работают значительно быстрей интерпретируемых.

Интерпретируемые программы обладают большей гибкостью в процессе разработки и допускают запуск на разных компьютерных платформах и операционных системах.


Определение:

Язык программирования низкого уровня – это язык, близкий к программированию в машинных кодах используемого процессора.


Общеизвестный пример языка низкого уровня - язык ассемблера.


Определение:

Высокоуровневый язык программирования - язык программирования, разработанный для быстроты и удобства использования программистом.


Замечание:

Основная черта высокоуровневых языков - это абстракция, то есть введение конструкций, кратко описывающих такие структуры данных и операции над ними, описания которых на низкоуровневом языке программирования очень длинны и сложны для понимания и реализации.


Примеры языков высокого уровня:

  • C, C++, Visual Basic, Java, PHP, Delphi, Pascal, Fortran.


Язык программирования строится в соответствии с парадигмой программирования.


Определение:

Парадигма программирования - это совокупность идей и понятий, определяющих стиль написания программ. Парадигма определяет то, в каких терминах программист описывает логику программы.


Основные модели (парадигмы) программирования:

  • Императивное программирование

  • Структурное программирование

  • Функциональное программирование

  • Логическое программирование

  • Объектно-ориентированное программирование


Императивное (процедурное) программирование - это парадигма программирования, которая описывает процесс вычисления в виде последовательности инструкций, которые должен выполнить компьютер.


Примеры процедурных языков программирования: Fortran, Basic, Pascal, C.


^ Структурное программирование - методология разработки ПО, в основе которой лежит представление программы в виде иерархической структуры блоков.

Каждый блок должен представлять собой одну из трех структур: последовательное выполнение, ветвление и повторение.


^ Функциональное программирование - раздел дискретной математики, в которой процесс вычисления трактуется как вычисление значений функций в математическом понимании последних (в отличие от функций как подпрограмм в процедурном программировании).


Примеры функциональных языков программирования: LISP, Haskell, ML.


^ Логическое программирование – парадигма, основанная на автоматическом доказательстве теорем, а также раздел дискретной математики, изучающий принципы логического вывода информации на основе заданных фактов и правил вывода. Логическое программирование основано на теории и аппарате математической логики с использованием математических принципов резолюций.


Самым известным языком логического программирования является Prolog.


^ Объектно-ориентированное программирование (ООП) - парадигма программирования, в которой основными концепциями являются понятия объектов и классов.


Определение:

Класс - это описание устройства объектов (как бы теоретическая модель).

Определение:

Объект - это экземпляр класса (как бы физическая реализация).


Класс можно сравнить с чертежом, согласно которому создаются объекты. Обычно классы разрабатывают таким образом, чтобы их объекты соответствовали объектам предметной области.


Замечание:

ООП есть по сути императивное программирование, дополненное принципом инкапсуляции данных и методов в объект и наследованием.

Внимание!

Понятия инкапсуляции и наследования – изучить самостоятельно!!!


Определение:

Технология программирования - дисциплина, изучающая технологические процессы программирования и порядок их прохождения.


Основные технологии программирования:

  • восходящее программирование

  • нисходящее программирование


Определение:

Восходящее программирование (программирование «снизу вверх») - методика разработки программ, при которой крупные блоки собираются из ранее созданных мелких блоков.

Восходящее программирование начинается с разработки ключевых процедур и подпрограмм, которые затем постоянно модифицируются.


Определение:

Нисходящее программирование (программирование «сверху вниз») - методика разработки программ, при которой разработка начинается с определения целей решения проблемы, после чего идет последовательная детализация, заканчивающаяся детальной программой.

При нисходящем программировании низкоуровневые блоки первоначально реализуются в виде «заглушек», которые с течением времени обретают свою функциональность.








оставить комментарий
Дата13.10.2011
Размер57.1 Kb.
ТипДокументы, Образовательные материалы
Добавить документ в свой блог или на сайт

средне
  1
Ваша оценка:
Разместите кнопку на своём сайте или блоге:
rudocs.exdat.com

Загрузка...
База данных защищена авторским правом ©exdat 2000-2017
При копировании материала укажите ссылку
обратиться к администрации
Анализ
Справочники
Сценарии
Рефераты
Курсовые работы
Авторефераты
Программы
Методички
Документы
Понятия

опубликовать
Загрузка...
Документы

Рейтинг@Mail.ru
наверх