Previous Entry Share Next Entry
photo25

Про ООП

dmzlj напомнил.

Если вы употребляете термин "ООП", то хорошо бы не забывать (хотя многие и вообще не знают), что нормальное ООП - это вот это, а вовсе не вот это.

This entry was originally posted at http://wizzard.dreamwidth.org/393947.html. It has comment count unavailable comments. Please comment there using OpenID.

  • 1
thedeemon October 8th, 2014
И как, получается? Можешь, не подглядывая, назвать ключевые моменты и отличия?

dmzlj October 8th, 2014

Никто Карделли не читал, поэтому что такое ООП никто не знает.

А тех, кто ко всяким SOLID аппелирует, можно в качестве курощения спросить,
могут ли они написать для своего language-of-choice верификатор, который будет
говорить, удовлетворяет код этим принципам или нет.

wizzard0 October 8th, 2014
Я собственно читал вначале SOLID, от чего у меня возникло некоторое WTF, потом почитал Карделли, посмотрел на эту выстраданную формализацию, после чего, собственно, и утвердился в том, что есть конечные автоматы, есть распределенные системы, есть функциональщина и прочие частные случаи, ну и еще есть онтологии и прочие модели, а ООП это попытка собрать это *всё* в одну кучу и утрамбовать все выступающие неровности до потери смысла, но зато чтобы можно было для людей не в теме рисовать красивые диаграммки и они не мешали работать :)

dmzlj October 8th, 2014
Ничего себе, кто-то его читал всё-таки. Когда я стал
готов читать Карделли, было уже понятно, что (мне) это
не нужно.

dennis_chikin October 8th, 2014
У него там последний комментарий хорош - про "неизвестно что". ;)

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

109 October 8th, 2014
ну не знаю. для меня ооп это (в порядке важности)

1. инкапсуляция
2. low coupling
3. high cohesion

слово полиморфизм сознательно не пишу.

nponeccop October 8th, 2014
+1, но это скорее общие принципы дизайна, применимые ко многим способам декомпозиции, не только к объектному

109 October 8th, 2014
а какая ещё есть декомпозиция? okay, возьмём business process decomposition, aka SADT. там нету ни инкапсуляции, ни другого, ни третьего.

also, декомпозиция != дизайн

belezbar October 8th, 2014
Второе, имхо, больше про организацию кода, а не про объекты.

wizzard0 October 8th, 2014
Блеск!

justy_tylor October 8th, 2014
А если написать наукообразный пейпер "денотационная семантика пыхыпы", то внезапно появится и "нормальный пыхыпы"? ;)

Есть множество языковых ООП-фич (включая полезные) и множество ООД-методик (в основном, говно и палки). И можно замерять их практическую полезность, исходя из определённых когнитивных установок, но "труЪ ФП" и "труЪ ООП" это темы для специальной олимпиады.

  • 1
?

Log in

No account? Create an account