Форум программистов, компьютерный форум, киберфорум
Священные войны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.55/155: Рейтинг темы: голосов - 155, средняя оценка - 4.55
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
18.07.2016, 20:06
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от Avazart Посмотреть сообщение
вероятно чем и вызвано вот это тупое "С++ это не ООП язык
Главным аргументом противников ОПП, является отсутствие на сегодняшний день, строгого общепринятого определения ОПП, как такового.
Как техника, это может быть определено без каких-либо проблем. А вот идеология тут открыта и в этом её сила. Объектное выражение задачи, это процесс творческий и плотно связан с процессом формализации задачи. Как только появится строгое описание данного процесса, задача искусственного интеллекта будет решена. Я не берусь оценивать хорошо ли это будет, но ценность человеческого интеллекта и, в конечном счёте, личности, будет значительно ниже чем сегодня.
По сему, имхо, слава богу, что нет такого определения и я надеюсь, никогда не будет. Противникам ООП это непонятно, поскольку они не могут выйти из своего уровня абстракции.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
18.07.2016, 20:06
Ответы с готовыми решениями:

Что даёт использование классов (и шире - ООП) в языке программирования С++? (2)
Продолжение темы

Концепция ООП и их использование в современных языках программирования
Дали курсовую на эту тему. Подскажите, какую литературу, которую можно бы было использовать пр написании. Спасибо. :з

Что дает использование сетки Бутстрапа
Ведь даже если элементам задать margin в процентах плюс ширину в процентах,то элементы перемещаются соотвественно с уменьшением экрана. ...

992
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
18.07.2016, 20:12
Цитата Сообщение от hoggy Посмотреть сообщение
как вы сказали - тыкает виртуалы куда ни попадя,
то это просто быдлокод,
а такой программер - быдлокодер.
Естественно, но тем не менее создаться такое впечатление что противники ООП имеют дело именно с таким кодом,
или вообще пишут только на скриптовых языках где нет подобыных вещей, а сюда заходят тупо погнать на С++.

Цитата Сообщение от IGPIGP Посмотреть сообщение
Главным аргументом противников ОПП, является отсутствие на сегодняшний день, строгого общепринятого определения ОПП, как такового.
Как техника, это может быть определено без каких-либо проблем. А вот идеология тут открыта и в этом её сила.
Я как раз к тому что иногда неоправданно подгонять язык под идеологию, соответственно сколько языков столько оттенков.
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
18.07.2016, 20:15
Цитата Сообщение от Avazart Посмотреть сообщение
Естественно, но тем не менее создаться такое впечатление что противники ООП имеют дело именно с таким кодом,
или вообще пишут только на скриптовых языках где нет подобыных вещей, а сюда заходят тупо погнать на С++.
это как то не серьёзно.
и вообще, если уж на то пошло,
то реально ни один хейер так и не смог объяснить с толком с расстоновкой,
чем же ооп плох.

все их речи сводяццо: "я не осилил".

в то время как лично я знаю недостатки ооп.
объективные.
я его знаю.
я его умею.
я понимаю его недостатки.

ну вот как то не встречал до сих пор человека,
которые смог бы привети объективные его недостатки.

получается ругают, сами не знают что.
0
Хитрая блондиночка $)
 Аватар для Hikari
1472 / 988 / 399
Регистрация: 21.12.2015
Сообщений: 3,785
18.07.2016, 20:23
Цитата Сообщение от IGPIGP Посмотреть сообщение
отсутствие на сегодняшний день, строгого общепринятого определения ОПП, как такового
Разве? А по-моему все определено четко и просто.
Цитата Сообщение от Avazart Посмотреть сообщение
подгонять язык под идеологию, соответственно сколько языков столько оттенков.
Не под идеологию нужно подгонять язык.
Меня всегда учили мои коллеги программайзеры так: "Обоснуй задачу, найди ее фундамент, а уже потом будешь подбирать инструмент". Идеология вообще тут не помощник.
0
Комп_Оратор)
Эксперт по математике/физике
 Аватар для IGPIGP
9007 / 4708 / 630
Регистрация: 04.12.2011
Сообщений: 14,003
Записей в блоге: 16
18.07.2016, 20:31
Цитата Сообщение от Avazart Посмотреть сообщение
Я как раз к тому что иногда неоправданно подгонять язык под идеологию
Не совсем понял. Эта идеология выражена в языке де-факто. Жизнь подтверждает успешность принятого подхода. Но язык позволяет пользоваться данной техникой, но не заставляет этого делать. Ну а учитывая интеллектуальную насыщенность выражения задачи в данном подходе, не удивительно, что оправданность и сама техника применения, это вопрос интеллекта программиста не только как программиста.
И тут ничего не спрячешь так как это может быть в функциональном стиле. Хотя и там возможно написать модульно и прозрачно, конечно.

Не по теме:

Што щас будит! :D



Добавлено через 5 минут
Цитата Сообщение от Hikari Посмотреть сообщение
Разве? А по-моему все определено четко и просто.
Расскажите. Не техническую реализацию группировки данных и методов, а алгоритм анализа предмета (общей задачи) с целью группировки.
ФП вообще этим не занимается. Им дай матмодель и они начнут писать функции. Тут я знаю мало и могу не то сказать.
0
4949 / 2289 / 287
Регистрация: 01.03.2013
Сообщений: 5,991
Записей в блоге: 32
18.07.2016, 22:40
А кто тут противник ООП? Нет, я знаю парочку таковых на этом форуме, но они в этом топике не отметились
Цитата Сообщение от Nosey Посмотреть сообщение
Мы же за ООП?
А я так вообще настолько за ООП, что даже пытаюсь курить настоящий ООП язык

ЗЫ
Цитата Сообщение от Avazart Посмотреть сообщение
а сюда заходят тупо
потому, что здесь мощность потока новых тем в единицу времени гораздо выше, чем в других разделах форума - вот и все. Подозреваю, это связано с тем, что студентов (которым вообще все до фени) больше мучают изучением С++, чем остальными языками. Если бы подобная ситуация была бы с тем же лиспом или хаскелем - судьба этого раздела (напомню, мы в плюсах для начинающих) была бы - забвение и безмолвие (как в иных других разделах).
0
 Аватар для Nosey
1379 / 406 / 144
Регистрация: 22.10.2014
Сообщений: 872
18.07.2016, 23:46

Не по теме:

_Ivana, Нет нет нет, не надо меня в тему призывать, у меня правило - не больше одного холивара в сутки :D


А если надо что-то сказать по теме : 1) Я за ООП. 2) с ООП - хорошо, а без ООП - плохо.

Не по теме:

Хотя ваша тема мне нравится, у вас тут девчата про моду рассказывают, меньше пота и крови, такая уютная диванная тема :D

3
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
17.08.2016, 17:15
Основная причина почему придумали ООП, идентична причине почему люди раскладывают все по полочкам. ООП наводит порядок в коде.
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
17.08.2016, 17:32
Цитата Сообщение от _Ivana Посмотреть сообщение
настоящий ООП язык
Джаву?

Добавлено через 2 минуты
Цитата Сообщение от _stanislav Посмотреть сообщение
Основная причина почему придумали ООП, идентична причине почему люди раскладывают все по полочкам. ООП наводит порядок в коде.
Опередил меня. Только в ответ вот на это сообщение:
Цитата Сообщение от shilko2013 Посмотреть сообщение
Абстракция
Инкапсуляция
Наследование
Полиморфизм
хотел написать "Ыыыы, котаны, самое главное же ж забыли! Уменьшает сложность же! Сложность, Карл!"
1
"C with Classes"
2022 / 1404 / 523
Регистрация: 16.08.2014
Сообщений: 5,885
Записей в блоге: 1
17.08.2016, 18:09
gru74ik, я бы даже сказал, единственная причина а не основная. Все остальное типа
Абстракция
Инкапсуляция
Наследование
Полиморфизм и т.д..... это последствия.
1
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
17.08.2016, 18:39
Цитата Сообщение от _stanislav Посмотреть сообщение
ООП наводит порядок в коде
Смелое заявление, прямо скажем...
Ничего не имею против ООП как такового. Пытаюсь честно его изучать для саморазвития. Пока туго. Возможно классы в чём-то и полезны, - возможно, так как они пытаются абстрагировать некии абстрактные обьекты от других таких же обьектов. Но не уверен, что надо применять методы там где можно обойтись простым присваиванием(и должно!). Определённое удобство всё же есть: удобно по имени класса и его метода обращаться к конкретнму функционалу обьекта. Это действительно удобно, но нужно ли для этого ООП? Думаю, что нет. Ведь ООП это не просто классы с их методами, а и: наследование и т.д, и без этого набора - ООП - не ООП, а просто набор абстрактных типов данных собранных в кучу с методами их обработки.
А вот тут-то и вырисовывается одна проблемка.
Вроде как обьекты должны быть как можно менее связными между собой. Иначе - какие же они тогда обьекты? Тогда эти потомки представляют из себя по сути один мегаобьект, причём постреный чисто иерархически. Если у одного обьект имеются мои почки, а удругого мои руки, а я сам есть - голова, то я являюсь неким уродом или даже выродком.:-))
Где тут повторное использование тогда? Когда там всё переплетено, да так, что разобраться с этим иногда не может и сам создатель этого беспорядка.
Поймите правильно: я честно пытаюсь вьехать в это дело, но не понимаю почему обьекты должно что-то наследовать друг от друга?
Если бы они наследовали именно абстрактные свойства тогда бы ещё ничего, но они наследуют конкретные сущности, и это плохо.
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
17.08.2016, 18:42
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Поймите правильно: я честно пытаюсь вьехать в это дело, но не понимаю почему обьекты должно что-то наследовать друг от друга?
Потому что самурай с мечом (потомок) подобен самураю без меча (предок) и тоже должен иметь руки-ноги (унаследованная фигня).
0
Эксперт С++
 Аватар для hoggy
8973 / 4319 / 960
Регистрация: 15.11.2014
Сообщений: 9,760
17.08.2016, 19:02
Цитата Сообщение от CoderHuligan Посмотреть сообщение
я честно пытаюсь вьехать в это дело, но не понимаю почему обьекты должно что-то наследовать друг от друга?
ну не хотите - не наследуйте.
никто как бе не заставляет.

Цитата Сообщение от CoderHuligan Посмотреть сообщение
но они наследуют конкретные сущности, и это плохо.
вы хоть сами понимаете свою собственную точку зрения?

вы в состоянии объяснить "почему" ?
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
17.08.2016, 19:14
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Поймите правильно: я честно пытаюсь вьехать в это дело, но не понимаю почему обьекты должно что-то наследовать друг от друга?
Сколько времени? Целых 5 минут или может секунд ?

Цитата Сообщение от CoderHuligan Посмотреть сообщение
Если у одного обьект имеются мои почки, а удругого мои руки, а я сам есть - голова, то я являюсь неким уродом или даже выродком.:-))
Вопрос правильных названий, к примеру возможно вы просто мотоциклист попавший в аварию и разобранный на органы и разложенный по контейнерам )))

Добавлено через 3 минуты
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Если бы они наследовали именно абстрактные свойства тогда бы ещё ничего, но они наследуют конкретные сущности, и это плохо.
Хз я вас не понял, поясняйте...
0
 Аватар для CoderHuligan
1753 / 1019 / 257
Регистрация: 30.06.2015
Сообщений: 5,132
Записей в блоге: 56
17.08.2016, 19:16
Цитата Сообщение от hoggy Посмотреть сообщение
вы в состоянии объяснить "почему"
"Почему" - пусть страуструп обьяснит.
Цитата Сообщение от hoggy Посмотреть сообщение
вы хоть сами понимаете свою собственную точку зрения?
Я понимаю одно: метод одного обьекта используется другим. Это - та же самая сущность. Получается связность одного обьекта с другим, так как они разделяют общий метод. Связность - плохо. Связность - очень плохо. Очень.
Цитата Сообщение от Avazart Посмотреть сообщение
Сколько времени? Целых 5 минут или может секунд ?
Периодически к этому возвращаюсь и пытаюсь вьехать с точки зрения здравого смысла. Пока туго.
0
2784 / 1937 / 570
Регистрация: 05.06.2014
Сообщений: 5,602
17.08.2016, 19:22
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Я понимаю одно: метод одного обьекта используется другим. Это - та же самая сущность. Получается связность одного обьекта с другим, так как они разделяют общий метод. Связность - плохо. Связность - очень плохо. Очень.
У меня есть история правок, скажем, текста. Каждая правка может быть откачена или повторена еще разок. Причем, правка может делаться кучей различных способов (вставка текста/удаление/замена всех вхождений "попа" на "ягодицы"). И хочется мне по скудоумию представить каждую правку в форме абстрактного:
C++
1
2
3
4
5
6
class Edit
{
public:
    virtual void undo()const=0;//откатить правку
    virtual void redo()const=0;//накатить обратно
};
Внимательно слушаю, как мне решить эту задачу без б-гомерзких наследования и связанности.
0
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
17.08.2016, 19:33
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Периодически к этому возвращаюсь и пытаюсь вьехать с точки зрения здравого смысла. Пока туго.
До пива или после?

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

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

Другой случай - обобщение, когда есть набор классов B,C,D ведущих себя схожим образом которые можно обобщить введя абстрактный базовый класс A. Таким образом с B,C,D можно обращаться как с классам A "забывая в некоторых участках кода" о их "личностных" различиях.


Цитата Сообщение от CoderHuligan Посмотреть сообщение
Связность - плохо. Связность - очень плохо. Очень.
Если вы изначально моделируете связные объекты?
Что действительно плохо так это подобные заявления..

Цитата Сообщение от Renji Посмотреть сообщение
Потому что самурай с мечом (потомок) подобен самураю без меча (предок) и тоже должен иметь руки-ноги (унаследованная фигня).
Не очень хороший пример. Ибо самурай с мечем это может быть самурай + меч, тут не однозначно требуется наследование.
0
Модератор
Эксперт CЭксперт С++
 Аватар для sourcerer
5288 / 2376 / 342
Регистрация: 20.02.2013
Сообщений: 5,773
Записей в блоге: 20
17.08.2016, 19:34
Надо было голосовалку замутить:

Цитата Сообщение от Михаилыч Посмотреть сообщение
Что дает ООП?
а) вместе с Богом тебя бережёт
б) очень быстро выводит тебя в топ
в) бьёт с ноги тебя точненько в лоб
г) прекратит говнокода потоп
д) ничего, если ты идиот

1
 Аватар для avgoor
1550 / 877 / 179
Регистрация: 05.12.2015
Сообщений: 2,555
17.08.2016, 19:35
Цитата Сообщение от CoderHuligan Посмотреть сообщение
Связность - плохо. Связность - очень плохо. Очень.
С чего бы вдруг наличие связей всегда плохо?
1
Эксперт С++
 Аватар для Avazart
8489 / 6156 / 615
Регистрация: 10.12.2010
Сообщений: 28,683
Записей в блоге: 30
17.08.2016, 19:37
CoderHuligan, Советую взглянуть на картину более шире и почитать/разобраться про "Отношения между классами"
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
17.08.2016, 19:37

Посоветуйте книгу по C# в которой как можно шире раскрыты прелести ООП
посоветуйте, пожалуйста, книгу по C#, в которой как можно шире раскрыты прелести объектно-ориентированного программирования (области...

Что значат эти скобки >>> в языке программирования
зарание извиняюсь если вопросы глупые , я начал только сегодня изучать программирование на языке питон , сразу хочу сказать что мой уровень...

Использование функции DCount в элементе управления отчета Access2003 не дает желаемого результата. Что делать?
Здравствуйте. Имеем отчет Access2003, основанный на запросе "запСота". В отчете в разделе Заголовок имеем вычисляемое поле со следующей...

На русском языке или языке программирования
Опишите на русском языке или на одном из языков программирования алгоритм получения из целочисленного массива А состоящего из 30 элементов...

Множественное наследование, Перегрузка функций, Перегрузка операторов, Использование дружественных функций и классов, Использование шаблонов классов
Здравствуйте!!! Я бы хотел попросить помоч решить...ну или скинуть примеры таких задач, если вдруг у вас они завалялись на компе или...


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

Или воспользуйтесь поиском по форуму:
80
Закрытая тема Создать тему
Новые блоги и статьи
Был там один разговор по поводу свободы в материальном мире.
kumehtar 19.08.2026
Суть: рассматривается живое существо, оказавшееся внутри довольно странной системы (этого мира) и пытающееся обустроить в ней свой кусок пространства. Жизнь действительно предъявляет каждому. . .
Когда логика программы не спасает от человеческих ошибок
Maks 18.08.2026
В последнее время всё чаще и чаще сталкиваюсь с таким явлением, как абсолютная невнимательность (или глупость) пользователей. Проявляется это чаще всего на работе в коллективе. Допустим, человек с. . .
Лето уходит
kumehtar 17.08.2026
Мысли в слух
kumehtar 17.08.2026
Забавно, насколько сейчас стала доступна информация. Например о магии, духовном развитии, медитациях, и других подобных направлениях, ранее зачастую тайных, передаваемых от учителя к ученику. Хотя. . .
Перемещение строк из ТЧ в другой документ с учетом текущего пробега
Maks 17.08.2026
Реализация из решения ниже выполнена на примере нетипового документа "Автозапчасти", с ТЧ "Шины". За основу взят алгоритм отсюда: https:/ / www. cyberforum. ru/ blogs/ 359708/ 10838. html Задача: . . .
Саморегулирующийся социальный контракт для сервера cross-section.
Hrethgir 14.08.2026
С кодом конечно таких глубоких размышлений пока не было, впрочем я уже привык к алгоритмизации. Суть предмета записи: снова в диалоге с нейросетью (я взял пока себе ник для учётки админа - Rector). . . .
Часы электронные
Uhbif79 12.08.2026
Выкладываю программу часов. Программа позволяет: 1. Использовать системное время и дату, 2. Есть возможность вводить время и дату вручную. 3. Реализованы 2 будильника: начало и конец рабочего дня. . . .
Часы с будильником на основе класса QLCDNumber
Uhbif79 12.08.2026
Всем добрый день, выкладываю программу часов с будильником на основе класса QLCDNumber. Здесь я пробовал самостоятельно создавал классы, впервые столкнулся с видимостью переменной одного класса из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru