powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Пацанский тру-подход к написанию WPF приложения
45 сообщений из 45, показаны все 2 страниц
Пацанский тру-подход к написанию WPF приложения
    #39376133
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет, могучий ALL!
Много я читал о говноподходах и о том, как НЕ НАДО писать на WPF, но вот что-то нигде не вижу простого и понятного примера, как НАДО писать под WPF.

Преклоняюсь перед могучим разумом сообщества и прошу накидать правильных решений для такой простой задачи:

Пусть есть таблиЦки на MS SQL Server 2008:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
CREATE DATABASE [Db1]
GO
USE Db1
GO
CREATE TABLE T1
(
  [T1_Id] INT NOT NULL PRIMARY KEY --ключ первой таблицы
  , [T1_Name] NVARCHAR(250) --некий текст
  , T2_Id INT --ссылка на ключ из второй таблицы
)
GO
CREATE TABLE T2
(
  [T2_Id] INT NOT NULL PRIMARY KEY --ключ второй таблицы
  , [T2_Name] NVARCHAR(250) --некий текст
)
GO


Накидайте пожалуйста пример с самым правильным подходом WPF, который бы:

1. Загружал данные из T1 и отображал в списке (сортировал, фильтровал)

2. Позволял бы выбирать значение из T2 для проставления в T1.T2_Id

3. Сохранял бы изменения на скул

ps:
1. Возможно, ваши варианты сильно отличаются от евангелистского подхода - важно, чтобы решение работало!
2. Я понимаю, что тут не только и не столько WPF. Но хочется получить пример работоспособного совокупного подхода как раз под эту технологию.

Заранее благодарю!
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376137
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoft, нах WPF! Вам сюда .
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376140
Monochromatique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftПривет, могучий ALL!
Много я читал о говноподходах и о том, как НЕ НАДО писать на WPF, но вот что-то нигде не вижу простого и понятного примера, как НАДО писать под WPF.

Преклоняюсь перед могучим разумом сообщества и прошу накидать правильных решений для такой простой задачи:

Пусть есть таблиЦки на MS SQL Server 2008:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
CREATE DATABASE [Db1]
GO
USE Db1
GO
CREATE TABLE T1
(
  [T1_Id] INT NOT NULL PRIMARY KEY --ключ первой таблицы
  , [T1_Name] NVARCHAR(250) --некий текст
  , T2_Id INT --ссылка на ключ из второй таблицы
)
GO
CREATE TABLE T2
(
  [T2_Id] INT NOT NULL PRIMARY KEY --ключ второй таблицы
  , [T2_Name] NVARCHAR(250) --некий текст
)
GO


Накидайте пожалуйста пример с самым правильным подходом WPF, который бы:

1. Загружал данные из T1 и отображал в списке (сортировал, фильтровал)

2. Позволял бы выбирать значение из T2 для проставления в T1.T2_Id

3. Сохранял бы изменения на скул

ps:
1. Возможно, ваши варианты сильно отличаются от евангелистского подхода - важно, чтобы решение работало!
2. Я понимаю, что тут не только и не столько WPF. Но хочется получить пример работоспособного совокупного подхода как раз под эту технологию.

Заранее благодарю!

Еще один синий студень?

но вот что-то нигде не вижу

Ну, это то лажа конечно.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376147
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Это js-баян. Быдлоскрипт давно написан на C

Да и вообще, гавновариантов в инете - пруд пруди. А хотелось бы увидеть пример правильного, красивого кода.

Кода, на который хочется смотреть, замирая от восторга.

Ну или хотя бы без отвращения.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376152
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Monochromatique,

Еще один серый тролль? Я же не просил оценивать текст. Я просил кинуть пример. Не можете\не умеете - проходите мимо.
Тема для людей, разбирающихся в этом, а не для троллей - бездельников.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376164
Monochromatique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftMonochromatique,

Еще один серый тролль? Я же не просил оценивать текст. Я просил кинуть пример. Не можете\не умеете - проходите мимо.
Тема для людей, разбирающихся в этом, а не для троллей - бездельников.

А я не текст оцениваю. Я оцениваю тебя. И оценка твоя - наглая лузззота.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376165
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoft, а MSDN чем плох?
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376173
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пацан к успеху шел.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376186
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Monochromatique,
Ты. На* пошел из этой темы.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376196
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Ничем не плох. Дайте ссылку на вышеприведенный пример.
Ну или хотя бы на варианты решения.

Вариантов то дофига. Нужно подключится к скулу - чем? Юзать ли напрямую ADO.net и DataReader или использовать Entity Framework\NHibernate\linq2sql? Что использовать для хранения данных на клиенте? Какой объект лучше использовать для списков? Какой паттерн MVVM наиболее жизненный? Что использовать для показа списка, возможно, даже есть варианты вообще не списком показывать? Возможно, юзаете сторонние контролы, которые лучше нативных средств WPF?

Я же прошу пример из жизни. Какое решение понравилось больше всего именно вам.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376208
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376213
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Т.е. лучший вариант - это EF + стандартный MVVM шаблон + стандартный грид WPF?
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376224
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoft,

какой вариант лучший - зависит от задачи... у Вас она очень простая, так зачем усложнять решение?
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376252
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Вообще, я пишу в основном под winforms, используя Devexpress.
Тут все просто - всё, что нужно для того что я написал Devexpress предоставляет выше крыши.

Но периодически поглядываю в сторону WPF ))

Ну не нашел я пока для себя варианта работы с WPF, который бы меня устроил бы полностью.
Как какой пример ни возьмешь - все как-то недоделано...

Возникает закономерный вопрос - почему бы не взять DX и под WPF? Тем более там есть замечательный https://github.com/DevExpress/DevExpress.Mvvm.Free ?

Медленный DX на WPF. И какой-то... ненативный, чтоли?
А хочется красоты.
Есть компоненты SyncFusion конечно. Но это просто GUI.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376271
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoft,
krudensoftпочему бы не взять DX и под WPF
Потому что надо будет всю логику писать совершенно по-другому- переход с winForms на WPF далеко не безболезненный.

krudensoftА хочется красоты
Помимо красоты WPF содержит в себе еще и много чего отрицательного и недоделанного с точки зрения разработки.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376334
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANA,

Вообще, я пишу в основном под winforms...
Тогда стоит начать с этого .
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376335
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А то получится как выше: "надо будет всю логику писать совершенно по-другому" :)
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376372
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

SQL.ru все такой же как и 10 лет назад... Стабильность! )))

Неужели все считают, что на винформ все так плохо? )))

Но за книгу спасибо. Обязательно прочту и применю на практике. Паттерны проектирования банды я читал, это поновее )))

Однако, вопрос-то не в этом. Вопрос в том, что сейчас юзают реальные люди, которые уже походили по граблям WPFа и готовы дать свой путь. ))) Рассказать свою тру стори.

Я уже устал писать велосипеды. Пишешь свой. Потом находишь лучше, но через некоторое время понимаешь его недостатки, правишь, потом снова находишь\пишешь лучше и так далее, до бесконечности... Неужели все тоже продолжают изобретать велосипеды?

Паттерн - это всего лишь как бы ТУ(или ГОСТ) для разработчика. Да, здорово, что он есть. Но он не дает конечного решения. Грубо говоря, зная ГОСТы шанс построить кривой дом меньше, но не нулевой.

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

Пример из жизни, отвлеченный от программирования - однажды я столкнулся в квартире с черновым полом, состоявшем из двух слоев досок: первый слой лежал на бетоне на присыпке, а второй.. стоял на первом на... гвоздях! Казалось бы - дичь. Однако, при таком варианте на кривой бетонной подложке итоговый паркет лежал идеально ровно 30 лет, не скрипел, и о соседях люди знали лишь по свету из окон.
В таких мелочах и строится хорошее решение, которое в итоге приносит программисту радость )))

Я просто удивлен: неужели нет какого-то одного общепринятого хорошего решения?
Неужели для WPF настолько все плохо? Прошло уже много лет с тех пор, как я задавал похожий вопрос. Неужели ничего не изменилось?

Возможно, я дал слишком абстрактный пример, без контекста. Но мне хотелось бы понять тенденции, направление, вектор развития.
Чтож, попробую сформировать контекст.

Дело в том, что я как бы не кодер. Я разработчик в обширном понимании слова. От постановки задачи до проектирования слоя данных\итогового выпуска. И я никогда не понимал разработчиков, которые воспринимают базу данных как простое хранилище ))) Скорее клиентское приложение для меня - это всего лишь некий интернет эксплорер, некий абстрактный клиент, приложение к данным, задача которого - правильно показать данные пользователю. Для меня звучит странно подход codefirst, когда структуру базы фактически разрабатывают на стороне клиента (в 2-звенке, 3-звенке - все равно), думая, что приложение при таком подходе будет одинаково хорошо работать и на оракле и на мсскуле, перекладывая учет тонкостей работы серверов на некую прослойку. Сколько я навидался таких систем - не перечесть ))) Итог всегда один - когда объем данных переваливает за определенню черту приглашается специалист по БД, который потом месяцами разбирает тот ужас, который наконопатили с использованием "стандартных средств разработки" и потом еще долго просыпается с криком по ночам в холодном поту, вспоминая тонны говнокода обращения к данным очередного приложения.

Потому что EF генерит SQL-говнокод. Потому что NHibernate генерит SQL-говнокод. Много кто генерит. Даже микрософтоский MS Dynamics генерит SQL-говнокод. И на ровном месте программы начинают тормозить. И что делают разработчики? Правильно - начинают писать костыли. Да вроде бы и фиг с ним. За долгие годы я к этому привык. Но костыли тоже начинают тормозить. Пишутся новые костыли и так до бесконечности. На винформах я наелся этого до отвала. Но есть же WPF! Звезда на небосклоне и счастье во всем мире, по словам саентологов евангелистов MS! Вот я и тыкаюсь везде - покажите мне, как надо правильно писать. Укажите светлый путь, о гуру WPF!

Не бойтесь писать свои примеры. Я не Monochromatique, троллить не собираюсь. Мне важно разобраться и для себя определить удобный и правильный с моей точки зрения подход для работы с данными. Потому что программы, базы данных, сервера - это все лажа. Самое важное - это данные и то, насколько удобно с ними работать.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376384
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vb_sub,

Я это уже прочувствовал. Всегда тяжело переходить на новую технологию. Так было при переходе на дельфи, так было при переходе на VB, так было при переходе на шарп на винформс, так было при переходе на плюсы натив и кьют.

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

Считается, что в каждом подходе есть свои минусы. Но я считаю, что минусы - это всего лишь непонимание технологии и идеологии. Вот я и стараюсь разобраться ))
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376386
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И таки да, сейчас я студент. Но точно не синий. Я - в ультрафиолете )))
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376419
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANA,

SQL.ru все такой же как и 10 лет назад... Стабильность! )))

Неужели все считают, что на винформ все так плохо? )))Не понял вопроса. Это Вы к чему вообще? :)
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376429
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Извиняюсь, потянуло на философию.
Как 10 лет назад не давали на sql.ru ответа на вопрос, так и сейчас. Ничего не поменялось )))
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376434
Monochromatique
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoft,

Ты какой-то экзальтированный нуб.

Ты вообще понимаешь, где находится WPF в стеке технологий? Это уровень представления.

Причем тут EF, причем тут SQL?

У тебя в голове _каша_, да и образность мягко говоря - хромает. Но это если мягко.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376444
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANA,

Извиняюсь, потянуло на философию.
Как 10 лет назад не давали на sql.ru ответа на вопрос, так и сейчас. Ничего не поменялось )))
Знаете, о том как писать приложения используя те, или иные подходы информации навалом.
Но Вам видимо как и 10 лет назад лень самостоятельно приложить усилия, чтобы разобраться.
Вам видимо хочется, чтобы первый же ответ по сути содержал в себе и код Вашего приложения, и подробное разъяснение, почему он так написан :)

Чтож, Вы не одиноки в этом...
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376447
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Monochromatique,

А мне надо весь стек, я же с самого начала написал.
Куда в этом случае писать? В ORM? Написал в самую верхушку. Ведь использование WPF накладывает требования на все этапы. По крайней мере так декларировал MS - он ведь не разрабатывал WPF как просто "новый Winforms", так?
И еще раз - хватит обзываться. Странная склрушная тема - "я сумел выучить один кусочек чего-то, теперь я царь горы, а если кто-то этого не знает - он нуб и му**к". Подумай, что человек, который тебя спрашивает может знать в других кусочках в разы больше. А может и в этом кусочке. Просто ему интересны варианты решения проблемы других людей, он хочет развивать свой кругозор, а не ругаться с троллями.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376449
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftиспользование WPF накладывает требования на все этапы
Нет, не накладывает. Откуда вдруг такое мнение?
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376450
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А MS "декларировал" вот что: Microsoft Application Architecture Guide, 2nd Edition . Почитайте на досуге.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376452
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Это бы было идеально. )))
К сожалению, такого идеального решения нет нигде, и на винформах тоже.
Тот же девекспресс имеет кучу косяков, с которыми приходится мириться и учиться их обходить.
Сколько копий пришлось поломать для сохранения группы сущностей одной транзакцией с разбором их на скуле процедурой внутри транзакции....

