Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / WPF, Silverlight Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
qu-qu, i

я о том, чтобы эту логику заложить в сам метод сервиса (if...else...=> выдача результата), а не городить огород из SOA-лапшекода, который он хочет вообще прибить к code behind (или в VM). И Rx тут нахер не нужен. Всё банально и более чем стандартно.
28 дек 10, 21:07    [10013434]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
Проблемы ТС, похоже, совсем не в асинхронных вызовах.
Но поскольку зашел разговор о классификаторах, то надцать callback'ов для них в viewmodel - вариант решения в лоб
28 дек 10, 22:37    [10013691]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
Denis.
Member

Откуда: Москва
Сообщений: 3497
Не стоит притягивать за уши то чего сказано не было. Например на вопрос "почему не вытянуть нужные данные сразу, а не делать кучу вызовов" можно найти 1000 правильных вариантов ответа почему так делать не стоит, но суть поста была не почему так делать не надо, а как это можно сделать если это надо. И не надо мне доказывать что синхронный вызов метода не правилен по такому то паттерну. Это чушь. Где то это правильно, где то нет.
29 дек 10, 01:15    [10013990]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
Denis.
Не стоит притягивать за уши то чего сказано не было. Например на вопрос "почему не вытянуть нужные данные сразу, а не делать кучу вызовов" можно найти 1000 правильных вариантов ответа почему так делать не стоит, но суть поста была не почему так делать не надо, а как это можно сделать если это надо. И не надо мне доказывать что синхронный вызов метода не правилен по такому то паттерну. Это чушь. Где то это правильно, где то нет.


А в синхронных вызовах кучу данных тоже никто не возращает за один раз.
Нет никаких сложностей в асинхронных кроме привычек.

ЗЫ Вопрос поставлен совершенно невнятно.
29 дек 10, 01:38    [10014030]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
то надцать callback'ов для них в viewmodel - вариант решения в лоб

На клиенте (коде бехинде, VM) - согласен. Но в самом методе сервиса (причём синхронно и нелапшекодно) - то, что доктор прописал.
29 дек 10, 10:26    [10014580]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
А в синхронных вызовах кучу данных тоже никто не возращает за один раз.
Нет никаких сложностей в асинхронных кроме привычек.

Не соглашусь. А соглашусь с Денисом. Я уже как-то говорил об этом - это разные подходы вызовов, и дело вовсе не привычках.
Даже в Application Architecture Guide v2 об этом говорится. Мухи - для мух, котлеты - для котлет.
Религия и бестпрактис тут неуместны, ещё раз - это различные подходы вызов со своими плюсам и минусами.
29 дек 10, 10:30    [10014609]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
МСУ, а с чем ты можешь согласиться, если кроме callback'ов ничего не видел, не знаешь и не пробовал?
Возможен общий вариант, когда про работу с БД можно забыть и не вспоминать, сделав один раз.
Модератор: Сева, по-легче с аллегориями


Сообщение было отредактировано: 29 дек 10, 12:54
29 дек 10, 11:53    [10015422]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
i
Возможен общий вариант, когда про работу с БД можно забыть и не вспоминать, сделав один раз.
Нечего на индусов пенять, если лениво напрягаться, то - LightSwitch или на искру переходите.

В Искре действительно работа с БД реализована на уровне платформы, отвлекаться на это не нужно. Соглашусь, в общем.
29 дек 10, 12:52    [10015831]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
ничего не видел, не знаешь и не пробовал?

Rx - это "всё", что нужно демократии? Тогда я пластаю руками, - над элементарным телодвижением ещё и левый костыль-подпорку ставить.
P.S. Еще раз напоминаю, о чём пошла речь - "синхронность vs асинхронность". Это глупое сравнение в принципе, в чём я с Денисом солидарен. А ты мне про свой гавноRx...
29 дек 10, 12:54    [10015845]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
Изучай LightSwitch. Твои ItemN и так до бесконечности даже в WPF c cинхронными вызовами - решение в лоб, берем лопату и копаем.
Есть совершенно другие
29 дек 10, 13:52    [10016384]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
ViPRos
Member

Откуда:
Сообщений: 9883
iscrafm,

как деталь записи подгружаются?
29 дек 10, 14:08    [10016504]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
ViPRos
iscrafm,

как деталь записи подгружаются?

по требованию. Т.е. деталь регистрируется и как только в ней возникает необходимость - подгружается
29 дек 10, 14:17    [10016565]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
__ЛП
Guest
МСУ
P.S. Еще раз напоминаю, о чём пошла речь - "синхронность vs асинхронность".

Это откуда такое взялось?
Речь не шла про "синхронность vs асинхронность", это ты сам такое нафантазировал.
Речь шла про то, чтобы один и тот же асинхронный метод (метод получения данных с сервера) заставить "возвращать" данные в разные наборы.

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


Если ты ничего не придумал, кроме сорока восьми почти одинаковых колбеков для сорока восьми списков - ну что ж, бывает :)
29 дек 10, 14:24    [10016623]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
Изучай LightSwitch. Твои ItemN и так до бесконечности даже в WPF c cинхронными вызовами - решение в лоб, берем лопату и копаем.
Есть совершенно другие

Ты ваще в вакууме или просто тупишь?

