Форум программистов, компьютерный форум, киберфорум
ООП и паттерны
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
Результаты опроса: используете ли вы ооп
да 238 86.55%
нет 37 13.45%
Голосовавшие: 275. Вы ещё не голосовали в этом опросе

 
 
Рейтинг 4.76/461: Рейтинг темы: голосов - 461, средняя оценка - 4.76
81 / 39 / 3
Регистрация: 29.01.2010
Сообщений: 386

Стоит ли использовать ООП?

09.02.2010, 13:44. Показов 103047. Ответов 793
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте.
Возник такой вопрос: стоит ли использовать ооп. Даже не так, когда использовать ооп?
Иногда (даже чаще всего) легче написать простые функции, а не мутить с классами обектами и методами.
Раздражает инкапсуляция - какой вообще ее смысл? Чтобы получить переменную класса по правилам ооп нужно создавать метод для ее чтения? когда такой подход оправдан - ведь затрачивается куча лишнего времени.
5
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
09.02.2010, 13:44
Ответы с готовыми решениями:

Стоит ли использовать ООП -- часть вторая
У людей задающих подобные вопросы не все в порядке с пониманием ООП. Например, в параллельной теме человек интересуется: На самом...

Какие РЕАЛЬНО есть причины НЕ использовать ООП?
Появился такой вопрос. Все мы знаем о шумихе вокруг ООП, спорной идее наследования, других невнятных идей которых можно добиться...

Где стоит использовать bootstrap и стоит ли вообще использовать CSS фреймворки?
Здравствуйте. Лично я ужасаюсь ковырять стили, когда к сайту подключен bootstrap и мало понимаю, чем он хорош вообще. В данной теме я бы...

793
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
05.09.2013, 19:33
Студворк — интернет-сервис помощи студентам
Цитата Сообщение от MolodoyCoder Посмотреть сообщение
Процедурники вас не поймут. Хотя я не люблю вешать ярлыки на людей.
Вы использовали для объяснения краткий философский способ. Боюсь в этом моменте вас попытаются клевать и царапать. Хотя изначально создатели ооп понимали об абстракции и способе мышления как о необходимой части ооп лежащей в мозгу программиста. А не о реальных результатах жизни переменных.
О, может ты поучаствуешь:
Цитата Сообщение от korvin_ Посмотреть сообщение
а давай ты опишешь тип односвязный список на твоем любимом ООЯП, а я на не-ООЯП и посмотрим где проще, точнее и короче.
0
Комбинатор
 Аватар для DenQ
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
05.09.2013, 19:34
Цитата Сообщение от MolodoyCoder Посмотреть сообщение
Процедурники вас не поймут.
Конечно не поймут. Это как врач и обычный человек. Врач скажет двумя словами(терминами), то что на языке обычного человека будет звучать как диссертация
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
05.09.2013, 19:34
Цитата Сообщение от DenQ Посмотреть сообщение
Вопрос - зачем мне это?
Чтобы доказать высказывание:
Цитата Сообщение от DenQ Посмотреть сообщение
Программирование без ООП это как называть яблоко "вон та зеленая хрень", вместо просто "яблоко". В обоих случая вас скорее всего поймут, вопрос в красоте и скорости объяснения...
Или ты это просто так ляпнул не подумав? Или это так много времени отнимает в ООП? =))
0
Комбинатор
 Аватар для DenQ
980 / 252 / 13
Регистрация: 10.03.2010
Сообщений: 3,556
05.09.2013, 19:40
Цитата Сообщение от korvin_ Посмотреть сообщение
Чтобы доказать высказывание
Зачем мне тебе, что-то доказывать?

Добавлено через 2 минуты
Цитата Сообщение от korvin_ Посмотреть сообщение
Или это так много времени отнимает в ООП
Нет, просто мне не очень приятна мысль, что мной пытается манипулировать какой-то джуниор, выражающий свою позицию с пеной у рта...
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
05.09.2013, 19:41
Цитата Сообщение от DenQ Посмотреть сообщение
Зачем мне тебе, что-то доказывать?
Почему сразу только мне, всем. Ну да ладно, ляпнул так ляпнул, бывает.

Добавлено через 1 минуту
Цитата Сообщение от DenQ Посмотреть сообщение
Нет, просто мне не очень приятна мысль, что мной повелевает какой-то джуниор, выражающий свою позицию с пеной у рта...

Не по теме:

О, еще ляпы, «спасибо, посмеялся».

0
05.09.2013, 19:43

Не по теме:

Цитата Сообщение от korvin_ Посмотреть сообщение
О, еще ляпы, «спасибо, посмеялся».
Отчаянная попытка высмеять то, что не понимаешь... Браво!

0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
05.09.2013, 19:48
Цитата Сообщение от DenQ Посмотреть сообщение

Не по теме:

Отчаянная попытка высмеять то, что не понимаешь... Браво!

Не по теме:

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

0
05.09.2013, 19:55

Не по теме:

korvin_, уважаемый, во первых ты не предложил их обосновать, ты предложил их доказать, путем навязывания мне работы - написать код - а это уже прямая манипуляция.
Спрашивается, на кой черт, мне доказывать, что-то таким как ты? А если таких будет тысячи? так что мне теперь каждому доказывать так?

Так что остынь, вытри пену у рта и живи дальше...

0
 Аватар для MolodoyCoder
36 / 15 / 2
Регистрация: 02.09.2013
Сообщений: 565
05.09.2013, 19:57
Блин, господа, я понимаю что вы реальные кодеры, а не как я , что там почувствовал и подогнал килограммы к фотонам, но так сраться то зачем ? Было же довольно интересно...
Нет что бы дальше концептуально ООП vs Процедурка обливать, перешли на "Я сказал, но вы сказали.."
Тфу, как бабы блин. Простите.
0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,117
Записей в блоге: 2
05.09.2013, 20:31
Цитата Сообщение от MolodoyCoder Посмотреть сообщение
Нет что бы дальше концептуально ООП vs Процедурка обливать,
Ну лады, на живом примере
C++
1
2
3
4
5
class Test {
 virtual void Method1( void );
 virtual void Method2( void );
 ...
};
Полимопфизм, крутизнаааа... А как это исполнить на С, без плюсов?
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
05.09.2013, 20:43
Цитата Сообщение от Igor3D Посмотреть сообщение
Полимопфизм, крутизнаааа... А как это исполнить на С, без плюсов?
Что это? Я вижу только ничего не значащие Test, Method1, Method2...
0
 Аватар для MolodoyCoder
36 / 15 / 2
Регистрация: 02.09.2013
Сообщений: 565
05.09.2013, 20:46
фу, кака "virtual void Method1( void )"
особенно (void)
С динозаврами и то s= Достоевский.идиот
MessageBox.Show(s)
экран:
"сострадание"
И никаких гвоздей (C) не мое.
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
05.09.2013, 20:47
Цитата Сообщение от MolodoyCoder Посмотреть сообщение
Нет что бы дальше концептуально ООП vs Процедурка обливать, перешли на "Я сказал, но вы сказали.."
Ну хорошо, я там приводил ссылку, в статье перечислены некоторые минусы ООП, что скажешь про них?
0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,117
Записей в блоге: 2
06.09.2013, 09:15
Цитата Сообщение от MolodoyCoder Посмотреть сообщение
фу, кака "virtual void Method1( void )"
особенно (void)
С динозаврами и то s= Достоевский.идиот
MessageBox.Show(s)
экран:
"сострадание"
И никаких гвоздей (C) не мое.
Ну чего Вы растерялись? Ведь считается что полиморфизм - один из "китов" ООП. А я Вам прозрачно намекаю что это делается на простом С (где ни о каком ооп и не слыхали), причем не затрудняя дыхание.
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
06.09.2013, 11:28
Цитата Сообщение от korvin_ Посмотреть сообщение
Это объект класса «чертеж».
одна проблема, что такое "класс чертеж" =)

Задолго до появления C++, C#, Java был ОО язык в котором нет понятия класс, есть только объект.

Цитата Сообщение от Igor3D Посмотреть сообщение
А как это исполнить на С, без плюсов?
Не очень много программировал на Си, но как-то так:
C
1
2
3
4
5
6
7
8
typedef void (*Method)(void*);
 
struct Test
{
  Method method1;
  Method method2;
//...
};
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
06.09.2013, 11:42
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Задолго до появления C++, C#, Java был ОО язык в котором нет понятия класс, есть только объект.
И каково название этого языка?
0
1443 / 1326 / 131
Регистрация: 20.03.2009
Сообщений: 4,689
Записей в блоге: 11
06.09.2013, 12:25
Цитата Сообщение от korvin_ Посмотреть сообщение
И каково название этого языка?
сори. Smalltalk.

Добавлено через 2 минуты
Цитата Сообщение от korvin_ Посмотреть сообщение
Сообщение от MolodoyCoder
Да, и легко. Например чертеж многоквартирного дома.
Это объект класса «чертеж». =)
Объект класса "чертеж" или класса "чертеж многоквартирного дома"? =)
0
Эксперт функциональных языков программированияЭксперт Java
 Аватар для korvin_
4576 / 2775 / 491
Регистрация: 28.04.2012
Сообщений: 8,782
06.09.2013, 12:25
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
сори. Smalltalk.
В SmallTalk есть классы. А до него была Simula. Тоже с классами.

Добавлено через 34 секунды
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
Объект класса "чертеж" или класса "чертеж многоквартирного дома"? =)
Без разницы, второе -- подкласс первого. =)
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
06.09.2013, 12:37
Цитата Сообщение от korvin_ Посмотреть сообщение
В SmallTalk есть классы
Причём классы — это тоже объекты.
0
1977 / 833 / 115
Регистрация: 01.10.2012
Сообщений: 5,117
Записей в блоге: 2
06.09.2013, 12:55
Цитата Сообщение от Dmitriy_M Посмотреть сообщение
C
1
2
3
4
5
6
7
8
typedef void (*Method)(void*);
 
struct Test
{
  Method method1;
  Method method2;
//...
};
Ну там еще придется заполнять эти поля, но в принципе - да. Как видим, ничего сложного. Да, на плюсвх удобнее, естественнее, с этим никто не спорит. Но все это не сделает плохое приложение хорошим и наоборот. Более того, неоднократно наблюдал что чем проще/примитивнее средства - тем лучше результат. Это легко объясняется - "владеющий" (ооп или чем-то еще) в известной мере развращен избытком инструментария. Где уж там тщательно обдумывать, дай бог сожрать (хоть как-то запомнить) все плюшки, вот и бегает как лось по std::. boost:: и др. И тот virtual он писал так, "потому что прочитал".
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.09.2013, 12:55

Стоит ли учить ООП в одно время с Яп
Добрый день! Начал активно изучать c#. Читаю Шилдта в свободное от учебы время и стараюсь практиковаться и всё выходит пока нормально. Но...

Как использовать ООП в WinAvr
Класс я создал. А вот объект класса создать не получается! Полазив по интернету выяснил что оператор new не поддерживается компилятором! ...

Js class как правильно использовать ООП
Накидал вот такой простенький код, авторизация проходит, data.Access_token существует, но в this.Access_token почему то не сохраняется, не...

Когда следует использовать ООП в РНР?
Когда стоит учить ооп в РНР, если новичок в РНР? Стоит ли писать весь код в стиле ооп ?

WITH AS стоит ли использовать
Использую СУБД Postgresql, есть запрос SELECT * FROM Table1 WHERE Filed1 IN (SELECT Fileld1 FROM Table2 WHERE Fileld2='A' AND...


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

Или воспользуйтесь поиском по форуму:
360
Ответ Создать тему
Новые блоги и статьи
ИИ и человечность
kumehtar 21.07.2026
Забавно, что общаясь с ИИ, я замечаю, насколько он высказывается умно, и насколько верит в людей. Он умеет прощать. Он знает как отвечать не обесценивая опыт других людей, даже если сам не верит. Он. . .
Нейтральные знания ..., ... чистая наука. Пока что-то проходит модерацию на Хабре, стоит развить мысль ...
Hrethgir 20.07.2026
К таким радикальным взглядам я конечно в той публикации не приходил, но чтобы скоротать вечер, решил углубиться немного. 1. Почему показания термометра заряжены целью? Цель заложена в самом. . .
Установка нескольких штампов электронной подписи в строго определенных местах файла docx
ВладимирСамохин 19.07.2026
(В!) Работа с Электронной подписью - это неотъемлемая часть современного документооборота. Но что делать, если нужно поставить несколько штампов электронной подписи в строго определенных местах. . .
сукцессия 35. Научная статья о проделанной работе
anaschu 19.07.2026
Написал в формате латекс и пдф
Вангую, что это не пройдёт модерацию, и на неделе я запущу свой сервер.
Hrethgir 19.07.2026
Эта публикация сейчас в песочнице и ждёт приглашения. https:/ / habr. com/ ru/ sandbox/ 295048/ По ссылке 403. Не очень информативно такую ссылку постить. Запись от Usaga размещена Сегодня в 06:46 . . .
сукцессия 33. открытые вопросы от клауде
anaschu 19.07.2026
"Что накопилось за эту часть А — тринадцать правок, из которых шесть пришли из ваших вопросов и каждая оказалась реальной ошибкой, а не калибровкой: односторонний симбиоз, отсутствующий листопад,. . .
32 сукцессия
anaschu 19.07.2026
сукцессия 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не «подкручивает» сходимость —. . .
сукцессия 31: модель микоризы - это модель ещё нескольких явлений, социальных и экономических
anaschu 18.07.2026
Теория «Всего»: апдейт v1. 1. 2 — 28‑мерное ядро стабилизировано Коллеги, фиксирую разбор инженерных правок и их изоморфную проекцию на экономику, меметику и половой отбор. Модель теперь не. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru