Кирилл: Выбрать книжку, удалить книжку - это всего лишь примеры, для демонстрации самой концепции. Я ж не буду рассписывать детально и тратить часы своего времени на это только чтобы тебя убедить, сам понимаешь. И да, пусть будет хоть 1 000 000 запросов в секунду заточенных под контретную СУБД - и что? Ты думаешь суть меняется от этого? В таких случаях, обычно в этом же методе маппера пишется специфичная логика/запрос касатально этой СУБД. И да, насчет примеров - а я вот уверен (исходя из опыта), обычно когда что-нибудь с хайлодом или смежными областями, я обычно задаю вопрос на СерверФолт.ком и обычно находится какой-нить вменяемый чел, который внятно и адекватно обьясняет. И тебе советую. Попробуй.
Кирилл: Судя по твоим комментариям, у тебя нет опыта работы в реальных масштабируемых и ты видать не работал толком в реальных условиях. Но обо всем по порядку, итак: 1) Твои аргументы по поводу "проблематичности разных DB" рабиваются в пух и прах этим примером - pastebin.com/JSD8x0tf 2) Ты видать даже не понял сути паттерна Data Mapper. Крайне рекомендую почитать книгу Мартина Фаулера - Patterns of Enterprise Application Architecture (ну хотя бы на досуге, там это всё разжеванно). 3) Все примеры которые ты приводишь не уникальны - с этим уже давно сталкивались тысячи других разрабов и решения имеются, искать ответы надо на сайтах типа StackOverFlow и Программерс.Стакесченг.ком...
Кирилл: 1) pgTAP - специфичен для PG. А как для любой БД написать, а? 2) Что ха-ха-ха? Аргументов против типа больше нет? 3) Практика разделения концепций - формировалась десятилетиями, и это можно сказать закон качественной архитектуры. А кто сказал что использовать возможности СУБД нельзя в Data Mapper? лолки))) Это в ActiveRecord/ORM нельзя - да (хотя можно через "raw" методы, если имеются в наличии)
Кирилл: 1. Допустим в запросе используются переменные и выполняются вычисления. Как для этого написать фикстуры? А ну ка подскажи? 2) Не верно в корне. Есть такой паттерн, называется Data Mapper (martinfowler.com/eaaCatalog/dataMapper.html) - Будь то MySQL/Mongo/Arango/что-угодно - главное чтобы они реализовывали один интерфейс. 3) СУБД - может больше чем просто хранить данные, и это понятно. Но когда речь о веб-приложениях и масштабируемой архитектуре, ответсвенности должны разделятся.
Дмитрий: Воооу! 100 запросов в секунду!!! Кстати ты наверное слышал что 100 записей можно вставить в одном запросе тем же INSERT? Кстати, какой-скрипт вставий запись и какой соединение вообще не имеет значения - можешь проверить сам - вставь записи скриптами и посмотри результат через терминал - данные хранятся в конфиге таблиц движка. И кстати будь вставка в пять-десять таблци одновременно - помогает только MAX(id), а last_insert_id() будет фейлить - у меня была аналогичная задача, гуглил неделю - пришел к этому выводу.
Ты не прав. Быстрее это делается на Бутстрапе. Сделая на бутстрапе, ты автоматически сделаешь это в 10 раз быстрее, качественее, и решишь пролблему с адаптивностью. У тебя опыта маловата с Бутсрапоп самим, поэтому ты так думаешь. Как только наберешься его, ты изменишь своё мнение.
D' Normalization: 1) Да существует проблема с проиводительностью при нагрузках. Но ты не первый кто сталквается с этим, и эта проблема уже давным давно решена в виде отдельных расширений (кстати плагины не левые). Если ты не можешь настроить все по-человечески, это не значит, что другие будет фэйлить аналогично. Тысячи интернет магазинов в Европе работают на WP, ты наверное в курсе? 2) Ставить лимиты нужно в первую очередь, не для того чтобы оно работало, а для того чтобы не превышало указанные нормы в договоре хостера. Да и вообще оно редко требовалось на практике. Стандарта - 512МБ ОЗУ и 24МБ на инпут файлов очень часто хватает когда речь идет о типичных сайтах.
Максим Иванов: Твоя проблема в том, что у тебя мало опыта. Админка, твоего движка может даже удобнее выглядеть. А толку для заказчика то в этом? Ты пойми, ты потратишь много времени и сил на это, и оставить кучу дыр. А заказчику нужен всего лишь сайт, где можно хоть как-то редактировать контент. Ему плевать сколько сил и времени ты потратил. Ты стремишься сделать что-то лучше, когда заказчику это совершенно не нужно. В следующий раз, поставь себя на сторону заказчика, и представь что тебе важно если бы ты заказывал сайт.
D' Normalization: Неужели? Я делал магазины на WP + WooComerce и посещаемость была от 20-40 человек в день, а хостинг за 2$ в месяц. И ни разу не упало, и не было никаких претензий со стороны заказчика и сеошника. Все были довольны. Какие вирусы вообще? В более-менее стабильной CMS, все дыры давным давно прикрыты. А чтобы не выгоняли с хостинга, достаточно тупо прописать лимиты по памяти и на файлы, в том же .htaccess. И да, даже если ты не возмёшься за доработку чего-либо там, то возьмётся кто-нибудь другой.
Adamos: Любой, кто занимается разработкой типичных сайтов - визитки, магазины, корпоративы, должен по-умолчанию учитывать что сайт обязательно будет продвигатся. Ну а к чему примеры не стандартных сайтов здесь? CRM системы тоже не требуют продвижения, но речь идет о стандартных сайтах.
D' Normalization: Ну раз ты не улавливаешь сути давай так попробуем: допустим сайт повешен на WP. Сайт работает? Работает. Контент редактируется? Редактируется. Сроки нарушены? Нет, всё сделано очень быстро - 2 дня. Вероятны ли глюки со стороны CMS? Врятли, т.к CMS тестировалась много раз. Ну и что, что там около 90% ненужного кода внутри? Кого это волнует, когда всё работает и всё устраивает и хостинг стоит сущие копейки? Кому нужен сдался перфекционизм в плане кода, если он нарушены сроки, разработчик может оставить кучу дыр и недоработок? Да и кстати, у WP есть утилита которая убирает / скрывает всё ненужное с админики.
ramjke: Конечно видел по ссылке. Зачем предпологаю? Затем что опыт есть и самописные CMS видал много раз и то что многие начинающие не учитывают для SEO - это есть классика жанра.