В последние лет 5 я, по большей части, имею дело с приложениями на базе Magento, в основу которой заложены идеи максимальной гибкости, расширяемости и адаптивности. Популярность Magento в e-commerce и количество сторонних модулей расширений к ней говорят о том, что эта платформа и реализованные в ней идеи скорее успешные, чем наоборот. В основу большого количества объектов в Magento заложена концепция универсального контейнера данных (Varien_Object в Magento 1 и MagentoFrameworkDataObject в Magento 2). Я нахожу у подобных универсальных контейнеров определенные параллели с такими явлениями, как
- POJO (Java)
- JSON
- XPath
- DOM
- СУБД (реляционные и не очень)
- SPA (Single Page Applications)
ну и в конце концов — с Гарвардской архитектурой ЭВМ, разработанной Говардом Эйкеном в 1930-х годах.Читать полностью »