Но меня удивляет, что нет ответа по WPF. Предлагаю провести эксперимент: я задам этот же самый вопрос и в разделе Winforms. Вот интересно, и там все свои "ноухау" прячут под юбкой или все же не постесняются? )))
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376470
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoft, для меня идеальное решение - это когда большая часть кода не зависит от того, что выбрано в качестве морды приложения.

Понимаете, о чём я? :)
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376475
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANA,

Извиняюсь, потянуло на философию.
Как 10 лет назад не давали на sql.ru ответа на вопрос, так и сейчас. Ничего не поменялось )))
просто не все вопросы достойны ответа, вот и всё.
мне лично некогда делать пример и выкладывать его в данный момент, конец года, время 3.45 я еще на работе. Всё на что хватает вреени это забежать на sql.ru читануть пару тем из любимых разделов и усё.
Вы хотите, чтоб вам всё принесли на блюдичке, люди будут давать советы и ответы, когда на ответ у них будет уходить не больше 5-10 минут времени. Если ответ займёт 30 мин - 1 час ни кто не будет напрягаться.
Я вот лично, сколько видел WPF приложений в своей жизни, столько и подходов видел. Где то более кононично, где то менее кононично шаблону MVVM.
Хорошее знание и понимание WPF, это не знание шаблона MVVM.
Чтоб хорошо понимтаь WPF, нужно просто начать читать его исходники, там всё написано, что и как работет и как нужно им пользоваться :) а шаблон можно вообще не применять, при этом сделать приложение красивое и удобное.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376500
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesлюди будут давать советы и ответы, когда на ответ у них будет уходить не больше 5-10 минут времени. Если ответ займёт 30 мин - 1 час ни кто не будет напрягаться.
Проблема в том, что каноничный труъ-пример может и в 5 часов времени не уместиться. Потому что тут будет трехзвенка, ORM, WCF, репозитории, DI, и проч., и это всё вместе взятое очень объемно и долго. А на 5-10 минут - это будет впф-хелловорлд, не говорящий вообще ни о чем.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376521
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANA,

Вы про инверсию зависимостей?

Здорово конечно, но по факту обычно так не получается.
Взять хотя бы Winforms и WPF
Да, DTO объекты и слой доступа к данным могут быть и там и там одинаковы.
Но дальше пойдет разносол. WF - это все-таки MVC, MVP. А WPF - MVVM и на уровне вьюх и команд все уже будет по разному. Опять же разная идеология биндингов. Можно кончено притянуть за уши MVVM и на винформах, но это будет именно "притянуть за уши".
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376525
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAА MS "декларировал" вот что: Microsoft Application Architecture Guide, 2nd Edition . Почитайте на досуге.

Спасибо за ссылку, лучше наверное вот такую:

Книжка на русском и английском:
https://blogs.technet.microsoft.com/isv_team/2010/09/16/microsoft-patterns-practices/

Книжка на русском:
http://download.microsoft.com/documents/rus/msdn/ры_приложений_полная_книга.pdf
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376526
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны,

Может быть есть ссылка на готовый пример, который вы считаете хорошим примером?
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376528
krudensoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны,

Ну, всему свое. Если это база с 1-5 пользователями макс (например, торговая точка), то там нет смысла делать трехзвенку. Там достаточно скульного сервака и клиента.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376799
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANA,

Вы про инверсию зависимостей?Нет.

krudensoftЗдорово конечно, но по факту обычно так не получается.
Взять хотя бы Winforms и WPF
Да, DTO объекты и слой доступа к данным могут быть и там и там одинаковы.
Но дальше пойдет разносол. WF - это все-таки MVC, MVP. А WPF - MVVM и на уровне вьюх и команд все уже будет по разному. Опять же разная идеология биндингов. Можно кончено притянуть за уши MVVM и на винформах, но это будет именно "притянуть за уши".Чего конкретно-то не получается? Где у Вас слой доменной модели потерялся? В представлении? :)
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376800
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANAА MS "декларировал" вот что: Microsoft Application Architecture Guide, 2nd Edition . Почитайте на досуге.

Спасибо за ссылку, лучше наверное вот такую:

Книжка на русском и английском:
https://blogs.technet.microsoft.com/isv_team/2010/09/16/microsoft-patterns-practices/

Книжка на русском:
http://download.microsoft.com/documents/rus/msdn/ры_приложений_полная_книга.pdf
Да не важно, главное чтобы Вы прочитали и поняли.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39376807
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftСон Веры Павловны,

Ну, всему свое. Если это база с 1-5 пользователями макс (например, торговая точка), то там нет смысла делать трехзвенку. Там достаточно скульного сервака и клиента.
А нужна-ли этим 1-5 пользователям вообще база? :) А если и нужна, то прочтения MSDN-а для реализации хватит.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39378446
ARKss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftВ каждом подходе есть свои фишки. Мне бы понять плюсы и фишки впф, чтобы моя работа не вызывала у меня недоумения.
Вам это по работе надо, или чисто для собственного любопытства? Если второе, то, наверное, не стоит - WPF скоро "всё", а если у вас и с формами всё хорошо идёт, то чего дёргаться? WPF надо было в 2008-2012 годах начинать изучать, а сейчас уже как бы забывать пора. Только MVVM и некоторые подходы от него взять. Щас всё на джаваскриптах и HTML5 делается.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39378450
ARKss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftВедь использование WPF накладывает требования на все этапы. По крайней мере так декларировал MS - он ведь не разрабатывал WPF как просто "новый Winforms", так?
На WPF можно писать практически полностью так же, как и на винформс.

WPF накладывает требования только на клиентскую часть - на UI. С ним можно работать как с винформс (например, писать код в обработчиках событий), а можно как предлагается в паттерне MVVM. Можно вообще своё накрутить, если опыта и знаний хватает.

Вообще, непонятно ваше непонимание. Если у вас большой опыт разработки и при этом хотя бы немного большие приложения разрабатывали, то вы должны иметь понятия о так называемых слоях. Прочитав об MVVM, вы бы быстро поняли, где тут какой слой, и что работа с БД в MVVM-WPF не входит. В MVVM часть, которая относится в WPF неподсредственно - это представление (View) и модель представления (View Model) - то, что раньше, в винформс, было принято писать в коде обработчиков событий в простых винформс приложениях. В сложных приложениях разработчики раньше делали свои реализации подобий моделей представлений, по сути, писали свой мини фреймворк. Просто в WPF Майкрософт предложил некий обобщённый подход для части UI. При этом для всех остальных частей приложения МС обобщённого подхода пока не предложил (не будем принимать в расчёт всякие Prism), поэтому вы должны сами придумать, как организовать работу с БД и прочее - WPF-MVVM про это ничего не говорят. Т. е. как раньше работали с формами, так и сейчас работайте - ведь вы же и раньше должны были реализовать слой работы с БД, слой сервисов, слой серверной логики и прочее, что вам было необходимо. Ещё раз - WPF-MVVM имеет отношение только к UI и всё, что в статьях написано про БД и прочее - лишь в качестве примера (как правило, упрощённого), который нужен, только чтобы приложение вообще запустилось и показало какие-то данные.

Если же вы не знали и раньше, как создавать сложные системы со множеством слоёв, то проблема не в WPF, а в том, что вы вообще имеет мало опыта создания таких систем и не понимаете, где место WPF в них. Тут надо, как вам и посоветовали, побольше букварей почитать про проектирование приложений и сложных систем вообще.

Создаётся ощущение, что вы работали с какими-то конструкторами, типа дельфовых компонентов или вообще Light Switch, где выбрал БД, выбрал шаблон, выбрал оформление покрасивше и оно само вам на грид всё положило и CRUD с фильтрами прикрутило. И, похоже, вы такой конструктор и для WPF ищете. Я лично такого конструктора для WPF не знаю, но тот же Light Switch, если ещё живой, стал специализироваться на генерации UI в виде HTML, а не XAML-представлений.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39378453
ARKss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman MejteskrudensoftskyANA,

