[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: хочу научится ООП
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12
waldicom
Цитата (chee @ 13.08.2017 - 09:29)
Всё таки Марк Твен был прав.

Цитата (twin @ 13.08.2017 - 10:07)
Кстати, Марк Твен сказал еще одну мудрую вещь:

Господа, вот вы начитаные, а?!

_____________
Свои мозги еще никто не отменял.
Телепатов нету.
Ron
Цитата (twin @ 13.08.2017 - 10:19)
Вот Slim допустим имеет самый минимум, практически только оболочку для REST. Очень красивый и лаконичный микрофреймворк.

Ага, но главное он не имеет никакого отношения к ООП, вот, видимо, в чем его самый главный плюс. biggrin.gif

Цитата (twin @ 13.08.2017 - 10:19)
Можно не делать его единым целым. Вот к примеру Гугл. Большой проект? Хрен то там. Это много разных проектов.

Google эт ваще не проект, а корпорация у которой существует много различных продуктов, да.

Цитата (twin @ 13.08.2017 - 10:19)
как сейчас Симфони растаскивают, хотя это совсем не в два клика делается.

Именно в 2 клика, потому что фреймворк собран из компонентов, причем очень хорошо документированных. На гитхабе (packagist/composer) постонно можно встретить в сторонних библиотеках то один заюзанный компонент в качестве зависимости, то другой. Взаимодействие core компонентов основано на событиях. Если я ничего не путаю, под капотом особо не копался, сразу стало понятно что архитектура очень грамотная, туда если лезть только что б учиться.

Цитата (twin @ 13.08.2017 - 10:19)
Всё. Остальное должно решаться на уровне самодостаточных сервисов и хэлперов. Слой бизнесслогики располагается между инфраструктурой и сервисами.

Если следовать логике, что проект должен состоять из мелких независимых модулей, то никакая это не мультипарадигма, а самая банальная реализация (интеграция через) API. На каком уровне - вопрос другой. Может быть даже на самом банальном, через хранилища, но это она, интеграция. Тогда проект может состоять не то что из подпроектов на разных парадигмах, но и вообще на разных ЯП. Но мы говорим о неделимой части, потому что парадигма относится именно к ней. А интеграция совсем/абсолютно другая песня.

Кстати, в ООП, агрегирование реализуется очень хорошо, через интерфейсы. Вот он как раз твой API. Название даж одно и то ж, только API более абстрактное понятие, однако суть та же. Главный инструмент современного ООП не наследование, как считалось ранее, но именно делегирование (агрегирование) и полиморфизм. То есть возможность менять поведение без изменения сигнатуры. И то и другое плохо реализуется без контрактов. Чтобы следить за соблюдением контрактов нужна динамика, не статика. Вот и всё, получается ты сам же выступаешь за ООП постоянно. biggrin.gif Только интеграцию сильно независимых компонентов путаешь с мультипарадигмой. Если в проект чисто на ООП притащить библиотеку чисто на процедурке, это мультипарадигма? С моей точки зрения нет. Потому что она не оказывает никакого влияния на архитектуру, ибо "живет" (используется), как правило, в классах, то есть инкапсулирована.

Мультипарадигма, в моем понимании, это когда выполнялись-выполнялись на процедурке, потом вдруг побаловались в серединке ООП (контракты, DTO и т.д.) и закончили опять передачей 10-ти параметров в функцию display половина из которых optional. А еще передали колбэков, кинули пару исключений думая, что это аналог GOTO, хотя исключения штука низкоуровневая и когда в блок catch может прилететь что-то связанное с бизнес-логикой, за такое яйки рвут в приличных конторах. Напрочь. Вот это мультипарадигма, сиречь, говно! biggrin.gif biggrin.gif biggrin.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.