Главная / Информатика / Презентация на тему "Особенности функционального программирования"

Презентация на тему "Особенности функционального программирования"

Особенности функционального программирования Выполнила: студентка группы МДМ-...
Определение понятия Функциональное программирование — раздел дискретной матем...
Из истории Традиционное программирование родилось в 40-х годах 20 века, когда...
Из истории В конце 50-х годов 20 века появились первые языки программирования...
Из истории Почти одновременно с первым "традиционным" языком программирования...
Особенности функционального программирования Основной особенностью функционал...
Особенности функционального программирования 1. Вызов функций является единст...
Особенности функционального программирования 3. Основными методами программир...
Особенности функционального программирования 6. В языках функционального прог...
Сильные стороны Повышение надёжности кода Удобство организации модульного тес...
Недостатки Недостатки функционального программирования вытекают из тех же сам...
1 из 11

Описание презентации по отдельным слайдам:

№ слайда 1 Особенности функционального программирования Выполнила: студентка группы МДМ-112
Описание слайда:

Особенности функционального программирования Выполнила: студентка группы МДМ-112 Чельманова А.В.

№ слайда 2 Определение понятия Функциональное программирование — раздел дискретной математи
Описание слайда:

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

№ слайда 3 Из истории Традиционное программирование родилось в 40-х годах 20 века, когда ве
Описание слайда:

Из истории Традиционное программирование родилось в 40-х годах 20 века, когда велась разработка первых электронно-вычислительных машин (ЭВМ). Его основой послужила концепция фон Неймана о хранимой программе автоматических вычислений по заданному алгоритму.

№ слайда 4 Из истории В конце 50-х годов 20 века появились первые языки программирования вы
Описание слайда:

Из истории В конце 50-х годов 20 века появились первые языки программирования высокого уровня, в них уже произошел существенный отход от принципов фон Неймана. Во-первых, программа раз и навсегда была отделена от данных. Во-вторых, во время исполнения программы ее текст оставался неизменным, а организация циклического повторения команд в ходе исполнения программы была возложена на систему 5 программирования, которая уже и должна была перевести (транслировать) текст программы в систему команд компьютера так, чтобы ее исполнение происходило в соответствии с написанным текстом.

№ слайда 5 Из истории Почти одновременно с первым "традиционным" языком программирования –
Описание слайда:

Из истории Почти одновременно с первым "традиционным" языком программирования – Фортраном появился еще один совершенно непохожий на него язык программирования – Лисп, для которого последовательность выполнения отдельных частей написанной программы была несущественной. Ветвь программирования, начатая созданием Лиспа, понемногу развивалась с начала 60-х годов 20 века и привела к появлению целой плеяды очень своеобразных языков программирования, которые удовлетворяли всем требованиям, необходимым для исполнения программ несколькими параллельными процессорами. Во-первых, алгоритмы, записанные с помощью этих языков, допускают сравнительно простой анализ и формальные преобразования программ, а во-вторых, отдельные части программ могут исполняться независимо друг от друга. Языки, обладающие такими замечательными свойствами – это и есть языки функционального программирования.

№ слайда 6 Особенности функционального программирования Основной особенностью функционально
Описание слайда:

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

№ слайда 7 Особенности функционального программирования 1. Вызов функций является единствен
Описание слайда:

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

№ слайда 8 Особенности функционального программирования 3. Основными методами программирова
Описание слайда:

Особенности функционального программирования 3. Основными методами программирования являются суперпозиция функций и рекурсия. 4. Функциональное программирование есть программирование, управляемое данными. В строго функциональном языке однажды созданные (введенные) данные не могут быть изменены! 5. В алгоритмических языках с именем переменной связана некоторая область памяти, соответствие строго сохраняется в течение всего времени выполнения программы. В функциональном программировании переменная обозначает только имя некоторой структуры, имена символов, переменных, списков, функций и других объектов не закреплены предварительно за какими-либо типами данных. В ФП одна и та же переменная в различные моменты времени может представлять различные объекты.

№ слайда 9 Особенности функционального программирования 6. В языках функционального програм
Описание слайда:

Особенности функционального программирования 6. В языках функционального программирования программа и обрабатываемые ею данные имеют единую списочную форму представления. 7. Функциональное программирование предполагает наличие функционалов – функций, аргументы и результаты которых могут быть функциями. Всякий язык функционального программирования предполагает наличие ядра, называемого строго функциональным языком.

№ слайда 10 Сильные стороны Повышение надёжности кода Удобство организации модульного тестир
Описание слайда:

Сильные стороны Повышение надёжности кода Удобство организации модульного тестирования Возможности оптимизации при компиляции Возможности параллелизма

№ слайда 11 Недостатки Недостатки функционального программирования вытекают из тех же самых
Описание слайда:

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

Презентация на тему "Особенности функционального программирования"
  • Информатика
Описание:

Основной особенностью функционального программирования, определяющей как преимущества, так и недостатки данной парадигмы, является то, что в ней реализуется модель вычислений без состояний. Если императивная программа на любом этапе исполнения имеет состояние, то есть совокупность значений всех переменных, и производит побочные эффекты, то чисто функциональная программа ни целиком, ни частями состояния не имеет и побочных эффектов не производит. То, что в императивных языках делается путём присваивания значений переменным, в функциональных достигается путём передачи выражений в параметры функций. Непосредственным следствием становится то, что чисто функциональная программа не может изменять уже имеющиеся у неё данные, а может лишь порождать новые путём копирования и/или расширения старых. Следствием того же является отказ от циклов в пользу рекурсии.

Автор Чельманова Анна Владимировна
Дата добавления 17.09.2016
Раздел Информатика
Подраздел Презентации
Просмотров 128
Номер материала MA-067772
Скачать свидетельство о публикации

Оставьте свой комментарий:

Введите символы, которые изображены на картинке:

Получить новый код
* Обязательные для заполнения.


Комментарии:

↓ Показать еще коментарии ↓