LINUX.ORG.RU
ФорумTalks

Отчего концепции Web-движков, такие страшные, может дело в html?


0

2

тема не для дев, потому что интересуют филосовские вопросы генерации html из любого яп, а не технические.

Вот допустим у нас есть три идеи:

- фигачим код вперемешку с html, это базовая, стреляет в ногу, в опу и вообще плохо, на клиенте не рендерится, дизайнеры в шоке, короче все плохо

- MVC - круто и прикольно, на каждую страничку три файла (представление.html, код.php, модель.хзчто), соотв. для реальной странички еще js, css, и все это умножить на 3 для шапки и «колонки слева» (т.е. 3 модели три ...), чтобы использовать код повторно приходится копипастить или ваять по 10 моделей, представлений и тп (дробить функционал)

- компонентные - да, мы собираем кучку компонентов как в обычном GUI, а потом движок берет страничку, внедряет в нее js, генерит составной css, тучи кусочков html собирает в кучку и если нам надо сделать шаг в сторону (кнопочку с ajax) то проще застрелиться, нет не потому что это сложно, а потому что приходится ваять на порядок больше кода недели в первом случае (хреначим все в дизайн), особенно приколько связывать js компоненты через серверный код

А где, господа, серебряная пуля то? Ведь GUI давно и качественно научились делать, почему с вебом такие сложности? Может надо выкинуть html? Или научится както иначе с ним работать?

Deleted

Последнее исправление: Deleted (всего исправлений: 1)

на каждую страничку три файла

o_O fail

В нормальном фреймворке роль контроллера выполняет сам фреймворк. Модель при желании можно совместить с представлением, но это изврат. Тем более, что одной моделью часто пользуется много представлений. В результате из трёх файлов обычно бывает... ну, скажем, 1.3

KRoN73 ★★★★★
()

Весь секрет в понимании расшифровки аббревиатуры HTML - Hyper TEXT Markup Language. Hyper Text != GUI вот и всё. Web 2.0 и прочие всякие вебы это отличный пример как НЕ нужно было делать, но ведь сколько закопано бабала! Надо отбивать вложения. :)

robot12 ★★★★★
()
Ответ на: комментарий от baverman

А по-моему, твоя миссионерская отдает BDSM.

Eddy_Em ☆☆☆☆☆
()

В вебе только и научились качественные гуи делать... Mac/iOS - это вообще кромешный мрак и беспросветный страх...

stevejobs ★★★★☆
()
Ответ на: комментарий от Deleted

и смены V

можешь пальцем ткнуть куда-нибудь, где сменили V, не выкинув приложение?

это так же, как говорить: «ну мы пока на MySQL попишем, а потом на Postgres перейдем, у нас же ORM». Вранье.

stevejobs ★★★★☆
()
Ответ на: комментарий от Deleted

у меня для тебя плохие новости - в каноническом MVC контроллер отвечает только за модификацию модели и все

у меня для тебя хорошие новости - каноническим MVC не пользуются тысячу лет как

stevejobs ★★★★☆
()
Ответ на: комментарий от Tark

про модели в MVC хотя-бы в википедии

википедию писали люди твоего уровня и для тебя, я тебе давал ссылки на первоисточники и называл литературу, кончай бредить

А если серьезно, может логика быть реализована без доступа к приватным членам класса или нет, какая разница?

если нет разницы то тебе вооще ооп ненужен - ибо ты его не понимаешь

Потому что там нужно не те плюсы предоставляемые активной моделью,

1) понятия активная модель - нет,

2) она не предоставляет плюсов

Deleted
()
Ответ на: комментарий от vasilenko

рендерингом занимается яваскрипт в браузере с помощью DOМ, а с сервером он обменивается данными в виде JSON. Это уже почти мейнстрим

это широко используется всего на 1 (одном) известном мне сайте

wxw ★★★★★
()
Ответ на: комментарий от stevejobs

можешь пальцем ткнуть куда-нибудь, где сменили V, не выкинув приложение?

при использовании патерна naked objects, например у меня то html генерится, то gson выдается зависит от параметров запроса

Deleted
()
Ответ на: комментарий от stevejobs

еще более хорошие - MVC просто не пользуются - половина не понимает что это, другая юзает вместо MVC какуюто порнуху, и еще прикрываются MVVC, скоро придумают какойнить HMMWV (Html Model Model Web View), выпустят кучу иконок для вознесения молитв и закопают

Deleted
()

на каждую страничку три файла (представление.html, код.php, модель.хзчто)

ну ты же знаешь как это выглядит в джанге. да, разные шаблоны.html, но однотипные странички можно выводить одним шаблоном, ну и включать шаблоны один в другой без копипаста. код тоже для всех views в одном файле, и код models в одном файле. и той реально большой кучи файлов зачастую не наблюдается.

Komintern ★★★★★
()
Ответ на: комментарий от Deleted

у меня такой критерий: предметная область должна быть достаточно отделена от реализации, настолько, чтобы веб-интерфейс можно было спокойно заменить командной строкой (или чем-то другим, подходящим для предметной области). Так называемый «сайт» - это всего лишь view для чего-то гораздо более большего. Соответственно, порнуха типа «а давайте напихаем весь код в ORM», «а давайте все запихаем в контроллер, который напишем в функциональном стиле» - все оно вызывает лютую попоболь. Точнее, рефакторинг этого.

а происходит эта порнуха имхо из-за недоязыков, технически завязанных на by-request, типа PHP. Люди начинают считать всякую ересь, что типа логика должна отработать за время перезагрузки страницы, поэтому мы намутим адский веб-ферймворк, который будет и жнец, и на дуде игрец, и DSL, и вообще.. а еще мы всю логику напихаем в модель, которая заодним будет ORM-bound и из нее сгенерится админка (чтобы закастомайзить которую придется скопипастать себе в код половину фреймворка, но мы об этом потом подумаем)

stevejobs ★★★★☆
()
Ответ на: комментарий от wxw

чудище, сайт читать надо а не сорцы смотреть

Deleted
()
Ответ на: комментарий от stevejobs

по моему такая порнуха происходит и в java (во всяком случае жирные модели тут частые гости), тут дело не в языках а в программистах

Deleted
()
Ответ на: комментарий от Deleted

зачем элементы дизайна тянуть на сервер когда его можно приклеить к шаблону

так JS теперь - часть бизнес-логики, а не деталь представления :) Чо не можем сделать на сервере - пусть делается у клиента. Ну и слои абстракции соответствующие, позволяющие перекидывать бизнес-логику туда-сюда между клиентом и сервером :)

//капитан успешно должил обстановку, разрешите вольно?

stevejobs ★★★★☆
()

по сабжу мне кажется, что HTML, как и JS - это просто «ассемблер для веба». Вместо процессора используется браузер. Скоро никто не будет писать на HTML и JS, как когда-то перестали писать на асме. Будут писать на сложных генераторах, выхлоп которых, пройдя миллионы слоев конпеляции, будет превращаться в HTML и JS. Только самые избранные и элитарные узкие специалисты будут уметь пользоваться тэгами :)

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

так JS теперь - часть бизнес-логики, а не деталь представления :)

s/a не/и/

и там еще был css

Deleted
()
Ответ на: комментарий от stevejobs

ну так и есть, только есть разрыв между большинство кодящим на друпале копипастом тегов и любителями gwt

Deleted
()
Ответ на: комментарий от Deleted

википедию писали люди твоего уровня и для тебя, я тебе давал ссылки на первоисточники и называл литературу, кончай бредить

Ты кидал одну ссылку на пару пдфок по MVC от Xerox PARC, в которых про модели написано весьма мало.

если нет разницы то тебе вооще ооп ненужен - ибо ты его не понимаешь

То, что кто-то считает, что логика которая может быть реализована без доступа к приватным членам класса должна реализована в стороннем сервисе, это не значит, что это истина в последней инстанции.

1) понятия активная модель - нет,

MVC очень разнообразная штука и термины используются по-разному. Но такое понятие есть и означает даже 2 вещи. За неимением более серьезного ресурса, посмотри о нем записи в msdn.

Но вообще хватит демагогии, были конкретные вещи которые я хотел обсудить. Было 2 проблемы, первая - подключение js из компонента кнопки, вторая - куда деть запрос по поиску рейсов. Для первой в конце концов я предложил просто добавить имя этого файла в конфиг шаблона компонента, и я не вижу здесь проблемы.
Для второй, выделить один класс который будет работать с рейсами и где будет проводится их поиск. Можно называть его моделью, можно называть велосипедом, можно хорьком, без разницы.
Что ты предлагаешь использовать для решения данных проблем?

Tark ★★
()
Ответ на: комментарий от Deleted

index.php твой путь

Ты встречал только index.php и интерпрайзное говнецо? Сочувствую.

baverman ★★★
()
Ответ на: комментарий от baverman

Каким это образом?

Допустим, сайт делается за год. Потом в течение 4-8 лет каждый божий день приходят люди, которые хотят модификации поведения старых фич и внедрения новых. Это жрет денег намного больше, чем изначальная разработка.

stevejobs ★★★★☆
()
Ответ на: комментарий от stevejobs

Каким это образом?

Что каким образом? Ты не понимаешь как легко тестируемый код может быть проще в поддержке?

baverman ★★★
()
Ответ на: комментарий от baverman

бгг, ты на своей авке слева или справа? а то про сервисы тебе рассказывать бесмысленно но хоть таблетки пропишу.

Deleted
()
Ответ на: комментарий от Deleted

Конечно, закатывать глазки, многозначительно повторять «сервис», «mvc», и пытаться найти на лоре серебрянную пулю это так профессионально, хе-хе.

baverman ★★★
()

нищие быдлокодеры жалуются на выдуманные проблемы

xtraeft ★★☆☆
()
Ответ на: комментарий от baverman

с тобой в техническом русле? не смеши орехи, ты за три страницы треда из технического только три буквы сказал mvc и то не факто что тупо не скопипастил, милка.

Deleted
()
Ответ на: комментарий от Deleted

XML прекрасно индексируется.

MVVC многословнее на 1 букву в названии?

grim ★★☆☆
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.