Lama
Lama
Vitaly
вот взять тот же ооп, создали на основе идее, что в "реальном мире" все объекты
Vitaly
хотя это чушь полная
Vitaly
*всё объекты
Vitaly
и чем лучше язык структурно подобен реальности, тем проще его взаимодействие с реальным миром
Źmićer
Смысл ооп в том, что у действий и данных есть один владелец
Vitaly
кто?
Źmićer
Поэтому какие-то конкретные данные могут быть обработаны только какими-то конкретными действиями
Vitaly
я думал смысл ооп в том что есть объекты и у них есть состояния
Vitaly
и через функции мы меняем состояние объекта
Lama
Źmićer
Смысл ооп в том что я написал.
Vitaly
ну про понимание абстракций языков?
Źmićer
Походу этому не учат в курсах по жабе
Lama
Vitaly
да и в книгах не то пишут...
Źmićer
Инстанс обьекта в жабах
Źmićer
Короче говоря, ты не можешь вызвать любую существующую функцию с любыми существующими данными
Vitaly
чем от эликсира отличается тогда?
Vitaly
тоже самое можно сказать
Źmićer
Ты напрямую вызываешь функцию какбы
Vitaly
ну а если defp
Vitaly
значит уже не любу.
Źmićer
Ты напрямую адресуешь
Źmićer
Func(data) - ты берешь указатель на функцию и вызываешь ее с аргументом дата
Źmićer
А если data.function - то ты не знаешь адрес этой function
Vitaly
ну а если defp
Źmićer
Где-то внутри сидит кто-то, кто ее адресует
Vitaly
ты не можешь вызвать напрямуи тоже
Źmićer
На этом работают всякие полиморфизмы
Źmićer
Подумай чуть про что я написал
Źmićer
потом продолжим
Vitaly
думаю, я просто до сих пор не понимаю зачем это нужно
Źmićer
Все парадигмы накладывают какую-то отграничению
Vitaly
да
Vitaly
НО
Źmićer
ООП накалывает ограничение на косвенную адресацию
Vitaly
так можно сказать о любой парадигме
Źmićer
Нет
Vitaly
да
Źmićer
C не накладывает такие ограничения
Vitaly
я говорю что все парадигмы
Vitaly
не
Vitaly
тоолько прогеррские
Vitaly
накладывают ограничения, любая парадигма
Vitaly
и есть парадигмы которые стукрутно более или менее подобны реальности
Vitaly
и чем меньше она подобна - тем больше проблем в любой сфере
Vitaly
C не накладывает такие ограничения
я читал историю когда в жаве приходилось создавать под каждую кнопку на сайте собственный класс, потом придумали костыль в виде анонимных классов
Vitaly
это и показывает несостоятельность самой верхней абтракции на которой язык стоит
Vitaly
а она по сути - "всё есть объекты"
Vitaly
могло быть, например, "все есть процессы"
Vitaly
язык это же и про структуру мысли еще
Tharin
Vitaly
исследование даже проводиломь или хотели проводить, насколько разные языки программирования влияют на восприятие мира
Vitaly
я к чему это, интересно послушать с точки зрения исследовия базовых абстракций разных языков
Vitaly
и уничтожить неверных, конечно
Vitaly
Vitaly
спасибо, ребята - это остатки ооп выходили из меня)
Zucchini
jm
jm
я с отрочества так говорю, но не знаю источника
Źmićer
Как-то однажды знаменитый учитель Кх Ан вышел на прогулку с учеником Антоном. Надеясь разговорить учителя, Антон спросил: "Учитель, слыхал я, что объекты - очень хорошая штука - правда ли это?" Кх Ан посмотрел на ученика с жалостью в глазах и ответил: "Глупый ученик! Объекты - всего лишь замыкания для бедных."
Пристыженный Антон простился с учителем и вернулся в свою комнату, горя желанием как можно скорее изучить замыкания. Он внимательно прочитал все статьи из серии "Lambda: The Ultimate", и родственные им статьи, и написал небольшой интерпретатор Scheme с объектно-ориентированной системой, основанной на замыканиях. Он многому научился, и с нетерпением ждал случая сообщить учителю о своих успехах.
Во время следующей прогулки с Кх Аном, Антон, пытаясь произвести хорошее впечатление, сказал: "Учитель, я прилежно изучил этот вопрос, и понимаю теперь, что объекты - воистину замыкания для бедных." Кх Ан в ответ ударил Антона палкой и воскликнул: "Когда же ты чему-то научишься? Замыкания - это объекты для бедных!" В эту секунду Антон обрел просветление.
jm
Смысл ооп в том, что у действий и данных есть один владелец
Смысл Java/C++ ООП в том, что оно позволяет моделировать проблемную область с помощью иерархий абстракций с заданными наборами возможных операторов для каждой иерархии.
Смысл ООП в том, что изолированные аспекты проблемной области также изолированы в абстракции в коде и взаимодействуют друг с другом как с чёрными ящиками, возможно, путём посылки сообщений.
jm
Как-то однажды знаменитый учитель Кх Ан вышел на прогулку с учеником Антоном. Надеясь разговорить учителя, Антон спросил: "Учитель, слыхал я, что объекты - очень хорошая штука - правда ли это?" Кх Ан посмотрел на ученика с жалостью в глазах и ответил: "Глупый ученик! Объекты - всего лишь замыкания для бедных."
Пристыженный Антон простился с учителем и вернулся в свою комнату, горя желанием как можно скорее изучить замыкания. Он внимательно прочитал все статьи из серии "Lambda: The Ultimate", и родственные им статьи, и написал небольшой интерпретатор Scheme с объектно-ориентированной системой, основанной на замыканиях. Он многому научился, и с нетерпением ждал случая сообщить учителю о своих успехах.
Во время следующей прогулки с Кх Аном, Антон, пытаясь произвести хорошее впечатление, сказал: "Учитель, я прилежно изучил этот вопрос, и понимаю теперь, что объекты - воистину замыкания для бедных." Кх Ан в ответ ударил Антона палкой и воскликнул: "Когда же ты чему-то научишься? Замыкания - это объекты для бедных!" В эту секунду Антон обрел просветление.
явно не источник но занятная паста
Źmićer
jm
я вот тоже вчера пасту написал по мотивам охуительного бага в го
jm
Źmićer
В этой пасте вся суть. Во первых - замыкания и обьекты это две стороны одной медали
Źmićer
А во вторых - мы можем понять смысл обектов если поймем смысл замыканий к примеру
Źmićer
> Замыкание, так же как и экземпляр объекта, есть способ представления функциональности и данных, связанных и упакованных вместе.
https://ru.wikipedia.org/wiki/%D0%97%D0%B0%D0%BC%D1%8B%D0%BA%D0%B0%D0%BD%D0%B8%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)
Źmićer
В этом и смысл, как я в начале и сказал
Źmićer
Tharin
ля
Tharin
действительно
Tharin
Tharin
ну ладно, 1-0