MVC
От: Mohnatiy  
Дата: 23.11.08 12:08
Оценка:
помню 6 лет назад, с появлением ASP.NET одним из главных аргументов МС было то, что новая технология (на тот момент ASP.NET) позволяет разнести код между aspx и aspx.cs файлами и что код прямо в aspx это пережиток старины и сделан огромный прорыр. Сейчас смотрю видео по MVC и вижу уже в который раз картину до боли мне напоминающую старый ASP



Теперь MS отказывается от своих слов и перепутать html код с C# кодом уже есть круто?
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re: MVC
От: Aikin Беларусь kavaleu.ru
Дата: 23.11.08 12:32
Оценка: 9 (2) +2
Здравствуйте, Mohnatiy, Вы писали:

M>Теперь MS отказывается от своих слов и перепутать html код с C# кодом уже есть круто?

Нужно отделять код показа информации на странице от кода обрабатывающего данные нужеые на странице.

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


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

СУВ, Aikin
Re[2]: MVC
От: SE Украина  
Дата: 23.11.08 19:18
Оценка:
Здравствуйте, Aikin, Вы писали:

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

A>Когда же на странице присутствует код который отвечает за внешний вид этой страницы это хорошо. И плохо если этот код будет где-то в другом месте.

Провокациооный вопрос.

У меня на странице джавасрипт, который реализует простенький кредитный калькулятор. По сути это бизнес правила там. Это плохо, что я написал десять строк джаваскрита с бизнеслогикой рассчета? А хорошо будет, если я перенесу эти бизнес правила в серверный код, и буду городить кучу тормознутого аякса, чтоб выполнять рассчет из нескольких арифметических действий?
Re[3]: MVC
От: IB Австрия http://rsdn.ru
Дата: 23.11.08 19:32
Оценка: +4
Здравствуйте, SE, Вы писали:

SE>У меня на странице джавасрипт, который реализует простенький кредитный калькулятор. По сути это бизнес правила там. Это плохо, что я написал десять строк джаваскрита с бизнеслогикой рассчета?

Плохо, что у тебя этот код на странице, а не в отдельном .js файле.
... << RSDN@Home 1.2.0 alpha 4 rev. 1082>>
Мы уже победили, просто это еще не так заметно...
Re[3]: MVC
От: Aikin Беларусь kavaleu.ru
Дата: 24.11.08 08:36
Оценка:
Здравствуйте, SE, Вы писали:

SE>Провокациооный вопрос.

Провакационный ответ. Шутка

SE>У меня на странице джавасрипт, который реализует простенький кредитный калькулятор. По сути это бизнес правила там. Это плохо, что я написал десять строк джаваскрита с бизнеслогикой рассчета? А хорошо будет, если я перенесу эти бизнес правила в серверный код, и буду городить кучу тормознутого аякса, чтоб выполнять рассчет из нескольких арифметических действий?

Мы имеем дело с клиент-серверным приложением, которое делится на две части: клиентскую и серверную. В идеальном случае клиент занимается только отображением. Но мы живем не в идеальном мире и за каждое обращение к серверу приходится платить...

Но мы сейчас не об этом. А о том, что на стороне сервера в коде страницы не должно быть серверной бизнесс логики.

СУВ, Aikin
Re: MVC
От: mogadanez Чехия  
Дата: 24.11.08 12:25
Оценка: 24 (1)
Здравствуйте, Mohnatiy, Вы писали:

M>Теперь MS отказывается от своих слов и перепутать html код с C# кодом уже есть круто?


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

* MVC действительно идет другим путем, но та разница что вы увидели всего лишь верхушка. проблемы у вебформ гораздо глубже и серьезнее чем разделение/не разделение кода
Re[2]: MVC
От: Idsa Россия  
Дата: 24.11.08 12:35
Оценка:
Здравствуйте, mogadanez, Вы писали:

M>* MVC действительно идет другим путем, но та разница что вы увидели всего лишь верхушка. проблемы у вебформ гораздо глубже и серьезнее чем разделение/не разделение кода

А нельзя ли на этом моменте поподробнее? Я сам не очень доволен Web Forms, но все же хотел бы услышать, какие проблемы видите Вы?
... << RSDN@Home 1.2.0 alpha 4 rev. 1096>>
Re[3]: MVC
От: mogadanez Чехия  
Дата: 24.11.08 13:22
Оценка: 3 (1)
Здравствуйте, Idsa, Вы писали:

I>Здравствуйте, mogadanez, Вы писали:


M>>* MVC действительно идет другим путем, но та разница что вы увидели всего лишь верхушка. проблемы у вебформ гораздо глубже и серьезнее чем разделение/не разделение кода

I>А нельзя ли на этом моменте поподробнее? Я сам не очень доволен Web Forms, но все же хотел бы услышать, какие проблемы видите Вы?


писал здесь
Автор: ncoder
Дата: 16.08.08
. почитайте, если будут еще вопросы — отвечу с удовольствием
Re[3]: MVC
От: Aikin Беларусь kavaleu.ru
Дата: 24.11.08 14:10
Оценка:
Здравствуйте, Idsa, Вы писали:

M>>* MVC действительно идет другим путем, но та разница что вы увидели всего лишь верхушка. проблемы у вебформ гораздо глубже и серьезнее чем разделение/не разделение кода

I>А нельзя ли на этом моменте поподробнее? Я сам не очень доволен Web Forms, но все же хотел бы услышать, какие проблемы видите Вы?
Мне нравится как на эту тему рассуждает Sinclair поищи по форуму по нему и чего нить типа ViewState или PostBack (постбек)...
Re[4]: MVC
От: q__q  
Дата: 24.11.08 14:13
Оценка:
Здравствуйте, IB, Вы писали:

SE>>У меня на странице джавасрипт, который реализует простенький кредитный калькулятор. По сути это бизнес правила там. Это плохо, что я написал десять строк джаваскрита с бизнеслогикой рассчета?

IB>Плохо, что у тебя этот код на странице, а не в отдельном .js файле.

То есть когда бизнес правила — в отделном .js — это хорошо?
Re[5]: MVC
От: IB Австрия http://rsdn.ru
Дата: 24.11.08 14:26
Оценка:
Здравствуйте, q__q, Вы писали:

__>То есть когда бизнес правила — в отделном .js — это хорошо?

Хорошо, когда бизнес правила в отдельном.
... << RSDN@Home 1.2.0 alpha rev. 673>>
Мы уже победили, просто это еще не так заметно...
Re[6]: MVC
От: q__q  
Дата: 24.11.08 14:28
Оценка: :)
Здравствуйте, IB, Вы писали:

__>>То есть когда бизнес правила — в отделном .js — это хорошо?

IB>Хорошо, когда бизнес правила в отдельном.

Оч. убедительно. Сразу все вопросы отпали.
Re[7]: MVC
От: Воронков Василий Россия  
Дата: 24.11.08 14:30
Оценка:
Здравствуйте, q__q, Вы писали:

__>Оч. убедительно. Сразу все вопросы отпали.


Модифицирование BL — это отдельная задача, которая не должна приводить к модифицированию логики UI.
Так понятнее?
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[8]: MVC
От: q__q  
Дата: 24.11.08 14:57
Оценка:
Здравствуйте, Воронков Василий, Вы писали:

__>>Оч. убедительно. Сразу все вопросы отпали.


ВВ>Модифицирование BL — это отдельная задача, которая не должна приводить к модифицированию логики UI.

ВВ>Так понятнее?

Мне-то все понятно. Только вот если мы перенесем плохой код в отдельный файл, это никак не сделает его лучше.
Так понятнее?
Re[9]: MVC
От: Воронков Василий Россия  
Дата: 24.11.08 15:00
Оценка:
Здравствуйте, q__q, Вы писали:

__>Мне-то все понятно. Только вот если мы перенесем плохой код в отдельный файл, это никак не сделает его лучше.

__>Так понятнее?

Лучше не сделает. Но упростит его последующую переделку, которая за собой не потянет изменения в UI и не окажется, что для переделки бизнес-логики нам надо еще и ГУЙ переписывать.
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Re[9]: MVC
От: mogadanez Чехия  
Дата: 24.11.08 15:06
Оценка:
__>Мне-то все понятно. Только вот если мы перенесем плохой код в отдельный файл, это никак не сделает его лучше.
__>Так понятнее?

если JS настолько сложный что в нем есть свои понятия View и Controller, то его( JS ) тоже следует бить на эти самые View и Controller, причем ЯВНО. к слову сказать Js controller тоже замечательно поддается тестированию
Re[9]: MVC
От: IB Австрия http://rsdn.ru
Дата: 24.11.08 15:46
Оценка: +1
Здравствуйте, q__q, Вы писали:

__> Только вот если мы перенесем плохой код в отдельный файл, это никак не сделает его лучше.

В данном разговоре нигде не обсуждается пролохость/хорошесть кода, обсуждается лишь где его размещать.
Так понятнее?
... << RSDN@Home 1.2.0 alpha rev. 673>>
Мы уже победили, просто это еще не так заметно...
Re[10]: MVC
От: q__q  
Дата: 24.11.08 16:47
Оценка:
Здравствуйте, IB, Вы писали:

__>> Только вот если мы перенесем плохой код в отдельный файл, это никак не сделает его лучше.

IB>В данном разговоре нигде не обсуждается пролохость/хорошесть кода, обсуждается лишь где его размещать.
IB>Так понятнее?

В данной ветке обсуждается

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

, а не где его размещать.
Так понятнее?
Re[2]: MVC
От: q__q  
Дата: 24.11.08 16:51
Оценка:
Здравствуйте, mogadanez, Вы писали:

M>>Теперь MS отказывается от своих слов и перепутать html код с C# кодом уже есть круто?


M>и да, и нет.

M>* Нет, потому что многие слишком буквально поняли идею разделения кода и разметки, и не допускали ни единого оператора в aspx файлах. это конечно перебор, и изначальная идея была другой.

M>* MVC действительно идет другим путем, но та разница что вы увидели всего лишь верхушка. проблемы у вебформ гораздо глубже и серьезнее чем разделение/не разделение кода


WebForm-ы в частности изолировали прикладного программиста от различий рендеринга в разных версиях браузеров.
Что в этой области может предложить MVC-подход?
Re[11]: MVC
От: Воронков Василий Россия  
Дата: 24.11.08 16:58
Оценка:
Здравствуйте, q__q, Вы писали:

__>В данной ветке обсуждается

__>

__>А хорошо будет, если я перенесу эти бизнес правила в серверный код, и буду городить кучу тормознутого аякса, чтоб выполнять рассчет из нескольких арифметических действий?

__>, а не где его размещать.

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

Да и, собственно, не в этом дело.
Что сказать-то хотели?
... << RSDN@Home 1.2.0 alpha 4 rev. 1111>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.