Как должны разрабатываться интерфейсы веб-приложений? - PullRequest
4 голосов
/ 28 октября 2009

Я создаю веб-приложение, и мне сказали, что использование парадигм объектно-ориентированного программирования влияет на производительность приложения.

Я ищу входные данные и рекомендации по выбору дизайна, которые приходят от перехода от функции One Giant к объектно-ориентированному интерфейсу программирования.

Чтобы быть более конкретным: если веб-приложение использовало ООП и создавало объекты, которые живут в течение очень короткого периода времени. Оправдывает ли снижение производительности создание объектов на сервере с использованием более функциональной (я думаю, здесь статические функции) конструкции.

Ответы [ 4 ]

1 голос
/ 28 октября 2009

Я не знаю о производительности, но она определенно облегчает обслуживание.

Я ищу информацию и рекомендации по выбору дизайна которые приходят от перехода от One Giant Функция для объектно-ориентированного Интерфейс программирования.

Как предположил Дэвид, для ответа на вышесказанное потребуется много страниц.
Возможно, вы должны смотреть на рамки. Они делают выбор дизайна для вас.

1 голос
/ 28 октября 2009

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

Что касается аргумента скорости, то это действительно проблема, только если вы действительно пытаетесь выжать каждую возможную последнюю унцию ЦП из сервера, который будет забит. В этом случае вы, вероятно, делаете что-то не так и вам нужно подумать о лучших / более серверах, или вы работаете в НАСА, или делаете это ради смеха.

0 голосов
/ 11 ноября 2009

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

0 голосов
/ 30 октября 2009

Самый популярный способ разработки веб-приложения с OOD / OOP - это использование шаблона Model-View-Controller. Подведем итоги 3-х основных участников:

Модель - Я работаю в проблемной области, которой вы манипулируете.

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

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

Начать с контроллера ...

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

То, что я здесь описал, соответствует тому, что вы ожидаете найти в чем-то вроде Ruby on Rails.

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

MVC - не единственный путь, есть другие шаблоны, такие как Model-View-Presenter и некоторые действительно необычные подходы, такие как серверы продолжения (например, Seaside), которые повторно используют одни и те же объекты между HTTP-запросами ...

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