2009-09-25 11 views
10

Czy funkcja WF jest używana w interfejsie użytkownika lub w warstwie biznesowej? Czy w przypadku warstwy interfejsu użytkownika ktoś kodujący w warstwie biznesowej musi go jeszcze użyć lub nauczyć się go?Gdzie jest używana funkcja Windows Workflow Foundation?

+1

Myślę, że ma na myśli WF ze względu na tytuł –

+0

Właśnie zauważyłem, że dodałem także tag WCF. Pytam o WF – rubysons

Odpowiedz

8

Chris zaproponował wielką odpowiedź, więc wezmę inną taktykę. Przepływ pracy to naprawdę nie to samo co logika. Przepływy pracy są na ogół kompozycjami logiki, co sprawia, że ​​są one dobroczynnym wkładem w całość. Gdy komponent biznesowy ładnie obejmuje jeden element reguł biznesowych lub zachowania, przepływ pracy składa się z wielu składników biznesowych, reguł i zachowań, aby sprostać potrzebom większych, dłuższych procesów biznesowych.

Przepływy pracy można dopasować do dowolnego miejsca, zaspokajając potrzeby procesowe dotyczące interfejsu użytkownika, firm, a nawet warstw danych. Jeśli skończysz używać WF, bardzo polecam trenować twoją ogólną kadrę deweloperską, tak, że jest szeroka wiedza i zrozumienie. Pomimo posiadania aspektu wizualnego, WF nadal wymaga pewnego kodowania niskiego poziomu, aby zbudować bibliotekę działań i takie, które będą wykorzystywać twórcy workflow i opiekunowie.

EDIT:

Jego do Ciebie, czy używać czy nie. Zasadniczo, WF jest używany przez większe projekty, ponieważ WF oferuje cenny zwrot z inwestycji. WF jest trudniejsze w użyciu niż po prostu pisanie kodu. Istnieje dość stroma krzywa uczenia się, wymaga innego podejścia do problemów biznesowych i wymaga specjalnych umiejętności. Dostarczenie kodu do WF dodaje narzut, ponieważ trzeba pisać działania, które mogą być wykorzystywane w przepływach pracy, a także samodzielnie tworzyć przepływy pracy.

Jeśli uważasz, że używanie WF do Twojego małego projektu zapewni cenny zwrot z inwestycji, to przejdź do niego. Będziesz musiał zarówno odzyskać początkowe koszty szkolenia, wdrożenia infrastruktury i wdrożenia, jak również zapewnić długoterminowe, wymierne oszczędności, po prostu pisanie kodu, aby rozwiązać problemy. Byłbym wątpliwy, że WF zaoferuje mały projekt, taki zwrot z inwestycji. W przypadku większych projektów lub wielu zintegrowanych projektów dla jednej dużej firmy znacznie łatwiej jest osiągnąć ROI niż w przypadku mniejszych projektów, dlatego platformy przepływu pracy, takie jak WF, są zwykle używane tylko w tej skali.

+0

Czy WF jest zwykle używana tylko w przypadku dużych projektów (gdzie aplikacja jest napisana przez kilku programistów), czy też mniejsze aplikacje internetowe również używają go regularnie? – rubysons

+0

@rubysons: WF jest używany przez każdego, kto chce go użyć. Powodem, dla którego większość małych zespołów tego nie używa jest to, że są one ograniczone do wersji frameworka lub nie sądzą, że mają czas na naukę jeszcze czegoś innego. –

+0

@rubysons: Zobacz zaktualizowaną odpowiedź. – jrista

3

WF jest interfejsem do warstwy biznesowej.

Przepływy pracy to deklaratywny sposób pisania programów przez łączenie wstępnie zdefiniowanych czynności, a nie imperatywny model programowania pisania wierszy kodu. Ponadto masz wiele narzędzi graficznych, które pozwalają na przepływ pracy wrtie. jak czarna perła, projektant K2 i sharepoint.

Są one bardzo używane i warto je poznać. Zacząłem używać wtedy w sharepoint i ms crm. Teraz zawsze patrzę na przepływy pracy, aby rozwiązać moje wspólne problemy.

oto kilka linków: mirosoft msdn.microsoft.com/en-us/netframework/default.aspx Wkik: http://en.wikipedia.org/wiki/Windows_Workflow_Foundation

+0

1) Więc WF nie jest napisane w warstwie biznesowej, ale zamiast tego tylko interfejs warstwy biznesowe? W jakiej warstwie napisano WF? 2) Więc mimo że WF używa deklaratywnego modelu programowania, kod na warstwie biznesowej jest nadal zapisywany przy użyciu imperatywnego modelu programowania? – rubysons

2

WF jest w większości rozumiane dość imperatywnie - ciąg zdarzeń chronologicznych.

Jeśli jednak zagłębisz się głębiej, możesz łączyć działania na różne sposoby. Dobrym przykładem są oparte na stanie przepływy pracy, które są zwykle pokazywane również podczas prezentacji WF. WF umożliwia przeniesienie przepływu pracy do trybu bezczynności: bieżący stan jest utrzymywany i ponownie ładowany jeden raz, np. ma miejsce wydarzenie zewnętrzne. W związku z tym przepływy pracy mogą być przydatne w śledzeniu długotrwałych interakcji, w których system musi poczekać np. dla jakiegoś zewnętrznego procesu do zakończenia lub jakiegoś użytkownika do interakcji z systemem.

Powiedziałbym, że WF nie byłby bardzo przydatny w kontekście interfejsu użytkownika.Są lepiej przystosowane jako moduł zaplecza do wyrażania procesów integrujących różne usługi, które mają tendencję do zmiany w czasie.

Z mojego punktu widzenia, jest rzeczą oczywistą, że WF jest produktem w wersji 1: Istnieje wiele niewygodnych rzeczy, które mogą cię poprowadzić do kodu, który jest trudny do utrzymania, części infrastruktury są dość złożone być użyte, możesz tam znaleźć pewne niespójności API tutaj &.

Istnieje również wytyczna na temat tego, czego nie należy robić, jeśli kiedykolwiek chcesz przenieść swoje przepływy pracy do nowej generacji ramek WF.

+0

, więc, twoim zdaniem, powinienem poczekać na kolejne wydanie WF, zanim spróbuję się tego nauczyć, ponieważ przeczytałem, że zmiany będą bardzo drastyczne i dzięki temu poznają aktualną wersję, a wtedy nowa wersja może zająć ogromną ilość Ilość czasu? – rubysons

+0

cóż, jeśli możesz poczekać, myślę, że tak. Jeśli chcesz dowiedzieć się, jak możesz odnieść korzyść z WF teraz iw przyszłości możesz przejść do bieżącej wersji - to na pewno działa, ale rzeczy się zmienią – flq

+0

wf 4 wydaje się dużo lepiej: http://msdn.microsoft.com /en-us/library/ee342461.aspx –

Powiązane problemy