![]() |
ООП
Прочитал тут простыню на хабре. И даже согласен, а что вы думаете по этому поводу?
Лично меня ну очень утомил труЪ ООП подход, который сейчас в моде - "ООП ради ООП". Часто чтоб сделать простое действие вижу пяток классов, которые призваны делать одно действие и один раз. Такое впечатление, что ООП взращивает поколение Чарльзов Дикенсов, а не программистов. |
Ответ: ООП
МНЕ НРАВИТСЯ ООП ПОДХОД К ПРОГРАММИРОВАНИЮ. Я ПОЛУЧАЮ ЭСТЕТИЧЕСКОЕ УДОВОЛЬСТВИЕ ОТ ГРАМОТНО ОРГАНИЗОВАННОГО ВЗАИМОДЕЙСТВИЯ КЛАССОВ. ВОЗМОЖНО, Я - ЧАРЛЬЗ ДИККЕНС.
|
Ответ: ООП
Цитата:
И да, я тут не гоню на юнити. Там ещё относительно всё в порядке. |
Ответ: ООП
Цитата:
Перед тем еще писал на "чистых" плюсах... чуть более утомительно, но все равно особого бугурта не испытывал. А какие вообще есть годные альтернативы? |
Ответ: ООП
Вложений: 1
Вложение 17194
раньше пилили всё ООП, но теперь юзаем ООП только как синтаксический сахар (методы и protected-private, нет наследования и виртуальных методов) из-за отсутствия стандарта на ABI пришлось самому писать указатель на метод (через прокси функцию) и считать что поля располагаются в памяти в таком же порядке как и в коде, плюс выравнивание тоже ручками (помните что в ARM надо чтобы флоаты были на 4 выравнены, а в MIPS чтобы каждый тип выравнен на свой размер - short на 2 байта, int и float - на 4 байта, но мы MIPS не держим :crazy:), расковыривать руками vtable оказалось как-то лениво в итоге ps. и да, никаких ексепшенов, никакого rtti, никакого stl, никаких realloc :crazy: ps2. и да, почти всё стараемся писать в map-reduce-by-design стиле, те массив данных и функция которая обрабатывает 1 элемент из него, это очень хорошо ложится на многопоточность в итоге, хотя бы с помощью OpenMP |
Ответ: ООП
У Страуструпа целый раздел посвящён, так сказать, философии программирования (никак не найду время изучить его более досконально).
Эпиграф к нему: Цитата:
Цитата:
Цитата:
|
Ответ: ООП
Цитата:
Мне надоели Маяковские да Толстые. Это когда чтоб реализовать простую задачу из разряда: 1) прочитать файл 2) выбрать нужные данные 3) записать выбранные данные куда либо Пишут 6-8 классов. Таки да. При этом активно используется наследование и инкапсуляция. Но нужно ли оно? Мой максимальный лимит вложенности наследования это 3 вложенных наследника. И то я потом сократил до 1 наследника. По моему сама концепция ООП уж очень утопична. Многим программистам прямо дух захватывает и они стараются написать "божественный" класс на все времена и случаи жизни. Этот класс растёт и цветёт, а потом приобретает себе ещё букет фабрик да менеджеров. По факту получается что текста много - профита мало. Мне приходится достаточно тесно работать с чужим кодом и я вижу что народ ударился в "графоманию" очень не слабо. Сейчас я имею в виду PHP 5.3, но я думаю в остальных яп есть похожие моменты. Иной раз открыв чужую самописную CMS или иной веб сервис я не понимаю откуда у автора столько времени и сил. Ведь раз я ковыряюсь в его коде он точно простофиля несмотря на весь его ООП фанатизм. Было дело выкинул из одного агрегатора аж 30 файлов с классами. Там были классы а-ля PHP код:
|
Ответ: ООП
Цитата:
если пользователь либы пишет для этого 5-8 классов, то это пипец. если автор либы пишет 5-8 классов, то видимо либа умеет читать не только с файла, а еще с памяти, с сети, с зип-архива, и напрямую с мозга пользователя. причем неважно сколько в либе классов, пользователь должен вызвать: Код:
file->open("file.txt"); Код:
file = FILESYSTEM<LoaclFile>()::getSingeltonPtr()->create("file.txt")->getPointer<Shared>(); |
Ответ: ООП
Что отвечать в опросе, если
Цитата:
Почему-то первый вариант ответа утверждает, что надо делать из классов всё, даже небо, даже иисуса, второй же - использовать классы в 1.5 местах, не более. Возможно, автор опроса - Дядя Петя. |
Ответ: ООП
Автор темы не знаком с таким направлением как Архитектуринг, что есть аналитический подход к задаче как с общей точки зрения так и с деталей базируясь возможностям проектирования на выбранном языке/ках.
Использую OOP, но не задрачиваюсь слишком тупо, т.к. бесит когда уже есть перебор абстрактных классов, и где разработка становиться просто адом. Также не нравиться когда разработчики API считают что определённый кастинг одной сущности в другую - доступная процедура, когда логически и интуитивно сущности имеют реально не много общего с точки зрения пользователя. ООП ради ООП - для опыта и развития способностей в работе с деталями ООП в определённом языке - полезное упражнение, но не рациональное направление в практическом программировании. Также если разрабатываю что-то, всегда задумываюсь о том, кто будет использовать интерфейс, пользователь (я или кто-то другой) или разработчик интерфейса. Когда разрабатываешь интерфейс, стараюсь не плодить классы, но и не писать сущности отвечающие за несколько операций, лучше инкапсулировать. А вот пользователь должен видеть простой и удобный интерфейс, который прозрачно сам о себе говорит. Лучший интерфейс - это когда пользователь знаком с общей концепцией и принципами, и затем используя Intellisense может программировать, практически не обращаясь в документацию. ООП - это мощная и сложная парадигма мышления, там слишком много свободы для многих, в которой они начинают теряться как в статье автор. Процедурное - не даёт столь большую свободу выбора, и многие кто не способны мыслить как архитектор самостоятельно, не смогут самостоятельно мыслить в ООП парадигме, а будут искать некие правила и нотации. Зла в ООП нету. Я ежедневно пишу на процедурных, событейных и ООП языках, и ООП люблю. |
Ответ: ООП
Цитата:
|
Ответ: ООП
Цитата:
|
Ответ: ООП
Цитата:
Цитата:
|
Ответ: ООП
Цитата:
|
Часовой пояс GMT +4, время: 12:11. |
vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot