Коммик (stalinist) wrote,
Коммик
stalinist

Category:

Про объектно-ориентированное программирование

justy_tylor: В ООП что-то работает. Но большая часть - муляжи из говна и соломы (типа design patterns).

Я -- специалист не большой, но мне тоже так кажется...

ДОПОЛНЕНИЕ 1. Вот что говорит А.Степанов, создатель STL:
Да. STL не является объектно-ориентированным. Я думаю, объектно-ориентированность является почти такой же раздутой фальшивкой (hoax), как и теории искусственного интеллекта. Мне еще не попадался интересный кусок кода, который пришел бы от этих объектно-ориентированных людей.

... Я нахожу объектно-ориентированное программирование технически неосновательным. Оно пытается разложить мир на части в терминах интерфейсов, которые изменяются в пределах одного типа. Чтобы иметь дело с реальными проблемами, вам нужны многосортные алгебры -- семейства интерфейсов, которые простираются на многие типы.

Я нахожу объектно-ориентированное программирование философски нездоровым. Оно утверждает, что всё является объектом. Даже если это так, это не очень интересно: сказать, что всё является объектом -- значит, не сказать вообще ничего.

Я нахожу объектно-ориентированное программирование неправильным методологически. Оно начинается с классов. Это как если бы математик начал с аксиом. Вы не начинаете с аксиом -- вы начинаете с доказательств. Только когда вы нашли кучу соотносящихся доказательств, вы предлагаете аксиомы. Вы заканчиваете аксиомами.

То же справедливо и в программировании: вы должны начать с интересных алгоритмов. Только когда вы хорошо их понимаете, вы можете предложить интерфейс, который позволит им работать.
ДОПОЛНЕНИЕ 2. Спасибо alj868 за ссылку 1:
I think part of the reason people in big companies like object-oriented programming is because it yields a lot of what looks like work. Something that might naturally be represented as, say, a list of integers, can now be represented as a class with all kinds of scaffolding and hustle and bustle.
и ссылку 2:
Object-oriented programming generates a lot of what looks like work. Back in the days of fanfold, there was a type of programmer who would only put five or ten lines of code on a page, preceded by twenty lines of elaborately formatted comments. Object-oriented programming is like crack for these people: it lets you incorporate all this scaffolding right into your source code. Something that a Lisp hacker might handle by pushing a symbol onto a list becomes a whole file of classes and methods. So it is a good tool if you want to convince yourself, or someone else, that you are doing a lot of work.
Tags: computers
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic
  • 41 comments