|
|
|
OFF: Что такое линейное программировние, что такое процедурное, функциональное? | ☑ | ||
|---|---|---|---|---|
|
0
Матрейя
27.01.06
✎
11:59
|
Также расскажите плиз чайнику что такое ООП и приведите примеры? Ссылок не надо, я их читал, не понимаю. Своими словами расскажите плиз.
|
|||
|
1
Андрюха
27.01.06
✎
12:00
|
Это когда методы и свойства объектов инкапсулированы в них самих.
|
|||
|
3
SnarkHunter
27.01.06
✎
12:00
|
Один уже повелся...
|
|||
|
4
ДенисЧ
27.01.06
✎
12:01
|
Опять :-)
линейное программирование - это не программирование, это математика :-) процедурное - когда в коде только процедуры. объектное - когда только объекты функциональное - это когда нет переменных, толбко функции. Где-то так :-) |
|||
|
5
Андрюха
27.01.06
✎
12:02
|
Так это тебя мы все видели в сапогах у ёлочки?
|
|||
|
6
Guk
27.01.06
✎
12:03
|
Неужели никто не знает?...
|
|||
|
7
NS
27.01.06
✎
12:03
|
Процедурное программирование - это вырожденный случай ООП.
Линейное программирование - это НЕПРОЦЕДУРНОЕ программирование - примеры - стандарт Бейсика (чистый случай - программы без использования GO SUB). |
|||
|
8
France
27.01.06
✎
12:03
|
а что такое объекты?
|
|||
|
9
колодина
27.01.06
✎
12:03
|
автор закончил только церковно-приходскую школу?
|
|||
|
10
Матрейя
27.01.06
✎
12:04
|
(1) Андрюха, что такое инкапсулирование, методы и свойства? Братское сердце, объясни доступными словами ламеру.
|
|||
|
11
GrayT
27.01.06
✎
12:04
|
Теб ещ потом наследование и полиморфизм рассказывать - ну его нах.
|
|||
|
12
у лю 427
27.01.06
✎
12:05
|
Здравствуй, Света..........
|
|||
|
13
ДенисЧ
27.01.06
✎
12:05
|
(7) насчёт линейного программирования
http://slovari.yandex.ru/art.xml?art=bse/00042/66600.htm& encpage=bse&mrkp=http%3A//hghltd.yandex.com/yandbtm%3Furl% 3Dhttp%253A//encycl.yandex.ru/texts/bse/00042/66600.htm%26text% 3D%25EB%25E8%25ED%25E5%25E9%25ED%25EE%25E5%2B%25EF%25F0%25EE% 25E3%25F0%25E0%25EC%25EC%25E8%25F0%25EE%25E2%25E0%25ED%25E8% 25E5%26reqtext%3D%2528%25EB%25E8%25ED%25E5%25E9%25ED%25EE%25E5% 253A%253A56329%2B%2526%2B%25EF%25F0%25EE%25E3%25F0%25E0%25EC% 25EC%25E8%25F0%25EE%25E2%25E0%25ED%25E8%25E5%253A%253A9501%2529// 6%26%26isu%3D2 |
|||
|
14
Демогоргон
27.01.06
✎
12:06
|
(10) я тебе счас объясню...
|
|||
|
15
Андрюха
27.01.06
✎
12:06
|
Свойства - это данные, а методы - это способы их взаимодействия. Это понятно?
|
|||
|
16
Бешенная Нога
27.01.06
✎
12:06
|
а зачем это автору? меньше знаешь крепче спишь
|
|||
|
17
NS
27.01.06
✎
12:09
|
(13) В русском, да и в других я языках одно и то же слово и словосочетание может обозначать разные понятия. Что такое Линейное программирование в Математике я есно отлично знаю.
|
|||
|
18
ДенисЧ
27.01.06
✎
12:10
|
(17) Просто я в первый раз (за свою недолгую :-) жизнь услышал термин "линейное программирование" в таком аксепте. Не применяют его обычно...
|
|||
|
19
NS
27.01.06
✎
12:11
|
(18) Применяют. И процедурное программирование как раз пришло на смену линейному.
|
|||
|
20
GrayT
27.01.06
✎
12:11
|
(18)Ты суслика видишь? А он есть!
|
|||
|
21
ДенисЧ
27.01.06
✎
12:12
|
(19) Уу... Ссылку дашь?
(20) неа. Если я его не вижу, значит, его нет... |
|||
|
22
romix
модератор
27.01.06
✎
12:13
|
ООП - это когда фуннкции и переменные "упакованы" в объект, и доступны "через точку".
|
|||
|
23
Матрейя
27.01.06
✎
12:14
|
Я так вижу что все чайники как я. У всех каша в голове. Никто не может объяснить доходчиво, лаконично, с простыми примерами
|
|||
|
24
NS
27.01.06
✎
12:14
|
||||
|
25
Демогоргон
27.01.06
✎
12:14
|
(10) Начнем с понятия объекта ООП.
Объект ООП - это термин, предпологающий под собой понятие объекта, который является симбиозом функции и данных. В данном случае функция - это метод, свойста - это данные объекта. Т.е. создадим например Объект справочник, т.е. массив объектов типа справочник и определим ему методы ПометитьВсеЭлементыНаУдаления и НайтиПоКОду и данные - Имя и код Если мы сделаем типа Справочник.ПометитьВсеЭлементыНаУдаления(); - удаляет все элементы в массиве Справочник.НайтиПоКОду("0001"); - позиционируем на КОНКРЕТНЫЙ элемент в массиве Справочник.Имя = "УГу"; присовем этому конкретному элементу имя (если он спозиционирован. Т.е. через объект мы можем обращаться как к всему массиву значений, так и к одному конкретному ... |
|||
|
26
Матрейя
27.01.06
✎
12:15
|
25. Что такое объек для начала?
|
|||
|
27
Олег_1978
27.01.06
✎
12:15
|
(0) Это ты так статью писать решил???
|
|||
|
28
GrayT
27.01.06
✎
12:15
|
"упакованы" = инкапсулированы - всегда считал что это только один из трех основопологающих принципов ООП
|
|||
|
29
Олег_1978
27.01.06
✎
12:15
|
||||
|
30
aka MIK
27.01.06
✎
12:15
|
Шото мне одно место подсказывает шо линейное программировани это когда надо раздать какие-то ресурсы
|
|||
|
31
Kstn12
27.01.06
✎
12:16
|
ООП это моделирование сущностей мира сего (и того тож) и их поведения.
А вообще нахрена ООП чайнику? |
|||
|
32
ДенисЧ
27.01.06
✎
12:16
|
шо то мне подсказывает, что нужно говорить не про методы, а про сообщения...
|
|||
|
33
Андрюха
27.01.06
✎
12:16
|
(26) Объект - это копия класса
|
|||
|
34
Kstn12
27.01.06
✎
12:17
|
(33) Не копия а Экземпляр.
|
|||
|
35
ДенисЧ
27.01.06
✎
12:17
|
(33) садись, два.
|
|||
|
36
Андрюха
27.01.06
✎
12:18
|
(34) Правильно, экземпляр (но по сути - копия)
|
|||
|
37
Kstn12
27.01.06
✎
12:18
|
(25) Объяснение риального структурного алгоритма.
|
|||
|
38
aka MIK
27.01.06
✎
12:19
|
Главный класс в мире - бабло, все остальное - его наследники, все инкапсулировано в нем, он наследуется, ибо он - основа основа, он полиморфен - ибо все можно за него купить
--- Все, статья готова. С тебя $20 |
|||
|
39
aka MIK
27.01.06
✎
12:21
|
Главный класс в мире - бабло, все инкапсулировано в нем, он наследуется, ибо он - основа основ, он полиморфен - ибо все можно за него купить!
--- Откорректировано корректором. С тебя $25 ($5 - корректору) |
|||
|
40
NS
27.01.06
✎
12:21
|
http://en.wikipedia.org/wiki/Unstructured_programming
А переводить на русский можно как угодно. Обычно переводят, как линейное (не процедурное, не структурное) программирование |
|||
|
41
Матрейя
27.01.06
✎
12:23
|
Может кто-нибудь по порядку, серьезно и доходчиво объясниь? От ваших ответов только каши в голове становится больше.
|
|||
|
42
Муравей
27.01.06
✎
12:23
|
"ООП для чайников" - Была такая книжка
мне в свое время помогла |
|||
|
43
NS
27.01.06
✎
12:24
|
(41) Так всё в википедии есть.
http://en.wikipedia.org/wiki/Object-oriented_programming |
|||
|
44
Матрейя
27.01.06
✎
12:24
|
Или призайтесь сами себе, что чайники или не пишите всякую хню. Просьба отвечать по существу темы, лаконично и доступно.
|
|||
|
45
Kstn12
27.01.06
✎
12:25
|
(42)Судя по Сабжу не очень..
ООП - это когда программа состоит из объектов которые между собой взаимодействуют. Тоже "чайное" объяснение |
|||
|
46
Демогоргон
27.01.06
✎
12:25
|
(26) Объект - это объект...
В языке программирования - строчка |
|||
|
47
Матрейя
27.01.06
✎
12:25
|
43. Ссылок и я могу набросать. Ты сам-то хоть понимаешь о чем речь? Если да, то объясни своими словами.
|
|||
|
48
Демогоргон
27.01.06
✎
12:25
|
+ (46) Оформленная по параметром.
(47) Называть всех чайниками проще простого. А аттестацию нужно в реале проводить ... |
|||
|
49
NS
27.01.06
✎
12:25
|
(44) Неужели можно сказать лаконичней чем в википедии?
ООП - это в общем случае, когда есть обеъкты, а у них в свою очередь - методы и свойства. |
|||
|
50
колодина
27.01.06
✎
12:26
|
(44) вот теперь я поняла смысл ветки - в том, чтобы все признались, что они - чайники....
|
|||
|
51
Муравей
27.01.06
✎
12:26
|
(47) Мальчик не хами
Если ты не понял почему 2+2 из книжек то тебе не поможет никто |
|||
|
52
Kstn12
27.01.06
✎
12:27
|
Вместо конкретного алгоритма ты описываешь кучу объектов, потом пинаешь один под зад и они начинают сношаться друг с другом. Так и выполняется ООП прога.
|
|||
|
53
NS
27.01.06
✎
12:27
|
(+49) Вырожденный случай ООП - это процедурное программирование. Когда методы объектов мы подменяем процедурами над объектами. При этом объектом является передаваемый в процедуру (функцию) список параметров (возможно не все параметры входят в объект)
|
|||
|
54
Joint
27.01.06
✎
12:28
|
чё забыли что ли все? надо человеку объяснсть через собаку и ее хвост, и как хвост машет собакой
|
|||
|
55
France
27.01.06
✎
12:28
|
хню несем, господа..
|
|||
|
56
Андрюха
27.01.06
✎
12:28
|
Тут дело прежде всего - в парадигме программирования. Программист сам определяет какие типы данныъ использовать и какие операции над ними производить. По сути - то же процедурное программирование, только застрахованное от ошибок.
|
|||
|
57
Kstn12
27.01.06
✎
12:29
|
(54) Ну-ка ну-ка... Я не слышал..
|
|||
|
58
ДенисЧ
27.01.06
✎
12:29
|
(49) садись, три. ОБъекты не "имеют свойства и методы", они отвечают на посылаемые им сообщения.
|
|||
|
59
NS
27.01.06
✎
12:29
|
(56) Каким это образом ООП застраховано от ошибок????
|
|||
|
60
Демогоргон
27.01.06
✎
12:29
|
(56) и легче и понятнее
|
|||
|
61
Kstn12
27.01.06
✎
12:29
|
(56) Ни одно программирование не защищено от ошибок.
|
|||
|
62
NS
27.01.06
✎
12:30
|
(58) Что? Может они еще и дрочат втихаря?
|
|||
|
63
Андрюха
27.01.06
✎
12:30
|
(61) Я не сказал "защищено", я сказал "застраховано".
|
|||
|
64
France
27.01.06
✎
12:30
|
аффтару пять за ветку!!...
|
|||
|
65
Joint
27.01.06
✎
12:30
|
(57)да это были такие популярные иллюстрации
ВОТ ЕСТЬ СОБАКИ - собаки с..ка полезные животные, собаки это КЛАСС |
|||
|
66
ДенисЧ
27.01.06
✎
12:31
|
(62) ну не знаю, не знаю. Это определение ООП, классическое, такаскать. А то, что из него сделали в с+/жаве - это уже на совести Страустрапа.
|
|||
|
67
Демогоргон
27.01.06
✎
12:31
|
(59) Есть функция УдалитьВсеСправочники и УдалитьВсеДокументы
В ООП - это Документ.УдалитьВсе и Справочник.УдалитьВсе ... |
|||
|
68
NS
27.01.06
✎
12:31
|
(63) Хорошо, каким образом застраховано?
|
|||
|
69
Joint
27.01.06
✎
12:31
|
у собак есть метакласс - ЖЫВОТНЫЕ, но это потом...
|
|||
|
70
Андрюха
27.01.06
✎
12:32
|
Экземпляр класса "собака" невозможно сложить с экземпляром класса "книга", т.к. это разные классы - вот тебе и застрахованность.
|
|||
|
71
France
27.01.06
✎
12:32
|
(69)все мы едины в боге
|
|||
|
72
NS
27.01.06
✎
12:32
|
(70) А в процедурном программировании ты их сложить сможешь...
Круто! |
|||
|
73
Kstn12
27.01.06
✎
12:32
|
(65) Не мне больше запомнились картинки из книги буча, кот по частям, как его видят бабушки и т.д.
|
|||
|
74
Joint
27.01.06
✎
12:33
|
но кроме сущности СОБАКИ есть конкретная реализация - СОБАКА, причем СОБАКА <> СОБАКА, это понятно на примере того что собака может быть СУКА а можеть быть КОБЕЛЬ
|
|||
|
75
NS
27.01.06
✎
12:33
|
(70) То есть как это нельзя сложить? Как раз можно!
|
|||
|
76
Андрюха
27.01.06
✎
12:33
|
(72) В процедурном - такая возможность не исключена, но породит ошибку.
|
|||
|
77
France
27.01.06
✎
12:33
|
собака+книга = андрюха
|
|||
|
78
Андрюха
27.01.06
✎
12:34
|
(77) :)))
|
|||
|
79
Kstn12
27.01.06
✎
12:34
|
(69) Почему метакласс?
|
|||
|
80
Kstn12
27.01.06
✎
12:36
|
В сиплюсах аналог метеклассов есть пространства имен (С++03) ИМХО.
|
|||
|
81
ДенисЧ
27.01.06
✎
12:36
|
(80) плохое ХО...
|
|||
|
82
France
27.01.06
✎
12:36
|
(80) что такое инхо?
|
|||
|
83
Kstn12
27.01.06
✎
12:37
|
(81) Обоснуй
|
|||
|
84
Joint
27.01.06
✎
12:37
|
тут мы в плотную подходим к понятию свойств СОБАКИ (как часть инкапсуляции) когда СОБАКА создается ей назначается допустим свойство СУКА, а второй объект создается со свойством КОБЕЛЬ, и хотя они относятся к классу СОБАКИ но при этом инкапсулируют разные свойства, у одного писька у другого эээ ну вы поняли.
|
|||
|
85
ДенисЧ
27.01.06
✎
12:38
|
(83) от обоснуя слышу :-)
Пространства имён не могут использовать для получения информации о классе и тме более для создания экземпляров класса. Они просто делят наборы классов на логические части. |
|||
|
86
France
27.01.06
✎
12:40
|
(84) СУКА - это не свойств, это ЖИЗНЬ..
|
|||
|
87
Андрюха
27.01.06
✎
12:40
|
(75) Да, можно, например по ошибке к указателю на целое число 10 прибавить целое число 7, в надежде, что результат - целое число 17, но на самом деле ты получишь адрес числа 10 со смещением 7. Т.е. результат не вполне ожидаемый. А в ООП такой фокус не пройдет.
|
|||
|
88
Kstn12
27.01.06
✎
12:41
|
(85) Согласен. А какая инфа о классе может быть получена?
|
|||
|
89
Андрюха
27.01.06
✎
12:41
|
(75)+ Это в С++, в Delphi адресная арифметика не пролезет.
|
|||
|
90
NS
27.01.06
✎
12:42
|
(89) А это еще почему????
|
|||
|
91
Андрюха
27.01.06
✎
12:43
|
(90) Потом у что не пройдёт. Не веришь - попробуй. Выскочит ошибка. Но это не главное - это для пояснения примера.
|
|||
|
92
ДенисЧ
27.01.06
✎
12:44
|
(88) набор свойств, методов (ладно, будем использовать такой термин), области видимости, дерево подчинения...
|
|||
|
93
NS
27.01.06
✎
12:44
|
(91) И какая-же ошибка выскочит?
И что значит попробуй? |
|||
|
94
Андрюха
27.01.06
✎
12:47
|
(93) Я про то, что компилятор C++ такой фокус схавает, а в Delphi вылезет ошибка: операция над несовместимыми типами данных.
|
|||
|
95
Kstn12
27.01.06
✎
12:48
|
(92) В ООП излишне ИМХО.
|
|||
|
96
Kstn12
27.01.06
✎
12:48
|
(95) по крайней мере необязательны (метаклассы).
|
|||
|
97
NS
27.01.06
✎
12:49
|
(94) При какой операции? Мы говорили об объединении классов (объектов)? или уже тема поменялась?
|
|||
|
98
ДенисЧ
27.01.06
✎
12:51
|
(95-96) Опять же плохое ХО :-) Посмотри на nybernate и сделай такое без метаклассов.
|
|||
|
99
Андрюха
27.01.06
✎
12:51
|
(97) Считаю дальнейшую беседу излишней. Мы говорим о разных вещах.
|
|||
|
100
NS
27.01.06
✎
12:51
|
(+97) Или об сложении?
То есть в процедурном программировании я смогу сложить два набора данных, или хотя бы две переменные с разным типом данных???? А в объектно ориентированном не смогу написать процедуру (функцию) сложения двух разных объектов? Или метод для одного объекта, чтоб прибавить ему объект другого типа? |
|||
|
101
ЛВП
27.01.06
✎
12:51
|
100?
|
|||
|
102
Kstn12
27.01.06
✎
12:52
|
(101) А вот и нет.
|
|||
|
103
Андрюха
27.01.06
✎
12:54
|
(100) Я тебя понял, ты в своём вопросе абсолютно прав. Внутри описания методя можно нагородить всё что угодно.
|
|||
|
104
aka MIK
27.01.06
✎
12:54
|
Народ, вас ностальгия замучила? Институтские годы вспоминаете? Говорят вам - есть один базовый класс - бабло! Идите создавайте объекты данного класса путем кодирования кода своих процедур, не занимайтесь демагогией...
|
|||
|
105
АнтыАдын1Сник
27.01.06
✎
13:01
|
Активность ветки на элементарнейший вопрос с 99% флудом в ней подтверждая Основную Теорему об АдынЭсниках.
|
|||
|
106
quest
27.01.06
✎
13:03
|
(105) Что за теорема?
|
|||
|
107
Настойащие пацаны
27.01.06
✎
13:06
|
не обсуждают высосанные из пальца секунду назад утверждения об ООП.
Они используют ООП при проектировании/разработке сложных систем и получают за это реальное бабло. Они также не реагируют на возгласы: Нам не нужно ООП. |
|||
|
108
АнтыАдын1Сник
27.01.06
✎
13:07
|
Все адынэсники - тупые.
|
|||
|
109
Матрейя
27.01.06
✎
13:07
|
||||
|
110
quest
27.01.06
✎
13:08
|
(0) Может ты лучше спросишь что тебе конкретно там непонятно? А то вопрос слишком общий.
|
|||
|
111
Матрейя
27.01.06
✎
13:10
|
110. Для начала расскажи, что такое функциональное программирование, что такое процедурное, что такое объектное. Чем они друг от друга отличаются, чем подобны. Простыми словами, с простыми примерами.
|
|||
|
112
quest
27.01.06
✎
13:16
|
может тебе проще начать читать листинги программ? Скачай документацию по С++, prolog'у lisp'у найди эквивалентные программы (на вскидку - объединение списков) и уже потом спрашивай. А то можно спросить чем различаются между собой танк, трактор и вездеход и потом визжать что все ламера них...на не разбираются в автомобилестроении
|
|||
|
113
Salimbek
27.01.06
✎
13:23
|
Народ, да выгоните. Матрена пообещал на рилнете написать статью, понятную любому ламеру, вот он и развел тут бодягу, шоб ему как ламеру все разжевали, а он потом аккуратненько все в свою статью перепишет и будет дальше понтоваться
З.Ы. ИМХО Матрена не ап_салютный ламер и что такое ООП - знает |
|||
|
114
quest
27.01.06
✎
13:25
|
(113) на З.Ы. Но не особо понимает.
|
|||
|
115
France
27.01.06
✎
13:26
|
Матрейя разводит народ..
|
|||
|
116
Математик
27.01.06
✎
13:28
|
Вы тут фигней страдаете а у меня в ряд Лорана-Шварца в Axiom функция 2 часа не раскладывается.
Горит проект на 100 000$ |
|||
|
117
у лю 427
27.01.06
✎
13:35
|
якуею
|
|||
|
118
fez
27.01.06
✎
14:23
|
(113) Интересно, Света Семененко тоже статьи пишет и на них потом бабки рубит?
Если да, то элегантно... Всегда считал, что ее выступления - это чистый стеб. |
|||
|
119
Матрейя
27.01.06
✎
15:28
|
up
|
|||
|
120
France
27.01.06
✎
15:29
|
(119) неугомонный какой... лучше бы моделью занялся.
|
|||
|
121
Матрейя
27.01.06
✎
15:30
|
120 просьба отвечать по существу темы.
|
|||
|
122
ДенисЧ
27.01.06
✎
15:38
|
В языках, называемых функциональными, хорошо поддерживаются нижеперечисленные подходы, а все прочие подходы поддерживаются плохо или не поддерживаются вовсе:
* Функции - объекты первого класса. Т.е., все, что можно делать с "данными", можно делать и с функциями (вроде передачи функции другой функции в качестве параметра). * Использование рекурсии в качестве основной структуры контроля потока управления. В некоторых языках не существует иной конструкции цикла, кроме рекурсии. * Акцент на обработке списков (lists, отсюда название Lisp - LISt Processing). Списки с рекурсивным обходом подсписков часто используются в качестве замены циклов. * "Чистые" функциональные языки избегают побочных эффектов. Это исключает почти повсеместно распространенный в императивных языках подход, при котором одной и той же переменной последовательно присваиваются различные значения для отслеживания состояния программы. * FP не одобряет или совершенно запрещает утверждения (statements), используя вместо этого вычисление выражений (т.е. функций с аргументами). В предельном случае, одна программа есть одно выражение (плюс дополнительные определения). * FP акцентируется на том, что должно быть вычислено, а не как. * Большая часть FP использует функции "высокого порядка" (функции, оперирующие функциями, оперирующими функциями). Защитники функционального программирования доказывают, что все эти характеристики приводят к более быстрой разработке более короткого и безошибочного кода. Более того, высокие теоретики от компьютерной науки, логики и математики находят, что процесс доказательства формальных свойств для функциональных языков и программ много проще, чем для императивных. |
|||
|
123
Матрейя
27.01.06
✎
15:50
|
122 Наконец-то, хоть один постинг в тему.
|
|||
|
124
ДенисЧ
27.01.06
✎
15:53
|
(123) ты не поверишь. Этот постинг в тему нашелся за 40 секунд яндексения. ПРосто я знаю, куда нужно посмотреть.
|
|||
|
125
Математик
27.01.06
✎
15:54
|
На Лиспе написана Максима, в отличии от cистем на С, она не имеет утечек памяти.
|
|||
|
126
А давайте
27.01.06
✎
15:55
|
докажем правильность УПП! Причем строго!
|
|||
|
127
Vozhd
27.01.06
✎
15:56
|
(123) Посмотри что вот здесь пишут: http://rsdn.ru/forum/?group=philosophy
Там часто вопросы, подобные (0) возникают. |
|||
|
128
ДенисЧ
27.01.06
✎
15:57
|
(126) этого нельзя сделать.
|
|||
|
129
Матрейя
27.01.06
✎
15:57
|
124 я это знал.
127. Спасибо, посмотрю. Чем больше матерала, тем лучше. |
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |