Вот в общем то прочитал статью и задумался
|
|
vasua99 | Дата: Понедельник, 30 Декабря 2013, 11:53 | Сообщение # 1 |
GNU follower
Сейчас нет на сайте
| Сама статья: Почему ООП провалилось?
Как то задумался. А ведь на самом деле так выходит. Суть в том, что компьютер понимает только свой язык. И такие языки как C, B и т.д больше к нему приближенны чем допустим C++, D, C#, Java.
И в итоге получается что ООП всего лишь костыль, панацея от сложности "процедурных" програм. Только вот такие проекты как Linux(+Unix), Apache, CPython, JVM показывают обратное.
На самом деле меня тоже всегда больше тянуло к процедурному программированию. Как то проще все выходит, код читается проще(разве что только не всегда разгребаются костыли, да еще и специфичные свойства языка встречаются, о которых не каждый знает).
ООП будет полезно если только предварительно хорошо спроектировать структуру проекта. А на это может уйти больше времени, чем разделить проект на несколько мелких задач. В итоге обычно выходит куча классов зависимых друг от друга. И изменение одного карается *censored* мозгов в течении дня/недели/месяца. В итоге проще переписать все, либо вернуть как было и писать костыли-адаптеры.
Из действительно классных языков поддерживающих считаю только Python. Но тут не только ООП, а еще и динамическая типизация(которая рвет обобщенное программирование вкупе с полиморфизмом статически типизированных языков), рефлексия и т.д.
А как вы насчет всего этого думаете?(помидорами не убивать, кидать можно)
Жизнь игра, и мы в ней пешки... А я кушаю пельмешки)
|
|
| |
stalker5889 | Дата: Понедельник, 30 Декабря 2013, 12:04 | Сообщение # 2 |
Свободный игродел
Сейчас нет на сайте
| Цитата vasua99 ( ) что ООП всего лишь костыль Скажи это разработчикам всех-игр-в-которые-ты-играл.
|
|
| |
vasua99 | Дата: Понедельник, 30 Декабря 2013, 12:29 | Сообщение # 3 |
GNU follower
Сейчас нет на сайте
| Ну я бы сказал это багам, которых там дофигища(особенно с самого начала продаж). Тем более я не хочу сказать что ООП совсем УГ. Я хочу сказать, что по сути ООП большой костыль, которые придумали обкуренные люди(ох, чувствую кучу помидоров ). Ибо на Си можно писать проекты размером не менее проектов на С++ и ему подобных, при том что поддерживать их будет не тяжелее. Хотя хочу сказать, что ООП не такое УГ, как обощенное программирование . Ибо оно чуть более чем полностью состоит из костылей. И создать неопределенное поведение дело 5 минут(думаю говорить что обобщенный тип T и ссылку на тип T (T&) при вызове обобщенной функции компилятор считает равноправными не стоит).
Жизнь игра, и мы в ней пешки... А я кушаю пельмешки)
|
|
| |
Labirintik | Дата: Понедельник, 30 Декабря 2013, 12:32 | Сообщение # 4 |
постоянный участник
Сейчас нет на сайте
| Цитата stalker5889 ( ) Скажи это разработчикам всех-игр-в-которые-ты-играл. Окей скажу разработчикам игр на Sega mega drive
|
|
| |
stalker5889 | Дата: Понедельник, 30 Декабря 2013, 12:52 | Сообщение # 5 |
Свободный игродел
Сейчас нет на сайте
| Цитата vasua99 ( ) Я хочу сказать, что по сути ООП большой костыль, которые придумали обкуренные люди Как по мне - ООП это то что сильно упрощает разработку игр, и называть такой мощный инструмент "костылём, которые придумали обкуренные люди" как минимум некорректно. Большинство современных игр написано с использованием ООП. Хотя, если не хочется "костылить" можно писать на бейсике или ассамблере, уверен что такие игры превзойдут костыльные скайрим с моровиндом. Так же есть много нехороших движков с ООП - unity, гамак и другие.
|
|
| |
AlexRabbit | Дата: Понедельник, 30 Декабря 2013, 13:06 | Сообщение # 6 |
старожил
Сейчас нет на сайте
| Цитата vasua99 ( ) Как то задумался. А ведь на самом деле так выходит. Суть в том, что компьютер понимает только свой язык. И такие языки как C, B и т.д больше к нему приближенны чем допустим C++, D, C#, Java. Double facepalm. You made my day
Сообщение отредактировал AlexRabbit - Понедельник, 30 Декабря 2013, 13:11 |
|
| |
Andrey_M | Дата: Понедельник, 30 Декабря 2013, 13:06 | Сообщение # 7 |
старожил
Сейчас нет на сайте
| Цитата vasua99 ( ) Почему ООП провалилось? Ага. Оглушительный провал изобретателя колеса!
ООП... я не знаю, о чём вы говорите. Я не писал на C, джаве и многих таких языках. Поэтому я не не имею данных о ООП в данных языках.
На паскале я использую классы для создания однотипных врагов, и всё тут.
Поэтому разработчики игр тоже ходят на костылях.
ЪЪЪЪ! Лучшая благодарность - плюс в репутацию :-)
|
|
| |
-l33t-h4xx- | Дата: Понедельник, 30 Декабря 2013, 13:07 | Сообщение # 8 |
участник
Сейчас нет на сайте
| Большинство больших программ на С спроектированы с применением понятия объекта в том или ином виде. Посмотрите сами: в любой не-ООП библиотеке вам предлагаются структуры данных и функции для их обработки. Всё это в совокупности - в некотором роде расчленённые объекты, просто без инкапсуляции, полиморфизма и прочих наследований.
То есть, само по себе рассуждение в терминах объектов - идея хорошая, её постоянно применяют и получают хорошие результаты даже процедурники. И это не совсем костыль - говорить так, значит считать, что страховка у альпиниста - тоже костыль, и он может без неё обойтись. Разумеется может, но без страховки лезть в высокие горы опасно.
Как правильно задавать вопросы
|
|
| |
AlexRabbit | Дата: Понедельник, 30 Декабря 2013, 13:13 | Сообщение # 9 |
старожил
Сейчас нет на сайте
| Особенно забавно читать посты людей, которые даже не видят разницы между ЯЗЫКАМИ ПРОГРАММИРОВАНИЯ и ПАРАДИГМАМИ ПРОГРАММИРОВАНИЯ.
|
|
| |
Archido | Дата: Понедельник, 30 Декабря 2013, 13:25 | Сообщение # 10 |
Сэнсэй
Сейчас нет на сайте
| ТС не осилил ООП и теперь пытается убедить себя, что енто ООП и все с ним связанное - есть "костыль", поэтому осиливать ничего и не нужно.
C++ - он особенный. С помощью него можно не только выстрелить себе в ногу, но и повеситься в пустой комнате:)
|
|
| |
AlexRabbit | Дата: Понедельник, 30 Декабря 2013, 13:26 | Сообщение # 11 |
старожил
Сейчас нет на сайте
| ТС не осилил не только ООП, ТС не осилил даже базовые понятия программирования.
|
|
| |
vasua99 | Дата: Понедельник, 30 Декабря 2013, 13:38 | Сообщение # 12 |
GNU follower
Сейчас нет на сайте
| Цитата Archido ( ) ТС не осилил ООП и теперь пытается убедить себя, что енто ООП и все с ним связанное - есть "костыль", поэтому осиливать ничего и не нужно. А я и не говорил что осилил ООП. На это нужны годы практики, точно также, как чтобы осилить процедурное программирование. Цитата AlexRabbit ( ) Особенно забавно читать посты людей, которые даже не видят разницы между ЯЗЫКАМИ ПРОГРАММИРОВАНИЯ и ПАРАДИГМАМИ ПРОГРАММИРОВАНИЯ. А на языки я перевожу потому что хочу сказать об ООП именно в этих языках(например против ООП в Python не имею ничего против, хотя например инкапсуляции как таковой там нет, но это и не мешает отлично использовать этот язык), ибо ООП даже отчасти в процедурном программировании применяется. Хотя в некотором степени там упор больше на алгоритмы.
P.S Я впринципе так ожидал, что будут кидаться тухлыми помидорами, это тоже на самом деле забавно . А вот именно свою точку зрения, обьяснив адекватно ее, никто не выразил.
Жизнь игра, и мы в ней пешки... А я кушаю пельмешки)
|
|
| |
Labirintik | Дата: Понедельник, 30 Декабря 2013, 13:42 | Сообщение # 13 |
постоянный участник
Сейчас нет на сайте
| Цитата AlexRabbit ( ) ТС не осилил не только ООП, ТС не осилил даже базовые понятия программирования. Цитата Archido ( ) С не осилил ООП Вы щас напоминаете идиотов, которые думают что их любимая игра может не понравится, только если она не идёт
|
|
| |
stalker5889 | Дата: Понедельник, 30 Декабря 2013, 13:51 | Сообщение # 14 |
Свободный игродел
Сейчас нет на сайте
| Напоминает тему "Flash умирает". Цитата vasua99 ( ) А вот именно свою точку зрения, обьяснив адекватно ее, никто не выразил. Мне кажется многие современные игры сделанные с помощью ООП выразят всё лучше меня. А много ли игр сделано без ООП? (современных и конкурентоспособных)
|
|
| |
Matou | Дата: Понедельник, 30 Декабря 2013, 13:51 | Сообщение # 15 |
Исходный коТ
Сейчас нет на сайте
| У вас ООП головного мозга (с)
|
|
| |
al_mt | Дата: Понедельник, 30 Декабря 2013, 13:53 | Сообщение # 16 |
постоянный участник
Сейчас нет на сайте
| Регулярно слышу об "ущербности" ООП от парочки безработных "программистов". От программистов работающих по специальности, такого ни когда не слышал
|
|
| |
AlexRabbit | Дата: Понедельник, 30 Декабря 2013, 14:03 | Сообщение # 17 |
старожил
Сейчас нет на сайте
| Цитата al_mt ( ) От программистов работающих по специальности, такого ни когда не слышал А я слышал неоднократно.
|
|
| |
al_mt | Дата: Понедельник, 30 Декабря 2013, 14:25 | Сообщение # 18 |
постоянный участник
Сейчас нет на сайте
| ООП не может быть ущербно. Точно так же как не может быть ущербно сложение или вычитание. Это просто инструмент для решения определённого круга задач.
Потому о его "ущербности" говорят, либо люди не осилившие "дао ООП" Либо осилившие ТОЛЬКО ООП и пытающиеся теперь решить с его помощью задачи, для которых, ООП совершенно не предназначено
...вот и весь ларчик собственно
|
|
| |
vasua99 | Дата: Понедельник, 30 Декабря 2013, 14:31 | Сообщение # 19 |
GNU follower
Сейчас нет на сайте
| Цитата stalker5889 ( ) Мне кажется многие современные игры сделанные с помощью ООП выразят всё лучше меня. А много ли игр сделано без ООП? (современных и конкурентоспособных) Зависит конкретно что имеется ввиду под ООП. Написанные на языке, который поддерживает ООП(С++, Java, C#). Или сама концепция ООП. против самой концепции я не имею ничего против. Она и в Linux используется например. Ну вот языки со встроенной поддержкой довольно ушербны. Ущербны не в плане поддержки возможностей, а в плане костыльности этих возможностей. Из языков нормальная поддержка только у Python и Object C. Но Object C сами знаете где в основном применяется. Остается Python. Как по мне связка Си + Python будет намного проще для сопровождения и эффективнее, чем использовать те костыльные языки.Цитата al_mt ( ) От программистов работающих по специальности, такого ни когда не слышал biggrin Ну конечно. Если тебе предложили бы ездить на мерсе с зарплатой 100$ или на запорожце с зарплатой 2000$, то что бы ты выбрал? Думаю обьяснять ничего не стоит.
Цитата stalker5889 ( ) Мне кажется многие современные игры сделанные с помощью ООП выразят всё лучше меня. А много ли игр сделано без ООП? (современных и конкурентоспособных) А назовите хоть один конкурентоспособный(если они вообще есть) видеодрайвер написанный на ООП языке? Нету? Отлично, пусть все рендерится с помощью CPU. Тогда и все современность идет далеко назад(И не говорите что в драйверах ярко выраженно ООП. Обычно там куча кода, который оперирует структурами. Причем особо не видно чтобы у КАЖДОЙ структуры были свои методы)
Жизнь игра, и мы в ней пешки... А я кушаю пельмешки)
Сообщение отредактировал vasua99 - Понедельник, 30 Декабря 2013, 14:33 |
|
| |
Labirintik | Дата: Понедельник, 30 Декабря 2013, 14:41 | Сообщение # 20 |
постоянный участник
Сейчас нет на сайте
| вот Топ саммых популярный Языков программирования и у него на первом месте язык без ООП, ну согласен это не аргумент
|
|
| |