Разговоры на завалинке о ООП - страница 21

 
Nikolai Semko:
Воинствующие невежды - как точно и ёмко. Добавлю в свой словарный запас. :)) 
Ух ты! Оказывается этот термин использовался ещё мною обожаемыми  Еленой Ивановной и Константином Николаевичем Рерихами. 
Ничего не меняется в этом мире...
 
Andrei:

Да нет же, суть в другом. Есть банан, который нужно сьесть согласно логике программы, а приходится вместе с ним пожирать и пальму и чернозем с навозными удобрениями.

Ну нет.

Ты не видишь ни пальмы, ни чернозема, ни удобрений, ни обезьяны.  Все это - инкапсулировано, и ты не имеешь к этому доступа.

О том же и речь ! Это как раз в функциональном подходе - ты вынужден все это ЯВНО тащить за собой, чтобы получить банан. В ООП - это за тебя будет тащить компилятор. Ты - получаешь "банан" через договоренный интерфейс, а откуда он взялся - тебе неизвестно. Ты можешь это узнать, если есть соответствующий доступ.

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

 
Andrei:

То что для нормальных людей мучение, то для мазохистов радость.. :)

Для нормальных людей мучение ограничить себя, пользуясь ножом ? Для нормальных людей мучение ограничить себя правилами движения, выезжая на дорогу ?
 
Я думаю авторы приведенных двух статей глубоко несчастные люди, которые всю жизнь занимались не своим делом. Так, к сожалению, часто происходит. Им нужно было быть писателями, а не программистами. Очевидно, что свою нелюбовь к нелюбимому делу они выразили через наезд на ООП. Наверное, их можно понять чисто по человечески :)) Ведь парадигму ООП по-настоящему могут понять только реальные программисты, влюбленные в свое ремесло.
 
 

Можно представить что ООП это ваш дом, со своими правилами. Есть вещи которые общий для всех. Это стол стулья, вилки, ложки и т.д. Но есть вещи, которые даже жителям этого дома не доступны. Например это личные вещи, сейф и.д.

Владелец сейфа может дать доступ к этому сейфу. Чужие люди не имеют права без разрешения войти этот дом. 

С помощью класса можно описать этот дом, то что в нем находится с определенными функциями каждого.  А сам дом это объект.

ООП это как наша жизнь. Похож на человека и состоит из двух частей: из души, которая описывает и управляет его,  и физическое тело, которое является объектом.

ООП это дисциплина, а не анархия кто что хочет то и делает.

 
Nikolai Semko:
Ведь парадигму ООП по-настоящему могут понять только реальные программисты, влюбленные в свое ремесло. 

Не обязательно.

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

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

Так и тут.

 
George Merts:

Не обязательно.

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

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

Так и тут.

Так я о том же...
 
Renat Fatkhullin:

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

С трудом представляю проект даже на 10К строк без ООП. Таких, наверное, единицы.

 
Renat Fatkhullin:

Дядя теоретик и балабол, как и большинство из академической среды. И не важно, что он профессор(звание давно инфлировало) и автор книг.

Этот надерганный бред из фраз давно гуляет и совершенно игнорирует экспоненциальный рост сложности программных продуктов. То, что было 30-20-10 лет назад, ни в какой степени не сравнимо с масштабами и сложностью текущих проектов. А они все еще предпочитают в песочнице играть, сводя к моделькам.

Посадить его сделать реальный продукт, у которого масса требований, включая ресурсные, экономические и конкурентные. Мгновенно сольет со своими рассуждениями, провалив все, что можно. Скорее даже выгонят за детское капитанство на этапе проработки решения.

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

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

Будет еще больше попыток придумать еще более простые языки, чтобы соответствовать все более понижающему массовому уровню программистов. Все больше софтверных компаний окажутся у разбитого корыта, просто поверив не в ту технологию и проиграв в конкурентной гонке. Просто их конкуренты будут использовать более тяжелые, но эфффективные по продуктовому результату технологии.

Уже давно инвестиции в софтверные компании - это смертельная вещь. Смертность и провалы потрясающие, а дальше будет хуже.

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

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

Выводы:

  1. сложность проектов растет и будет расти
  2. масса новых идей и подходов будут умирать, так и не дав результата
  3. основная масса софта пишется и будет писаться в ооп, тяжело и с надрывом
  4. инвестиции в софтверные стартапы будут показывать все больший процент провала. это бизнес, где профессорам делать нечего
  5. выхода нет - только боль и страдания

Все это хорошо и красиво только на словах....

Что бы создавать большие и интересные проекты на ООП надо это уметь.

1 - Те кто умеют не идут сюда в мкл, язык ограниченный парой платформ, и они профи (уже при проектах на других языках) уже при деле...

2 - А те кто не умеют, будут крутить ООП и другое как мартышки и ничего не родят..

Да конечно, есть единицы фанаты фин рынков, но это слишком мало что бы сделать что то серьезное и на этом устроить себе жизнь... Основной интерес...

Я то к чему, Ренат, мт 5 вот вот будет 10 лет, 10 лет это не шутка.. 

А толкового  обучения программировать на ООП нет...

Тема в которой я написал о чем ? Об ООП и к чему она скатилась ? К флуду...

Вопрос к Вам Ренат, как или откуда должны появиться люди, программирующие большие проекты на мкл ???

 
Vladimir Pastushak:

как или откуда должны появиться люди, программирующие большие проекты на мкл ???

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

Максимум - полуавтоматы.

Хоть один большой проект в виде полуавтомата на любом языке? Самое сложное - скальперские приводы. Но они никогда не обладали массовостью. А если нет массовости, зачем заморачиваться на что-то большое? Проще на одной коленке для Маркета собрать что-нибудь.
Причина обращения: