Re: Что-то нетак с ООП
От: mrTwister Россия  
Дата: 18.01.12 16:05
Оценка: :)
Здравствуйте, Artifact, Вы писали:

Да, да, во всем виновато ООП, а вовсе не кривые руки!
лэт ми спик фром май харт
Re: OOP is technically unsound
От: igna Россия  
Дата: 18.01.12 16:16
Оценка:
Здравствуйте, Artifact, Вы писали:

A>Я сильно начинаю сомневаться в полезности ООП.


Не ты один, вот к примеру цитата из интервью с автором STL.

I find OOP technically unsound.

Alex Stepanov


http://www.stlport.org/resources/StepanovUSA.html
Re: Что-то нетак с ООП
От: TimurSPB Интернет  
Дата: 18.01.12 16:45
Оценка: +2
Меня ООП в целом устраивает. Но меня бесит наследования реализации классов. Вот хоть убейте меня — мне не нравится.
Make flame.politics Great Again!
Re: Что-то нетак с ООП
От: 0x7be СССР  
Дата: 18.01.12 17:00
Оценка: +2
Здравствуйте, Artifact, Вы писали:

A>Почему так получается, что когда код представляет из себя набор классов, то такой код очень затрудлителен для понимания.

Это все потому, что единственной парадигмой программирования, которая обеспечивает читаемость программы, является не ООП и не ФП и не другое хП, а прямые руки и светлая голова программиста. А это приходит только с опытом. А уж на плюсах, лиспе или джаве он будет писать — дело десятое.
Re[2]: Что-то нетак с ООП
От: IT Россия linq2db.com
Дата: 18.01.12 17:11
Оценка: 9 (3) +1 :))) :))) :)))
Здравствуйте, 0x7be, Вы писали:

0>Это все потому, что единственной парадигмой программирования, которая обеспечивает читаемость программы, является не ООП и не ФП и не другое хП, а прямые руки и светлая голова программиста.


Для этого тоже существует аббревиатура — BDD (Brain Driven Development).
Если нам не помогут, то мы тоже никого не пощадим.
Re[3]: Что-то нетак с ООП
От: Vaako Украина  
Дата: 18.01.12 17:14
Оценка:
Здравствуйте, Enomay, Вы писали:
Не сработало разделение. В случае наследования — не сработало обобщение. В случае паттернов вообще молчу.

E>какой-то совершенно непонятный поток сознания.

E>вы б хоть по пунктам с примерами.

Осталось только определится с критерием понятного потока сознания. А вот с этим как раз большие проблемы. Даже если мы предположим что смена интерфейса (объекта, функции и т.п.) символизирует о нарушении в каком-то смысле задачи инкапсуляции, то как нам это измерить? Тем более что последний интерфейс вполне выполняет свою задачу, иначе нафига его оставили?

Только давайте без разговоров о правильном сознании, правильных программистах, правильном выборе интерфейса и правильных объектах, а также противопоставление всего этого программистам сомневающимся в ООП. Чего-то ООП не хватает, знать бы чего?
Re[2]: Что-то нетак с ООП
От: Vaako Украина  
Дата: 18.01.12 17:20
Оценка: +1
Здравствуйте, mrTwister, Вы писали:

T>Здравствуйте, Artifact, Вы писали:


T>Да, да, во всем виновато ООП, а вовсе не кривые руки!


Привет пряморуким, осталось выяснить у кого руки прямее. Давайте организуем конкурс, каждый будет оценивать кривость своих рук, ведь понятно что у всех остальных руки кривее чем у себя любимого. Или можно пройти тест, если через месяц программирования вас посещала мысль что нужно было программировать совсем не так то можете себя поздравить — у вас кривые руки
Re: Java vs. C#
От: Skynin Украина skynin.blogspot.com
Дата: 18.01.12 17:36
Оценка: 1 (1) +1
Здравствуйте, Artifact, Вы писали:

A>Что-то нетак с ООП

А с жизнью разве так? Смотрите, все в течение жизни болеют, маются всякими проблемами, а итог — помирають.

Сам посыл абсурден — куча ПО написано и работает как раз с использованием ООП, но вдруг с ним что-то не так.

А с чем извините все так? С ФП? И много на нем написано работающего годами ПО?
А может с логическим программированием все замечательно?

Что у нас еще есть — структурное? Да, ядро Linux — известная вещь.
Но с ним как, с структурным программированием — все так, все замечательно?


Присоединяюсь же к ответам в теме — проектировать нужно вначале. На чем бы потом ни кодировал.
А тяп — ляп — никакой подход программирования не простит.
Когда нужно больше чем вывести в консоль "Hello world!"
Re[3]: Что-то нетак с ООП
От: netch80 Украина http://netch80.dreamwidth.org/
Дата: 18.01.12 18:00
Оценка:
Здравствуйте, IT, Вы писали:

0>>Это все потому, что единственной парадигмой программирования, которая обеспечивает читаемость программы, является не ООП и не ФП и не другое хП, а прямые руки и светлая голова программиста.


IT>Для этого тоже существует аббревиатура — BDD (Brain Driven Development).


Если это и так, то расшифровка как Behavior Driven Development сейчас более популярна.
Надо заменить.
The God is real, unless declared integer.
Re[2]: Что-то нетак с ООП
От: batu Украина  
Дата: 18.01.12 18:37
Оценка:
Здравствуйте, Son of Northern Darkness, Вы писали:

SON>Здравствуйте, Artifact, Вы писали:


A>>И почему такая уверенность, что так и надо делать? Как им вдолбить простую истину, высказанную к сожалению не помню кем, что хороший код, это не тот код, в который нечего добавить, а код, из которого нечего выкинуть?


SON>Это не правда. Хороший код, это код в который можно расширить, не переделывая уже сделанную работу или переделывая минимально.

SON>Вот за этим ООП и нужно.

Не то что бы не правда. Просто устарело. Новые задачи требуют нового подхода.
Re[4]: Что-то нетак с ООП
От: IT Россия linq2db.com
Дата: 18.01.12 18:44
Оценка: +1 :))
Здравствуйте, netch80, Вы писали:

IT>>Для этого тоже существует аббревиатура — BDD (Brain Driven Development).


N>Если это и так, то расшифровка как Behavior Driven Development сейчас более популярна.

N>Надо заменить.

Это временное недоразумение.
Если нам не помогут, то мы тоже никого не пощадим.
Re[2]: Что-то нетак с ООП
От: batu Украина  
Дата: 18.01.12 18:59
Оценка:
Здравствуйте, LaptevVV, Вы писали:

LVV>Однако некоторые языки (Додиез и Ява, например) программу сразу считают неким классом. И тут легко скатиться от ясных и понятных процессов в полную неразбериху объектов... Инструмент как бы провоцирует...


Та а чем процедуры и функции не классы. Если в голове порядок, то классы сами организуются. Если в этом имеется смысл. у ООП единственный недостаток это жесткое наследование класс-объект. Чуть отличия у объекта так требуется новый класс, что не всегда разумно с предметной точки зрения. ИМХО, конечно.
Re[4]: Что-то нетак с ООП
От: Enomay  
Дата: 18.01.12 19:16
Оценка:
V>Осталось только определится с критерием понятного потока сознания. А вот с этим как раз большие проблемы. Даже если мы предположим что смена интерфейса (объекта, функции и т.п.) символизирует о нарушении в каком-то смысле задачи инкапсуляции, то как нам это измерить?

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

V>Тем более что последний интерфейс вполне выполняет свою задачу, иначе нафига его оставили?


а я не понимаю для чего вы меняли интерфейс, если он вполне выполняет свою задачу

V>Только давайте без разговоров о правильном сознании, правильных программистах, правильном выборе интерфейса и правильных объектах, а также противопоставление всего этого программистам сомневающимся в ООП. Чего-то ООП не хватает, знать бы чего?


от вас много слов, но о сферическом коне в вакууме. полно отсутствие какой либо конкретики. и для чего вы их пишете, совершенно непонятно.
Re[3]: Что-то нетак с ООП
От: Enomay  
Дата: 18.01.12 19:17
Оценка:
SON>>Это не правда. Хороший код, это код в который можно расширить, не переделывая уже сделанную работу или переделывая минимально.
SON>>Вот за этим ООП и нужно.

B>Не то что бы не правда. Просто устарело. Новые задачи требуют нового подхода.


любой подход, будь то ООП, будь то FP, требуют придерживания данного принципа. это основа.
Re[3]: Что-то нетак с ООП
От: mrTwister Россия  
Дата: 18.01.12 19:30
Оценка:
Здравствуйте, Vaako, Вы писали:

V>Здравствуйте, mrTwister, Вы писали:


T>>Здравствуйте, Artifact, Вы писали:


T>>Да, да, во всем виновато ООП, а вовсе не кривые руки!


V>Привет пряморуким, осталось выяснить у кого руки прямее.


Не, ну что ты, у тебя конечно же длиннее, только, вероятно, ООП мешает в полный рост встать
лэт ми спик фром май харт
Re[5]: Что-то нетак с ООП
От: Enomay  
Дата: 18.01.12 19:51
Оценка: 1 (1) +1 -3 :))
Здравствуйте, WolfHound, Вы писали:

WH>Здравствуйте, supacrazypusher, Вы писали:


S>>Для этого нужно нормально проектировать систему и управление зависимостями в ней. Если архитектура ужасная, модульности не и в помине и не делаются попытки улучшить ситуацию, то, боюсь, тут уже неважно ФП, ООП или брэйнфак.

WH>Практика показывает, что повторно использовать можно только тот код, который специально для этого проектировался.
WH>А это по факту исключительно библиотеки общего назначения.

ваша практика очень плохая и негодная.
Re[4]: Что-то нетак с ООП
От: batu Украина  
Дата: 18.01.12 20:02
Оценка:
Здравствуйте, Enomay, Вы писали:


SON>>>Это не правда. Хороший код, это код в который можно расширить, не переделывая уже сделанную работу или переделывая минимально.

SON>>>Вот за этим ООП и нужно.

B>>Не то что бы не правда. Просто устарело. Новые задачи требуют нового подхода.


E>любой подход, будь то ООП, будь то FP, требуют придерживания данного принципа. это основа.

Нам шашечки или ехать? Прадигма выбирается под задачу или наоборот? Я как-то не очень понимаю такие принципы. Но если хочется. Имеете право придерживаться
Re[3]: Что-то нетак с ООП
От: mrTwister Россия  
Дата: 18.01.12 20:18
Оценка:
Здравствуйте, batu, Вы писали:

B>Не то что бы не правда. Просто устарело. Новые задачи требуют нового подхода.


Какие конкретно задачи ты имеешь ввиду?
лэт ми спик фром май харт
Re[5]: Что-то нетак с ООП
От: Enomay  
Дата: 18.01.12 20:46
Оценка:
Здравствуйте, batu, Вы писали:

B>Здравствуйте, Enomay, Вы писали:



SON>>>>Это не правда. Хороший код, это код в который можно расширить, не переделывая уже сделанную работу или переделывая минимально.

SON>>>>Вот за этим ООП и нужно.

B>>>Не то что бы не правда. Просто устарело. Новые задачи требуют нового подхода.


E>>любой подход, будь то ООП, будь то FP, требуют придерживания данного принципа. это основа.

B>Нам шашечки или ехать? Прадигма выбирается под задачу или наоборот? Я как-то не очень понимаю такие принципы. Но если хочется. Имеете право придерживаться

вы даже не читаете исходное сообщение и не пытаетесь понять то, на что отвечаете. о чем еще можно говорить?
Re[6]: Что-то нетак с ООП
От: WolfHound  
Дата: 19.01.12 03:50
Оценка:
Здравствуйте, Enomay, Вы писали:

E>ваша практика очень плохая и негодная.

Ну, расскажи, как ты собрался повторно использовать кусок бизнеслогики?

Или вот, например https://github.com/rampelstinskin/ParserGenerator
Из всей этой горы кода единственное, что в теории можно использовать для чего-то еще это вот это:
https://github.com/rampelstinskin/ParserGenerator/blob/d06a33f1b4509d5b89baa1e960180551acb5d7d9/Nemerle.Parser.Macro/FSM/FSM.n
https://github.com/rampelstinskin/ParserGenerator/blob/d06a33f1b4509d5b89baa1e960180551acb5d7d9/Nemerle.Parser.Macro/FSM/FSMBuilder.n
https://github.com/rampelstinskin/ParserGenerator/blob/d06a33f1b4509d5b89baa1e960180551acb5d7d9/Nemerle.Parser.Macro/FSM/FSMTransform.n
https://github.com/rampelstinskin/ParserGenerator/blob/d06a33f1b4509d5b89baa1e960180551acb5d7d9/Nemerle.Parser.Macro/RangeSet.n
https://github.com/rampelstinskin/ParserGenerator/blob/d06a33f1b4509d5b89baa1e960180551acb5d7d9/Nemerle.Parser.Macro/UnicodeCategoryTable.n
И кое-что отсюда.
https://github.com/rampelstinskin/ParserGenerator/blob/d06a33f1b4509d5b89baa1e960180551acb5d7d9/Nemerle.Parser.Macro/Util.n

И как я и сказал это код общего назначения не завязанный на конкретную задачу.

Хотя ты можешь показать класс и продемонстрировать, как тут все можно передизайнить чтобы остальной код сгодился на что-то еще.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.