Обсуждение:Парадигма программирования

Последнее сообщение: 1 год назад от 95.154.175.156 в теме «интенсиональное определение»
Пожалуйста, добавляйте новые темы снизу

Untitled править

Написали бы хоть, какие из парадигм (а их свыше десятка) получили наибольшее распространение.. Tpyvvikky 22:08, 3 июня 2011 (UTC)Ответить

Вопрос о лексиконе править

Не понял фразы "...имманентно присущий...". Может убрать слово "имманентный" (впервые его встретил, посмотрел значение, по смыслу не подходит (IMHO)). Проще надо писать, проще... Вики она и для "чайников" тоже --77K 13:36, 1 Окт 2004 (UTC)


О содержании править

На странице, посвященной аспектно-ориентированному программированию http://ru.wikipedia.org/wiki/%D0%90%D1%81%D0%BF%D0%B5%D0%BA%D1%82%D0%BD%D0%BE-%D0%BE%D1%80%D0%B8%D0%B5%D0%BD%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BF%D1%80%D0%BE%D0%B3%D1%80%D0%B0%D0%BC%D0%BC%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5 , со второго абзаца его начинают называть контекстно-ориентированным. тут указыны эти две парадигмы как разные. Не знаю, что правильно, кто знает исправьте где-то пожалуйста.

Программирования в ограничениях править

Весьма полезная с точки практики парадигма! Другие менее существенные приведены тоже можно добавить. Общее представлениие о некоторых можно получить в книге Профессиональное программирование. Системный подход.Одинцов И.О. 11.11.2007 ESS Женя

Структурирование и квалифицирование править

Для понимания концептуальных отличий, можно взять в основу квалификацию парадигм программирования, как ориентацию от машины к человеку (от программирования низкого уровня к "сверхвысокому": например логическому) из вышеупомянутой книги. Также их можно разделить на базовые, и сводящиеся к отдельным концепциям и идеям. 27.12.2007 ESS Женя

Неправильная классификация ООП править

ООП является частью императивного программирвания, почему его приводят как отдельную парадигму? 217.66.22.80 19:38, 24 мая 2008 (UTC)Ответить

Разумеется, это не так: в классическом ООП присваивание отсутствует начисто, а императивное программирование без присваивания -- это что-то уже совсем странное. DrCroco 18:27, 6 июня 2008 (UTC)Ответить
Присваивание в ООП присутствует.
Object obj = null;
if (expr)
{
obj = new Object();
}
//А теперь меняем состояние объекта obj
if (obj !=null)
obj.setValue("ha-ha");


ООп императивен. Он представляет в себе лишь некоторую обертку, призванную немного укротить императивщину, скрыть состояние за интерфейсами
В классическом ООП любая операция над объектом выполняется исключительно путём отправки объекту сообщения, причём извне объекта запрещено строить какие-либо предположения о том, каким конкретно изменением состояния объект отреагирует на то или иное сообщение. Из этого очевидно следует, что никакое сообщение не может быть названо "присваиванием", поскольку присваивание предполагает смену состояния объекта на тождественное состоянию некоторого другого объекта того же класса (типа), тогда как мы только что запретили любые предположения о состоянии объекта вне этого объекта. Кстати, мне вообще непонятно, какое отношение к присваиванию имеет приведённый вами пример.
Далее, пример, приведённый Вами, показывает действительный источник вашей точки зрения: наиболее популярны в нынешней индустрии языки программирования, в которых ООП реализовано как надстройка над императивным фундаментом. С таким же успехом можно было бы заявить, что ООП есть разновидность функционального программирования, изучив CLOS.
Факт же состоит в том, что ООП предполагает восприятие программы и среды её выполнения, существенно отличающееся от традиционного императивного, а именно, восприятие выполнения программы как обмена сообщениями между объектами. Тот факт, что семантические средства, вводимые в императивных языках для поддержки ООП, могут использоваться императивным же способом ("обертки", "сокрытие состояний за интерфейсами" a.k.a. инкапсуляция), то есть сохраняя мышление императивным -- никак не отменяет существования отдельной парадигмы ООП, подобно тому, как возможность заколачивать гвозди микроскопом не превращает микроскоп в молоток. DrCroco 09:03, 11 октября 2008 (UTC)Ответить

логическое программирование править

Логическое программирование является одной из важнейших парадигм программирования, разработанных в том числе в отечественных трудах, книгах и учебниках информатики. Исчезновение материалов и ссылок на отечественные разработки привносит не хороший оттенок на энциклопедиию по разделам информатики, тем более, что энциклопедии Д.А.Поспелова эти материалы и ссылки на первоисточники есть. Наука делается не только в Америке,но и в России.

ВАК,проф.,док.наук.,маг.права. 93.80.125.213 12:34, 1 апреля 2009 (UTC)Ответить

интенсиональное определение править

Это что? Наверное надо дать ссылку, а то как пишут: "Вики она и для "чайников" тоже". 95.154.175.156 19:29, 26 февраля 2023 (UTC)Ответить