Извиняюсь, потянуло на философию.
Как 10 лет назад не давали на sql.ru ответа на вопрос, так и сейчас. Ничего не поменялось )))
просто не все вопросы достойны ответа, вот и всё.
мне лично некогда делать пример и выкладывать его в данный момент, конец года, время 3.45 я еще на работе. Всё на что хватает вреени это забежать на sql.ru читануть пару тем из любимых разделов и усё.
Вы хотите, чтоб вам всё принесли на блюдичке, люди будут давать советы и ответы, когда на ответ у них будет уходить не больше 5-10 минут времени. Если ответ займёт 30 мин - 1 час ни кто не будет напрягаться.
Я вот лично, сколько видел WPF приложений в своей жизни, столько и подходов видел. Где то более кононично, где то менее кононично шаблону MVVM.
Хорошее знание и понимание WPF, это не знание шаблона MVVM.
Чтоб хорошо понимтаь WPF, нужно просто начать читать его исходники, там всё написано, что и как работет и как нужно им пользоваться :) а шаблон можно вообще не применять, при этом сделать приложение красивое и удобное.
Согласен. ТСу надо поискать чего-то вроде "WPF CRUD MVVM example". Лично я сходу нашёл кучу простых примеров, типа такого (что там внутри - не смотрел, но думаю, что ТСу хватит на первое время).

Естественно, вопрос сохранения сложных групп переплетённых сущностей, типа корня оггрегации (до сих пор не вдупляю до конца, что же это такое - видел как минимум два отличающихся мнения, и оба не помню), вам никто на блюде не даст, да ещё для вашего конкретного решения. Вы уж как-нибудь сами. Другое дело, что применение WPF тут практически ничего не меняет - как раньше с этими сущностями работали, так и сейчас работайте. Единственное, что работать надо с моделью (Model, в терминах MVVM), а не пытаться сохранить в БД View Model или что-то подобное.
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39378461
ARKss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловнытрехзвенка, ORM, WCF, репозитории, DI, и проч.
h ttps://www.youtube.com/watch?v=ZKKukSxG4Hc&feature=youtu.be&t=7m3sДавайте восклицать, друг другом восхищаться,
Высокопарных слов не надо опасаться,
Гармония харизм, величие амбиций,
Фрустральный атеизм, приоритет позиций,
Монументальный вздор, скептичность ортодокса,
Скептический апломб, гуманность парадокса.
YouTube Video
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39378466
ARKss
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
krudensoftskyANA,

Вы про инверсию зависимостей?

Здорово конечно, но по факту обычно так не получается.
Взять хотя бы Winforms и WPF
Да, DTO объекты и слой доступа к данным могут быть и там и там одинаковы.
Но дальше пойдет разносол. WF - это все-таки MVC, MVP. А WPF - MVVM и на уровне вьюх и команд все уже будет по разному. Опять же разная идеология биндингов. Можно кончено притянуть за уши MVVM и на винформах, но это будет именно "притянуть за уши".
ТС, оказывется, всё понимает, но делает вид, что затупил в мелочах.

Граждане, у кого тролль отвязался?
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39378804
ВМоисеев
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>krudensoft, 27 дек 16, 15:00 [20053043]

> ... самым правильным подходом WPF ...
Самых чаще всего не бывает, - задачи разные.
Опишу свой подход.
1. Каждая таблица базы данных имеет суррогатный ключ
2. Клиентское приложение работает с информацией базы данных через хранимые процедуры.
3. Взаимодействие клиента с приложением осуществляется посредством User Control (собственный вариант "а-ля" модальной формы) в главном окне.
4. User Control обычно состоит из 2-х гридов:
- грида иконок стандартных операций (новый, клон, удалить, редактировать, сохранить, выбор, выход) и их реализации
- грида TableControl со страницами выборки и формирования запроса
- запрос обычно не четкий (like или диапазон) и поэтому ограниченная выборка показывается в DataGride.
- обычно двойной щелчок на в столбце с информацией из справочника вызывает User Control справочника
5. Информация базы данных в клиентском приложении хранится в List<> или ObservableCollection<>.

С уважением,
Владимир
...
Рейтинг: 0 / 0
Пацанский тру-подход к написанию WPF приложения
    #39379066
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ARKssГраждане, у кого тролль отвязался?
хи-хи, тут целая стая))) с ними нужно разговаривать, ну и крепкий дрын в руке держать)))

ВМоисеевОпишу свой подход.
...
С уважением,
Владимир
1-4 - один из множества вариантов
5 - а как иначе?
...
С уважением, ...
...
Рейтинг: 0 / 0
45 сообщений из 45, показаны все 2 страниц
Форумы / WPF, Silverlight [игнор отключен] [закрыт для гостей] / Пацанский тру-подход к написанию WPF приложения
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]