Понедельник, 23 Декабря 2024, 20:10

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Вот в общем то прочитал статью и задумался
vasua99Дата: Понедельник, 30 Декабря 2013, 11:53 | Сообщение # 1
GNU follower
Сейчас нет на сайте
Сама статья: Почему ООП провалилось?

Как то задумался. А ведь на самом деле так выходит. Суть в том, что компьютер понимает только свой язык. И такие языки как C, B и т.д больше к нему приближенны чем допустим C++, D, C#, Java.

И в итоге получается что ООП всего лишь костыль, панацея от сложности "процедурных" програм. Только вот такие проекты как Linux(+Unix), Apache, CPython, JVM показывают обратное.

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

ООП будет полезно если только предварительно хорошо спроектировать структуру проекта. А на это может уйти больше времени, чем разделить проект на несколько мелких задач.
В итоге обычно выходит куча классов зависимых друг от друга. И изменение одного карается *censored* мозгов в течении дня/недели/месяца. В итоге проще переписать все, либо вернуть как было и писать костыли-адаптеры.

Из действительно классных языков поддерживающих считаю только Python. Но тут не только ООП, а еще и динамическая типизация(которая рвет обобщенное программирование вкупе с полиморфизмом статически типизированных языков), рефлексия и т.д.

А как вы насчет всего этого думаете?(помидорами не убивать, кидать можно) biggrin


Жизнь игра, и мы в ней пешки... А я кушаю пельмешки)
stalker5889Дата: Понедельник, 30 Декабря 2013, 12:04 | Сообщение # 2
Свободный игродел
Сейчас нет на сайте
Цитата vasua99 ()
что ООП всего лишь костыль

Скажи это разработчикам всех-игр-в-которые-ты-играл.


vasua99Дата: Понедельник, 30 Декабря 2013, 12:29 | Сообщение # 3
GNU follower
Сейчас нет на сайте
Ну я бы сказал это багам, которых там дофигища(особенно с самого начала продаж). Тем более я не хочу сказать что ООП совсем УГ. Я хочу сказать, что по сути ООП большой костыль, которые придумали обкуренные люди(ох, чувствую кучу помидоров surprised ). Ибо на Си можно писать проекты размером не менее проектов на С++ и ему подобных, при том что поддерживать их будет не тяжелее. Хотя хочу сказать, что ООП не такое УГ, как обощенное программирование wink . Ибо оно чуть более чем полностью состоит из костылей. И создать неопределенное поведение дело 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. facepalm
You made my day


Сообщение отредактировал AlexRabbit - Понедельник, 30 Декабря 2013, 13:11
Andrey_MДата: Понедельник, 30 Декабря 2013, 13:06 | Сообщение # 7
старожил
Сейчас нет на сайте
Цитата vasua99 ()
Почему ООП провалилось?

Ага.
Оглушительный провал изобретателя колеса! biggrin biggrin

ООП... я не знаю, о чём вы говорите. Я не писал на 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 Я впринципе так ожидал, что будут кидаться тухлыми помидорами, это тоже на самом деле забавно smile . А вот именно свою точку зрения, обьяснив адекватно ее, никто не выразил.


Жизнь игра, и мы в ней пешки... А я кушаю пельмешки)
LabirintikДата: Понедельник, 30 Декабря 2013, 13:42 | Сообщение # 13
постоянный участник
Сейчас нет на сайте
Цитата AlexRabbit ()
ТС не осилил не только ООП, ТС не осилил даже базовые понятия программирования.

Цитата Archido ()
С не осилил ООП

Вы щас напоминаете идиотов, которые думают что их любимая игра может не понравится, только если она не идёт
stalker5889Дата: Понедельник, 30 Декабря 2013, 13:51 | Сообщение # 14
Свободный игродел
Сейчас нет на сайте
Напоминает тему "Flash умирает". biggrin
Цитата vasua99 ()
А вот именно свою точку зрения, обьяснив адекватно ее, никто не выразил.

Мне кажется многие современные игры сделанные с помощью ООП выразят всё лучше меня. А много ли игр сделано без ООП? (современных и конкурентоспособных)


MatouДата: Понедельник, 30 Декабря 2013, 13:51 | Сообщение # 15
Исходный коТ
Сейчас нет на сайте
У вас ООП головного мозга (с)


al_mtДата: Понедельник, 30 Декабря 2013, 13:53 | Сообщение # 16
постоянный участник
Сейчас на сайте
Регулярно слышу об "ущербности" ООП от парочки безработных "программистов".
От программистов работающих по специальности, такого ни когда не слышал biggrin
AlexRabbitДата: Понедельник, 30 Декабря 2013, 14:03 | Сообщение # 17
старожил
Сейчас нет на сайте
Цитата al_mt ()
От программистов работающих по специальности, такого ни когда не слышал

А я слышал неоднократно.
al_mtДата: Понедельник, 30 Декабря 2013, 14:25 | Сообщение # 18
постоянный участник
Сейчас на сайте
ООП не может быть ущербно.
Точно так же как не может быть ущербно сложение или вычитание.
Это просто инструмент для решения определённого круга задач.

Потому о его "ущербности" говорят, либо люди не осилившие "дао ООП" biggrin Либо осилившие ТОЛЬКО ООП и пытающиеся теперь решить с его помощью задачи, для которых, ООП совершенно не предназначено tongue

...вот и весь ларчик собственно
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
постоянный участник
Сейчас нет на сайте
вот Топ саммых популярный Языков программирования и у него на первом месте язык без ООП, ну согласен это не аргумент
  • Страница 1 из 3
  • 1
  • 2
  • 3
  • »
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг