Pull to refresh
0
0
miros @miros

User

Send message
Из той же оперы есть ещё eventmachine для ruby.
Кому интересно, могу почитать измышления Матью (тим лид фреймкворка), о том каким бы он хотел видеть вторую версию: framework.zend.com/wiki/display/ZFDEV2/Zend+Framework+2.0+Roadmap
А почему страницы отдаются в cp1251? Вы мешаете развитию прогресса ))
И если, конечно, это не секрет, сайт работает на каком-то пхп фреймворке или полностью самописный?
И, кстати, для чего в апаче загружены mod_python и mod_ruby, они где-то используются? Если нет, то ведь это же лишняя память…
Для генерации вашей главной страницы требуется 31 sql запрос.
Отладочную информацию через FirePHP в продакшене всё же показывать не стоит )
А ещё забыли такую широко распространённую дырку как Cross-site request forgery
У вас на сайте на странице «Группы» в слове участника пропущена буква «т».
а вы сами ямл парсите или чем-то готовым?
Привидённый конфиг для модуля User это настройки для какой-то своей ORM?
просто интересно :-)
Спасибо статьи про архитектуру всегда интересны! Вот только было бы здорово, если бы называли вещи по стандартной терминологии. Думаю, многим бы стало всё понятнее, если бы сказали, что запросы система обрабатывает по паттерну Front Controller, модули взаимодействуют по паттерну Observer, при доступе к базе данных используется Data Mapper в виде репозитария объектов. И несколько непонятно, как реализуется непосредственно логика работы приложения. Например, банальное добавление комментария. Хотелось бы простой пример именно на уровне кода или подробные диаграммы классов и последовательностей для типичной веб задачи. Больше картинок меньше слов :-)
Отличная идея! Verilog, как язык веб программирования! :-)
Ну тогда всё равно же придёться использовать какой-то распределённый кеш типа memcached, иначе как быть с обменом и актуальностью данных между серверами.
Ну да, производительность то схожая, но писать на тех же рельсах поприятнее. :)

Я просто к тому, что если всё так обычно, то зачем изобретать велосипед. Если бы использование С++ экономически оправдывалось мы бы в вебе чаще о нём слышали :). Тем более, скорее всего узким местом будет, как всегда, база данных.
Вам надо перестать думать о языке реализации и сразу подумать о масштабировании всего вашего хозяйства. Если это веб-проект то со временем нагрузки будут только расти, и вы очень быстро перейдёте грань, где преимущества в скорости С++ (пусть и в несколько раз) на интерпретируемыми языками уже не будут ничего решать. А сложностей разработки и масштабирования приложений на С++ больше. Да и почему php обязательно? Можно выбрать ruby или python, или даже эрланг(тем более с его возможностями по масштабированию). К тому же непонятно, какой характер носит приложение. Если оно делает какие-то тяжёлые вычисления, тогда имеет смысл думать о их реализации на С++ в виде процесса демона на бэкенде. А отдавать и генерировать фронтенд на С++ не стоящая свеч идея.
О чём именно? Если о том как работать с бизнес-логикой то есть отличная книжка Eric Evans Domain-Driven Design. Наверное, в ней не со всем можно согласиться, но читается она очень интересно.
Бизнес-логика в контроллере — это в корне неверный подход. Разделение: модель — данные, контроллер — логика работы с ними — это заблуждение, сформированное некоторыми туториалами по популярным фреймворкам, в которых такое разделение введено только лишь для простоты объяснения механизма MVC. На самом деле вся бизнес-логика должна размещаться в слое домена (то есть предметной области). Именно объектами этого слоя и манипулируют контроллеры, выполняя второстепенные сервисные действия, такие как создание, поиск и удаление объектов домена, авторизация и проверка данных (это спорно, очень многие относят это тоже к домену). Вообще, чем меньше кода в контроллерах тем лучше. Вся логика должны быть в объектах предметной области. Именно этот слой должен взаимодействовать с моделью данных путём делегирования либо, вообще, сливаться с ней полностью или частично, объединяя логику и механизмы персистивности (Active record).
спасибо.
А формально это называется нисходящий рекурсивный анализ.
Замечательная статья. Обязательно продолжайте писать!
Создать объект Zoo, если он ещё не существует.
Это очень распространнёная идиома на Javascript. Она почти во всём коде встречается :)
Пришлите и мне инвайт если остались, пожалуйста!
mmiross@gmail.com
Дождитесь хоть завтрашней презентации… Информации об этом телефоне пока почти нет.
select — это мультиплексированный ввод-вывод. Его вызов всё таки блокирует программу, пока один из дискрипторов не будет готов к чтению. А если задать таймайт то это будет polling т. е. опрос.

Information

Rating
Does not participate
Location
Москва и Московская обл., Россия
Registered
Activity