Форум программистов, компьютерный форум, киберфорум
ООП и паттерны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.92/84: Рейтинг темы: голосов - 84, средняя оценка - 4.92
0 / 0 / 0
Регистрация: 02.10.2019
Сообщений: 20

Объясните понятие ООП

13.02.2020, 23:25. Показов 21470. Ответов 242

Студворк — интернет-сервис помощи студентам
Скажите пожалуйста понятным языком, что такое объектно-ориентированное программирование ?
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.02.2020, 23:25
Ответы с готовыми решениями:

Понятие ООП
Доброго времени суток! Пытаюсь вникнуть в ООП после длительного написания кода в процедурном стиле, и это не так просто =( Хочу...

Объясните понятие изоморфизма двух алгебр (на примере)
Кто нибудь, объясните мне понятие изоморфизма двух алгебр на примере. Или дайте источник информации (я искал -- толкового ничего не нашёл)....

Дать понятие понятие НОК в кольце целых чисел
Дать понятие понятие НОК в кольце целых чисел.

242
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
12.08.2020, 12:24
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Shamil1 Посмотреть сообщение
При этом в коде достаточно заменить myObject.SomeMethod() на new MyMethods().SomeMethod(myObject). То есть, структура кода (парадигма) не поменяется, поменяется только синтаксис.
Сделаете так - исчезнет общее имя, объекта как такового не станет.
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
12.08.2020, 12:34
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Сделаете так - исчезнет общее имя, объекта как такового не станет.
Но структура кода (парадигма) останется прежней. В одном случае есть общее имя, в другом - нет общего имени, а парадигма одна и та же.
0
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
12.08.2020, 13:28
Нет. Работаешь не с объектом, а с отдельными элементами - переменными и функциями. А это структурное программирование.

То же самое:
Цитата Сообщение от vantfiles Посмотреть сообщение
objectname_field1
objectname_field2
objectname_method1
objectname_method2
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
13.08.2020, 09:55
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Это не входит в базис
С чего ты взял?
0
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
13.08.2020, 10:02
Потому что базис ООП - это обращение к объекту и его элементам через общее имя. И все. Это чистый ООП. Дальше идут дополнительные придумки, называемые принципами. Они не входят в базис, так как без них можно создавать объекты и работать с ними.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
13.08.2020, 10:16
Цитата Сообщение от Mikhaylo Посмотреть сообщение
базис ООП - это обращение к объекту и его элементам через общее имя
А кто обращается к объекту?
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
13.08.2020, 10:34
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Нет. Работаешь не с объектом, а с отдельными элементами - переменными и функциями. А это структурное программирование.
Я не понял, в чём разница, если код остался практически тем же.
C#
1
2
var res = myObject.SomeMethod();
var res = new MyMethods().SomeMethod(myObject);
На основании каких признаков Вы делаете вывод, что в одном случае я работаю с объектами, а в другом - с переменными и функциями?

Если я добавлю в свой класс MyMethods() какое-нибудь поле/свойство, то моё "структурное программирование" превратится в ООП?
0
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
13.08.2020, 10:43
Цитата Сообщение от Shamil1 Посмотреть сообщение
На основании каких признаков Вы делаете вывод, что в одном случае я работаю с объектами, а в другом - с переменными и функциями?
Так все просто! Есть определение:
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Есть объединение полей и методов под одним именем? Есть. Значит это ООП. Нет - значит нет.


Добавлено через 5 минут
Школьников когда учат ООП, говорят, а давайте возьмем структуру struct{} и добавим внутрь структуры функцию, а ключевое слово struct заменим на object (или class, но это более долгий путь). И хоп! Структурное программирование стало ООП. Чудеса!

А потом начинаются заморочки, а давайте еще вот наследовать будем, ограничивать доступ к членам, абстракции, позволим одинаковые имена членов и т.д. Дополнительные изобретения и навороты.
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
13.08.2020, 11:13
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Так все просто! Есть определение
Я добавил в в класс MyMethods() какое-нибудь (неиспользуемое) поле, а в клас MyObject() какой-нибудь (неиспользуемый) метод. Согласно Вашему определению мой код волшебным образом превратился в ООП код?
Определение должно определять строго.

Цитата Сообщение от Mikhaylo Посмотреть сообщение
Школьников когда учат ООП, говорят
Я не знаю, кто и почему учит так школьников. Может, учитель сам не знает, что такое ООП, а, может, использует принцип "это не верно, но так проще понять".
0
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
13.08.2020, 11:22
Вы как-то сложно понимаете ООП.

Если в языке заложена возможность работы с объектами, то это ООЯП. Хотите используйте ООП этого языка, хотите нет.
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
13.08.2020, 16:43
Есть разные подходы.

Школьников, например, учат вычислять площадь различных фигур. Большинство школьников знает (запоминает) соответствующие формулы, но практически никто из них не может объяснить, что такое площадь.
С ООП то же самое. Многие программисты применяют ООП, но мало кто из них может объяснить, что это такое. В принципе, это и не обязательно. Программист знает (запоминает или даже придумывает сам) какие-то шаблоны и использует их в своей работе. А что такое ООП ему знать не обязательно (разве что выучить стандартный ответ для собеседования). Это один из подходов (подход техника/ремесленника).
0
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
13.08.2020, 16:46
Ну вот, теперь вы все знаете о сути ООП
0
Модератор
Эксперт функциональных языков программирования
3140 / 2288 / 469
Регистрация: 26.03.2015
Сообщений: 8,898
13.08.2020, 19:06
Это нормально, использовать формулы вычисления площади и не знать точно, что такое площадь. Точно так же нормально, использовать ООП методы/паттерны и не знать точно, что такое ООП. Но неправильно будет навязывать другим своё неправильное представление о том, что такое ООП,
0
820 / 579 / 75
Регистрация: 20.09.2014
Сообщений: 3,814
13.08.2020, 20:40
Да мне-то что? Ну неправильное (по вашему мнению) и пусть будет неправильное. Я не против.

Но нифига вы столько копий сломали о ветряные мельницы! И не один вы такой...

При этом до меня тут понаписано черт знает сколько "определений", которые сумбурные, громоздкие и нисколько не выражают суть.
0
 Аватар для vvm28
773 / 541 / 67
Регистрация: 22.12.2013
Сообщений: 2,500
Записей в блоге: 26
14.08.2020, 15:06
Есть один нюанс, с девочкой по найму сильно умным не надо казаться.... Девочку что волнует ? Вот это ей и нужно предлагать... подруге купили шубку, подруге купили островок.. Откуда у девочки по найму НР какие либо знания. У ней есть знания выяснить - раб- не раб. И всё? раб -нанимаем за гроши.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
14.08.2020, 19:37
Цитата Сообщение от vvm28 Посмотреть сообщение
Есть один нюанс, с девочкой по найму сильно умным не надо казаться.... Девочку что волнует ? Вот это ей и нужно предлагать... подруге купили шубку, подруге купили островок.. Откуда у девочки по найму НР какие либо знания. У ней есть знания выяснить - раб- не раб. И всё? раб -нанимаем за гроши.
Разве что в ООО «Рога и Копыта»
0
Эксперт .NET
 Аватар для Usaga
14368 / 9469 / 1360
Регистрация: 21.01.2016
Сообщений: 35,734
15.08.2020, 06:51
Цитата Сообщение от vvm28 Посмотреть сообщение
У ней есть знания выяснить - раб- не раб. И всё? раб -нанимаем за гроши.
Я так понимаю, что нормальные конторы вам оферы не делали, да?
0
20.08.2020, 12:48

Не по теме:

Usaga, Нормальные конторы - это вымышленное понятие. Одно жулье кругом.

0
20.08.2020, 13:32

Не по теме:

vvm28, ну, если вас на собеседования нормальные конторы не приглашали, то это не значит, что их нет. Продолжая в том же духе, вы демонстрируете ПОЧЕМУ вас не приглашали. И я с ними полностью согласен.

Меня вы тоже жуликом считаете, раз я спокойно смог устроиться в контору, которых не существует? Или меня дядя какой-то трудоустроил, который за меня и работает, да?

0
21.08.2020, 09:17

Не по теме:

Usaga, Ну мои мысли по этому поводу такие. Их нет, контор. Нормальные конторы давно уничтожили.
И как это происходит. Существует конкуренция в мире. Задача конкурентов развалить нормальные конторы. Они очень просто разваливаются. Просто происходит финансирование некоторого бесперспективного направления.
Менеджеры прыгают исходят слюной от печенек. Так в России была развалена вся электронная промышленность.
То есть компьютеры в топку, телефоны в топку, вся электроника в топку. Россия никак не представлена в мире. Все направления были просто развалены и уничтожены. Заказы можно получить только с запада, с востока Китай вам заказов не даст вообще. Что по программированию, то это в основном две монополии: 1С и антивирусы Касперского.
Тут много факторов, почему так происходит. Во первых гос-монополии, во вторых программные продукты у нас не будут покупать на внутреннем рынке - нет экосистемы, нет движения. А до внешнего рынка никто не добирается. Только Касперский, может быть. Как-то так. Мои мысли по этому поводу не очень оптимистичны. Контор нормальных нет. Их просто не может быть. Потому что не может быть никогда. Бюрократически-коррупционная система у нас всё съела.

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.08.2020, 09:17

Объясните кое что по ООП
Не дает мне покоя очень важный момент, пример: System.IO.File.Open() System.IO - пространство имен File - класс Open() -...

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

Объясните некоторые принципы ООП в конкретной реализации
Доброго дня! У меня есть пользователи, которые делятся на зарегистрированных (User) и незарегистрированных (Person) и создаются...

Наследование ООП, объясните примитивную ситуацию, пож
Добрый. Всё никак не могу взять в толк: как это должно работать (точнее - почему не работает так, как я ожидаю). Примитивная наколенка: ...

Начинаю изучать ООП. Объясните, что такое интерфейс?
Всем привет. Начинаю изучать ООП. Объясните,что такое интерфейс?для чего он нужен и чем он отличается от класса?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
80
Ответ Создать тему
Новые блоги и статьи
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ начало и оглавление - Как «пернатого» заставить осваивать новые горизонты опыта через масштабирование. . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
сукцессия 30. Массив проверяющих друг друга моделей
anaschu 18.07.2026
Архитектура сети взаимопроверяющих моделей микоризной сукцессии (v2. 0) Развитие тензорного ОДУ-ядра и создание кросс-платформенного калибровочного полигона Уважаемые коллеги! В продолжение. . .
Грибы - это женщины, деревья - это мужчины. Анти инь янь для союза мужчины и женщины.
anaschu 18.07.2026
ГЛАВНЫЙ НАУЧНО-ФИЛОСОФСКИЙ ВЫВОД: Сексуально-Репродуктивный Капитализм против Государства Моногамии Коллеги, мы вышли на финишную прямую 20-мерного ОДУ-моделирования вековой сукцессии (ветка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru