Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Где должна находиться бизнес логика в MVC ну например вызов веб сервисов? В контролерах или в моделе? Одни говорят одно другие другое, помогите разобраться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 11:46 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
tercat2В контролерах или в моделе. Можно и там и там. Логика разносится по мере роста проекта. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 12:07 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Некоторые и в представление гвозди забивают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 12:29 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
tercat2Где должна находиться... ну например вызов веб сервисов? Gateway (Шлюз) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 12:37 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
tercat2, преимущественно на контроллере, специфичную для модели логику можно закладывать в модель или промежуточные модели. В любом случае делайте так, чтобы вам было удобнее и понятнее и затем проще было осуществлять поддержку и обновление приложения ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 12:50 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
tercat2Где должна находиться бизнес логика в MVC ну например вызов веб сервисов? В контролерах или в моделе? Одни говорят одно другие другое, помогите разобраться. MVC предполагает как можно больше логики зашить модель, всё что туда не влазиет в контролер ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 12:57 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Eugene22специфичную для модели логику можно закладывать в модель или промежуточные моделиинтересная мысль :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 12:59 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Eugene22преимущественно на контроллере Это почему? В идеале котроллер вообще не должен содержать бизнес логику, а только осуществлять интеракцию между моделью и представлением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 13:02 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pationMVC предполагает как можно больше логики зашить модель...На мой взгляд все MV-паттерны это предполагают. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 13:05 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонВ идеале котроллер вообще не должен содержать бизнес логику, а только осуществлять интеракцию между моделью и представлением. В идеале, да. http://ru.wikipedia.org/wiki/Model-View-Controller Основная цель применения этой концепции состоит в разделении бизнес-логики (модели) от её визуализации (представления, вида). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 13:25 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Многие использую модель как маппинг БД-объектов, это не правильно. Модель (модель представления) - это отдельный класс, отвечающий именно за логику. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 13:27 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Модель - это слой логики, который может содержать классы маппинга, сервисы, репозиторий etc. авторМодель (англ. Model). Модель предоставляет знания: данные и методы работы с этими данными, реагирует на запросы, изменяя своё состояние. Не содержит информации, как эти знания можно визуализировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 14:15 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМодель - это слой логики, который может содержать классы маппинга, сервисы, репозиторий etc. авторМодель (англ. Model). Модель предоставляет знания: данные и методы работы с этими данными, реагирует на запросы, изменяя своё состояние. Не содержит информации, как эти знания можно визуализировать. Может, но это негибко и не правильно. Проблемы начинаются тогда, когда нужно расширить модель под представление. Править кодогенерированные прокси нельзя. Другая задача, когда представление использует несколько маппинговых классов и еще доп. логику. Без «модели представления» не обойтись. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 14:24 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУДругая задача, когда представление использует несколько маппинговых классов и еще доп. логику. Без «модели представления» не обойтись. Это да, но такая модель не часть бизнес логики, бо ее не получится использовать с другим типом UI. Я бы назвал это - интерфейсные вспомогательные классы, и основная модель о них знать не должна, она вообще про UI не знает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 15:29 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонЭто да, но такая модель не часть бизнес логики, бо ее не получится использовать с другим типом UI. Почему? Такие классы можно использовать в любом UI. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 15:34 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУПочему? Такие классы можно использовать в любом UI. Если другой UI идентичный первому. Эти классы обычно делаются под конкретное представление. (это про тупой ViewModel) Я говорил про класс, который может содержать логику представления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 15:54 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонЕсли другой UI идентичный первому. Эти классы обычно делаются под конкретное представление. (это про тупой ViewModel) Да, именно об этом и речь. ПарамонЯ говорил про класс, который может содержать логику представления. Почему нельзя заложить логику в модель представления ? По сути модель представления и является "моделью" в терминологии MVC. Вот логике там и место. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 16:21 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУПо сути модель представления и является "моделью" в терминологии MVC. Вот логике там и место. Само слово "модель" там путает, к "Domain model" ViewModel не относится. Модель не должна зависеть от представления, в этом весь смысл модели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 16:39 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУПо сути модель представления и является "моделью" в терминологии MVC. Вот логике там и место. Само слово "модель" там путает, к "Domain model" ViewModel не относится. Модель не должна зависеть от представления, в этом весь смысл модели. Не правильно. Доменный объект представляет и реализует бизнес-логику программы. Модель представления - это как-раз доменный объект , а не доменная модель :) ...Доменные объекты инкапсулируют всю необходимую для программы информацию об объекте предметной области. Так, например, реальный сотрудник может иметь фамилию, имя, отчество, пол, возраст (модель предметной области), но, если в программе используются только фамилия и имя, то именно они будут включены в качестве атрибутов доменного объекта (уровень объектов предметной области). То есть мы имеем слой предметной области (другими словами). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 17:38 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМодель не должна зависеть от представления, в этом весь смысл модели. Разумеется. И она не зависит от представления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 17:39 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Русским языком модели представления . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 17:49 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУреальный сотрудник может иметь фамилию, имя, отчество, пол, возраст (модель предметной области) Это да МСУcolor=red Это может быть, но модель предметной области не может вернуть к примеру [style="color:red;"], в то время как модель представления - да может. Веб сайт и мобильная аппликация могут иметь общую модель предметной области, но разные модели представления, бо у них разный UI, а к нему привязанны модели представления. Model-View-ControllerРяд разработчиков специализируется только в одной из областей: либо разрабатывают графический интерфейс , либо разрабатывают бизнес-логику . Поэтому возможно добиться того, что программисты, занимающиеся разработкой бизнес-логики (модели), вообще не будут осведомлены о том, какое представление будет использоваться. Модель представления в виде ViewModel - это просто типизация конкретного вью. Model-View-ControlleВажно отметить, что как представление, так и контроллер зависят от модели. Однако модель не зависит ни от представления , ни от контроллера. Тем самым достигается назначение такого разделения: оно позволяет строить модель независимо от визуального представления , а также создавать несколько различных представлений для одной модели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 18:25 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУРусским языком модели представления . Мнение блогеров не совсем интересно но: авторСамые внимательные уже наверно увидели сходство паттерна View Model с DTO (Data Transfer Object). И сходство действительно есть, причем значительное. И там, и там - проекции данных для передачи куда-то. Только, в отличие от DTO, которые могут передаваться как угодно далеко, хоть на деревню дедушке, View Model объекты передаются всего лишь по соседству в представление. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 18:30 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУРусским языком модели представления . авторView Model - это реализация одноименного подхода (или паттерна) к передаче данных в представление, который используется не только в ASP.NET MVC, но и в других местах, например, в Silverlight или WPF. View Model отличается от Domain Model тем, что он предназначен не для представления предметной области, а лишь для передачи данных из контроллера в представление в удобной форме. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 18:34 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонЭто может быть, но модель предметной области не может вернуть к примеру [style="color:red;"], в то время как модель представления - да может. А не надо возвращать [style="color:red;"]. Сделай отдельное свойство типа Color и возвращай Color.Red. А в представлении конструируй нужный стиль на основе нормального типизированного члена модели представления. Не стоит настолько глубоко заколачиваться к представлению. Тогда и UI, о котором ты говорил ранее, можно будет сменить. ПарамонМодель представления в виде ViewModel - это просто типизация конкретного вью. Модель представления в виде ViewModel - это модель со всеми вытекающими. Там место логике. В MVC в качестве модели многие подпихивают отображение БД, что не верно. Итак, что имеем в ASP.NET MVC: DAL (контекст / репозиторий) с автогенеренными отображениями объектов БД на классы (таблицы, вьюхи, хранимые процедуры, функции) Контроллер. Тут всё понятно. Представление. Тут всё понятно. Модель. Она же DTO. Она же модель представления. Место для логики и прочим плюшкам. Может объединять в себе сложную логику с Master-Detail-Detail-...-Detail связками и прочее прочее. Те же Color свойства, да что угодно. P.S. Не нужно путать автогенеренные классы контекста с моделью. Это разные вещи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 18:38 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУМодель. Она же DTO. Она же модель представления. Это три совершенно разные вещи, причем у каждого своё предназначение. ) Сам ссылку дал :) авторView Model отличается от Domain Model тем, что он предназначен не для представления предметной области, а лишь для передачи данных из контроллера в представление в удобной форме ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 18:46 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Место DTO - да в модели, либо делают отдельный слой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 18:50 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУМодель. Она же DTO. Она же модель представления. Это три совершенно разные вещи, причем у каждого своё предназначение. ) Это одно и тоже в концепции MVC. ПарамонСам ссылку дал :) авторView Model отличается от Domain Model тем, что он предназначен не для представления предметной области, а лишь для передачи данных из контроллера в представление в удобной форме Ты опять меня не слушаешь и второй раз наступаешь на те же грабли :) Причем тут доменная модель ? Речь о доменном объекте . В концепции MVC: модель можно считать моделью представления == оно же DTO == оно же доменный объект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:07 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
В MVC нет понятия модели представления. Эта абстракция позаимствована из MVVM. Чтобы было легко в будущем - используем вместо модели - модель представления. А в частном случае это будет одно и то же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:09 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУТы опять меня не слушаешь и второй раз наступаешь на те же грабли :) Причем тут доменная модель? Речь о доменном объекте Доменная модель кабэ содержит доменные объекты :) МСУВ концепции MVC: модель можно считать моделью представления == оно же DTO == оно же доменный объект В концепции MVC: шкаф не становится табуреткой :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:13 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУТы опять меня не слушаешь и второй раз наступаешь на те же грабли :) Причем тут доменная модель? Речь о доменном объекте Доменная модель кабэ содержит доменные объекты :) Вот именно, так причем тут какбэ модель представления? :) О ней речь. ПарамонМСУВ концепции MVC: модель можно считать моделью представления == оно же DTO == оно же доменный объект В концепции MVC: шкаф не становится табуреткой :) Еще раз прочитай статью. Раз пять прочитаешь, начнешь понимать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:15 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУВ концепции MVC: модель можно считать моделью представления == оно же DTO == оно же доменный объект. конечно же нет модель это намного больше чем просто дэтэошка и больше чем просто конкретно взятый доменный объект не надо спутывать понятия ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:27 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУЕще раз прочитай статью. Раз пять прочитаешь, начнешь понимать. Тогда прокомментируй это: авторView Model отличается от Domain Model тем, что он предназначен не для представления предметной области, а лишь для передачи данных из контроллера в представление в удобной форме ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:28 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pationконечно же нет модель это намного больше чем просто дэтэошка и больше чем просто конкретно взятый доменный объект не надо спутывать понятия Сними розовые очки, это всё то же самое. DTO - это точно такой же отвязанный слой. Модель представления - такой же отвязанный слой. Не вижу принципиальных отличий. Ты видишь? ПарамонМСУЕще раз прочитай статью. Раз пять прочитаешь, начнешь понимать. Тогда прокомментируй это: авторView Model отличается от Domain Model тем, что он предназначен не для представления предметной области, а лишь для передачи данных из контроллера в представление в удобной форме Еще раз, про доменную модель речи не идет. Сколько мне раз это нужно повторить? Модель представления и доменная модель - это как камень и гора. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:33 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУМодель. Она же DTO. Она же модель представления. МСУМодель представления и доменная модель - это как камень и гора. Противоречие? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:39 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Алён'c анфан де ля Патрие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:41 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУМодель. Она же DTO. Она же модель представления. МСУМодель представления и доменная модель - это как камень и гора. Противоречие? :) нет :) Модель <> Доменная модель ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:43 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУНе вижу принципиальных отличий. Ты видишь? ы сам это придумал или вычитал где-то? DTO в общем случае не содержит да и не должно содержать никакой бизнес логики МСУDTO - это точно такой же отвязанный слой. Модель представления - такой же отвязанный слой. представление - это точно такой же отвязанный слой. DAL - такой же отвязанный слой. База данных - такой же отвязанный слой. Твоя тупая упёртость - это точно такой же отвязанный слой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:46 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pationМСУНе вижу принципиальных отличий. Ты видишь? ы сам это придумал или вычитал где-то? DTO в общем случае не содержит да и не должно содержать никакой бизнес логики DTO не должен содержать бизнес-логики, модель представления - может. Только в этом и отличие. Для большинства случаем модель для представления также не содежит логики, тупой маппинг с БД. В чем тогда различие? Для большинства случаев модель представления будет являться банальным DTO, о чем я и писал. pationТвоя тупая упёртость - это точно такой же отвязанный слой. Тупое непонимание, как в соседнем форуме про Action, такой же отвязанный слой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:51 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pation, ты как всегда мимо кассы, еще раз цитирую http://merle-amber.blogspot.com/2009/04/aspnet-mvc.html Самые внимательные уже наверно увидели сходство паттерна View Model с DTO (Data Transfer Object). И сходство действительно есть, причем значительное. И там, и там - проекции данных для передачи куда-то. Только, в отличие от DTO, которые могут передаваться как угодно далеко, хоть на деревню дедушке, View Model объекты передаются всего лишь по соседству в представление. Так что можете пользоваться этой аналогией, если вам так будет проще понять смысл View Model и его назначение. Так что можешь потихоньку начинать убивать себя об стену, так же как и с Action. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:53 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУDTO не должен содержать бизнес-логики, модель представления - может. Только в этом и отличие. это основное принципиальное отличие, тем более в разрезе этого топа. МСУДля большинства случаем модель для представления также не содежит логики, тупой маппинг с БД. В чем тогда различие? Для большинства случаев модель представления будет являться банальным DTO, о чем я и писал. я думал ты программы пишешь, для HelloWord вообще нет смысла связыватся с MVC ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:57 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 19:57 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУpation, ты как всегда мимо кассы, еще раз цитирую http://merle-amber.blogspot.com/2009/04/aspnet-mvc.html Самые внимательные уже наверно увидели сходство паттерна View Model с DTO (Data Transfer Object). И сходство действительно есть, причем значительное. И там, и там - проекции данных для передачи куда-то. Только, в отличие от DTO, которые могут передаваться как угодно далеко, хоть на деревню дедушке, View Model объекты передаются всего лишь по соседству в представление. Так что можете пользоваться этой аналогией, если вам так будет проще понять смысл View Model и его назначение. Это всего лишь частное упрощённое субъективное суждение блоггера МСУТак что можешь потихоньку начинать убивать себя об стену, так же как и с Action. Заканчивай уже рефлексировать по этому поводу=)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 20:00 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pationэто основное принципиальное отличие, тем более в разрезе этого топа. Я про частные случаи, коих сплошь и рядом. pationя думал ты программы пишешь, для HelloWord вообще нет смысла связыватся с MVC Ситуации разные бывают. Я принципиально назвал модель представления = DTO, и ничего тут сверхужасного нет. Ты прицепился к словам и начал полемику про то, какое небо голубое. ShSergeМСУ, Давай договоримся раз и навсегда. Таких придурков, типа тынц , чтобы здесь и не пахло. Понял? 1. Почему он "придурок", поясни? Человек свободными словами описывает своё понимание. 2. Почему запрещено давать ссылку на блог? Объясни. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 20:02 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pationЭто всего лишь частное упрощённое субъективное суждение блоггера Разумеется, и я с этим суждением солидарен. Ничего большего. pationЗаканчивай уже рефлексировать по этому поводу=)) Это я так, чтоб к словам не цеплялся. А то начал менять троллить по DTO :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 20:04 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУЯ про частные случаи, коих сплошь и рядом. нельзя рассматривать общую концепцию в разрезе частных случаев ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 20:06 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
pationМСУЯ про частные случаи, коих сплошь и рядом. нельзя рассматривать общую концепцию в разрезе частных случаев Всё в мире относительно, можно и так, можно и эдак. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 20:07 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУМодель <> Доменная модель В MVC модель - это именно доменная модель. ASP.NET MVC Overview MicrosoftModels. Model objects are the parts of the application that implement the logic for the application s data domain ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:11 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУМодель <> Доменная модель В MVC модель - это именно доменная модель. ASP.NET MVC Overview MicrosoftModels. Model objects are the parts of the application that implement the logic for the application s data domain Тогда какую логику может содержать автогенеренный класс контекста? Никакую. Что и требовалось доказать. А вот все модели представлений можно назвать доменной моделью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:37 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Имхо, смешали все - mvc, ddd, модели и вью-модели, dto и пр. Mvc - шаблон реализации ui. Не имеет отношения он к домену. вообще. просто в простенькой хрени, то что в нем называется моделью, а по сути является моделью представления, можно посчитать и доменной моделью. все зависит от масштаба... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:37 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУМодель <> Доменная модель В MVC модель - это именно доменная модель. ASP.NET MVC Overview MicrosoftModels. Model objects are the parts of the application that implement the logic for the application s data domain Во-вторых, я таки не увидел тут domain model. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:38 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
А вооще, домен несомненно это bl в самом чистом виде... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:41 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
a_titeevА вооще, домен несомненно это bl в самом чистом виде... Доменная модель, если говорить нормальным языком. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:44 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУТогда какую логику может содержать автогенеренный класс контекста? Никакую. Что и требовалось доказать. Автогенеренный класс расширяют - partial class или extensions methods. Можно использовать Service Layer. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 21:56 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУТогда какую логику может содержать автогенеренный класс контекста? Никакую. Что и требовалось доказать. Автогенеренный класс расширяют - partial class или extensions methods. Можно использовать Service Layer. Очень плохая практика. Особенно, когда при работе с БД дернешь свойство/метод кастомного частичного класса, а оно не сможет оттранслироваться в SQL. Получается, одни члены транслируются, другие нет, каша. Далее, возникают проблемы при транспорте такого класса куда-нибудь через сервис. Не все типы автогенеренного класса можно прогнать через SOAP, яркий тому пример тип Binary. Начинается мышиная возня, чтобы поменять в дизайнере контекса этот тип на массив байт. Половина кода из-за этого съедет. Через extensions methods это вообще песня - извращение размазывать логику по всему приложению. Service Layer тут вообще как кобыле пятое колесо. Нормальный человеческий выход - использовать чистые нормальные классы под логику и не заниматься садомазохизмом с автогенеренными классами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:07 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУНормальный человеческий выход - использовать чистые нормальные классы под логику и не заниматься садомазохизмом с автогенеренными классами. На самом деле в большинстве случаев так бывает, но это не - ViewModels а нормальные модели домейна, созданные из одного или нескольких классов. Те что содержат UI логику я отделяю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:21 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУНормальный человеческий выход - использовать чистые нормальные классы под логику и не заниматься садомазохизмом с автогенеренными классами. На самом деле в большинстве случаев так бывает, но это не - ViewModels а нормальные модели домейна , созданные из одного или нескольких классов. Ну почему это не вьюмодели? Они готовятся под представление, там и оседают до лучших времен. Их всегда если что можно расширить, причем расширить чисто под вью, можно заколотить свойство типа твоего стися с красным колором и прочее. Это и есть вью-модель. Это и есть доменный объект с логикой. О чем я и тылдычу уже бытый час ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:25 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУНу почему это не вьюмодели? ViewModel это модель без логики, для типизации вью, в частности для вью состоящего из нескольких моделей. Пример: Код: c# 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:43 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
типа ) Код: c# 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:50 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонViewModel это модель без логики, для типизации вью Несусветные глупости. http://msdn.microsoft.com/ru-ru/magazine/dd419663.aspx Если логика взаимодействия приложения находится в наборе классов модели представления, легко написать тестирующий ее код. В каком-то смысле представления и модульные тесты — разные типы потребителей модели представления. Набор тестов для модели представленияs приложения обеспечивает свободное и быстрое регрессионное тестирование, уменьшающее стоимость поддержки приложения в будущем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:50 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУПарамонViewModel это модель без логики, для типизации вью Несусветные глупости. http://msdn.microsoft.com/ru-ru/magazine/dd419663.aspx Если логика взаимодействия приложения находится в наборе классов модели представления, легко написать тестирующий ее код. В каком-то смысле представления и модульные тесты — разные типы потребителей модели представления. Набор тестов для модели представленияs приложения обеспечивает свободное и быстрое регрессионное тестирование, уменьшающее стоимость поддержки приложения в будущем. Это - Приложения WPF с шаблоном проектирования модель-представление-модель представления. Мы про MVC однако :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:53 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонЭто - Приложения WPF с шаблоном проектирования модель-представление-модель представления. Мы про MVC однако :) Там речь о модели представления, однако мы о ней и говорим. В MVC нет понятия ViewModel, поэтому обращаемся к первоисточнику. В модели представления априори должна быть логика. Назовем это "DTO", но только с логикой :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 22:58 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
МСУВ MVC нет понятия ViewModel, поэтому обращаемся к первоисточнику. Поэтому, это совсем не та ViewModel что в - MVVM. Я уже давно наблюдаю желание, сделать MVVM из MVC :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 23:05 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
ПарамонМСУВ MVC нет понятия ViewModel, поэтому обращаемся к первоисточнику. Поэтому, это совсем не та ViewModel что в - MVVM. Это с какого перепугу она "не та"? Вью модель везде одна :) ПарамонЯ уже давно наблюдаю желание, сделать MVVM из MVC :) Не надо, MVC вполне самодостаточен и гениален. Просто чтоб было совсем вкусно, нужно раздетять дата-модель (кодогенерированный контекст) от доменной модели. И будет щастье. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2012, 23:41 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
есть модель - доменный объект с простыми геттерами и сеттерами, который есть отображение строки в БД и который можно сериализовать есть прокси-объект, DTO, который оперирует доменным объектом и в котором находится вся логика имхо, так правильно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2012, 00:52 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Хорошо. предположим, что к mvc-приложению, используемому как ui, нужно добавить десктопное приложение. что будет, если логика включена в модели представлений? Дублировать? а если еще и workflow заюзаны? Чтобы этого не было и выносят ее в доменную модель по максимуму, плюс в некие сервисы еще. Все это дело потом выносится в отденые библиотеки классов. а само mvc-application - не более чем ui. По идее даже сквозная функциональнось, такая как валидация, должна делаться не там. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2012, 11:27 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
Парамонтипа ) Код: c# 1. ну вот типа, если мы добавим конструктор к этой модели, в котором будут листы создаваться, то получим уже ddd-подход и вынесем некую логику в модель. не так ли? И не удобнее ли это будет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2012, 11:32 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
что-то действительно все смешалось. View Model в MVC и ViewModel в MVVM - это совершенно разные понятия, не имеющие ничего общего. Смотрите соответствующий материал здесь - http://unmail22.narod.ru/Books/ASPNET_MVC3/3.4.html - из книги Галлоувея и т.д. по ASP NET MVC 3. там есть фраза: обратите внимание, что в данном случае понятие "модель представления" ("view model") не имеет ничего общего с паттерном "Модель - Представление - Модель представления" ("Model View ViewModel", MVVM). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2012, 12:28 |
|
||
|
Где должна находиться бизнес логика в MVC?
|
|||
|---|---|---|---|
|
#18+
a_titeev ну вот типа, если мы добавим конструктор к этой модели, в котором будут листы создаваться, то получим уже ddd-подход и вынесем некую логику в модель. не так ли? И не удобнее ли это будет? А если будет еще несколько моделей, которые содержат такие же листы и еще пару других пропертей? Дублирование кода не так ли? Код: c# 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2012, 13:14 |
|
||
|
|

start [/forum/topic.php?all=1&fid=18&tid=1359228]: |
0ms |
get settings: |
9ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
118ms |
get tp. blocked users: |
2ms |
| others: | 223ms |
| total: | 442ms |

| 0 / 0 |