Я говорю за то, что на клиенте асинхронно "ItemN" юзать - лапшекодно и не есть бест практис, очнись. А вот на сервер сайд (WCF) эти "ItemN" мы будем юзать синхронно, как полагается. Если нужно, вынесим в отдельный блок (метод) набор "ItemN", если еще где используется эта логика. А для клиента мы в результате получим нормальный единоразовый асинхронный врап.
29 дек 10, 14:25    [10016633]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
МСУ
i
Изучай LightSwitch. Твои ItemN и так до бесконечности даже в WPF c cинхронными вызовами - решение в лоб, берем лопату и копаем.
Есть совершенно другие

Ты ваще в вакууме или просто тупишь?

Я говорю за то, что на клиенте асинхронно "ItemN" юзать - лапшекодно и не есть бест практис, очнись. А вот на сервер сайд (WCF) эти "ItemN" мы будем юзать синхронно, как полагается. Если нужно, вынесим в отдельный блок (метод) набор "ItemN", если еще где используется эта логика. А для клиента мы в результате получим нормальный единоразовый асинхронный врап.

Выборка данных используется везде и всюду. "Отдельный блок" - шаблон Repository. Если он нормально сделан, то нет никакой разницы какие там вызовы. Item1 ... Item2 в ViewModel жирно перечеркиваем, создаем ViewModelLocator, c ним можно загружать нужные классификаторы напрямую из XAML.
Можно иметь нормальную архитектуру или кричать о кривизне рук индусов и всю жизнь ковыряться в обработчиках и callback'ах, изобретая собственные велосипеды.
29 дек 10, 18:18    [10018687]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
Выборка данных используется везде и всюду. "Отдельный блок" - шаблон Repository. Если он нормально сделан, то нет никакой разницы какие там вызовы.

Слишком круто "отдельный блок" описывать под Repository. Это обычный метод репозитория, в котором заложено n-обращений.

i
Item1 ... Item2 в ViewModel жирно перечеркиваем, создаем ViewModelLocator, c ним можно загружать нужные классификаторы напрямую из XAML.

Item1 ... Item2 нечего делать в ViewModel, я уже сто и один раз об этом говорил. ViewModelLocator нежно пакуем в топку, туда же, где и Rx.

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

"Нормальной архитектурой" сборную солянку в виде костыле-библиотек как-то язык не поворачивается назвать.
30 дек 10, 14:21    [10022333]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
МСУ, расставание с обработчиками событий - трудный процесс для некоторых.
30 дек 10, 17:42    [10023610]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
МСУ, расставание с обработчиками событий - трудный процесс для некоторых.

Проблема заключается в том, что с ними никто не собирается расставаться. MVVM - это дешёвка и бред. Мы с Дениской (другим, не ТС) уже объясняли это. MVVM + MVC(P) - это да, хороший съедобный вариант.
30 дек 10, 18:16    [10023746]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
ViPRos
Member

Откуда:
Сообщений: 9883
iscrafm
ViPRos
iscrafm,

как деталь записи подгружаются?

по требованию. Т.е. деталь регистрируется и как только в ней возникает необходимость - подгружается

а лукапы?
30 дек 10, 19:55    [10024025]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
МСУ
i
МСУ, расставание с обработчиками событий - трудный процесс для некоторых.

Проблема заключается в том, что с ними никто не собирается расставаться. MVVM - это дешёвка и бред. Мы с Дениской (другим, не ТС) уже объясняли это. MVVM + MVC(P) - это да, хороший съедобный вариант.


Да ничего вы не объяснили, а продемонстрировали только, что шаблоны еще нужно правильно применять с учетом возможностей технологии, иначе, действительно, конфуз получается
30 дек 10, 20:37    [10024138]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
i
Да ничего вы не объяснили, а продемонстрировали только, что шаблоны еще нужно правильно применять с учетом возможностей технологии, иначе, действительно, конфуз получается

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

Сообщение было отредактировано: 31 дек 10, 01:48
31 дек 10, 00:47    [10024523]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
ViPRos
iscrafm
пропущено...

по требованию. Т.е. деталь регистрируется и как только в ней возникает необходимость - подгружается

а лукапы?

также. Загружается только видимая информация. Если не воспользовались никакими из десятков лукапов или деталей, то они так и останутся незагруженными.
31 дек 10, 11:00    [10025383]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
i
Guest
iscrafm
ViPRos
пропущено...

а лукапы?

также. Загружается только видимая информация. Если не воспользовались никакими из десятков лукапов или деталей, то они так и останутся незагруженными.


А если нужно вытащить сразу весь граф объекта (Root->Child->GrandChild->etc) сидим и тоскливо наблюдаем, как неспешно идут запросы.
31 дек 10, 12:13    [10025688]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
МСУ
Member [заблокирован]

Откуда: http://codearticles.ru
Сообщений: 31089
iscrafm, почему не используете кеширование + ленивая загрузка (она и так уже впринципе есть)?
31 дек 10, 12:15    [10025690]     Ответить | Цитировать Сообщить модератору
 Re: Что почитать чтобы научится программировать в асинхронной манере.  [new]
iscrafm
Member [заблокирован]

Откуда:
Сообщений: 35345
МСУ, это слишком объемный вопрос для новогоднего вечера, после праздников. С наступающим!
31 дек 10, 19:14    [10026517]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3   вперед  Ctrl      все
Все форумы / WPF, Silverlight Ответить