Beberapa hal lebih mudah diimplementasikan hanya dengan tangan (kode), tetapi beberapa lebih mudah melalui WF. Sepertinya WF dapat digunakan untuk membuat (hampir) algoritma apa pun. Jadi (secara teoritis) saya dapat melakukan semua logika saya di WF, tetapi mungkin ide yang buruk untuk melakukannya untuk semua proyek.
Dalam situasi apa itu ide yang baik untuk menggunakan WF dan kapan akan membuat hal-hal lebih sulit maka mereka harus? Apa pro dan kontra / biaya WF vs coding dengan tangan?
.net
workflow
workflow-foundation
Sumrak
sumber
sumber
Jawaban:
Anda mungkin perlu WF hanya jika salah satu dari yang berikut ini benar:
Untuk detail lebih lanjut, lihat posting Paul Andrew: Untuk apa menggunakan Windows Workflow Foundation?
Tolong jangan bingung atau menghubungkan WF dengan pemrograman visual apa pun. Itu salah dan dapat menyebabkan keputusan arsitektur / desain yang sangat buruk.
sumber
Tidak pernah. Anda mungkin akan menyesalinya:
Satu-satunya waktu saya bisa membayangkan menggunakan WF adalah jika saya ingin meng-host desainer untuk pengguna akhir dan mungkin bahkan tidak.
Percayalah, tidak ada yang akan sesederhana itu, sekuat, atau sefleksibel kode yang Anda tulis untuk melakukan persis apa yang Anda perlukan. Tinggal jauh dari WF.
Tentu saja, ini hanya pendapat saya, tapi saya pikir itu bagus sekali. :)
sumber
Kode yang dihasilkan oleh WF tidak baik. Nilai yang dibawa oleh WF adalah dalam representasi visual dari sistem, meskipun saya belum melihat apa-apa (6-7 proyek sedang bekerja dengan WF yang telah saya ikuti) di mana saya tidak akan lebih suka proyek kode tangan yang lebih sederhana .
sumber
Secara umum, jika Anda tidak memerlukan fitur ketekunan dan pelacakan (yang menurut saya adalah fitur utama), Anda tidak harus menggunakan Workflow Foundation.
Berikut ini kelebihan dan kekurangan Workflow Foundation yang saya kumpulkan dari pengalaman saya:
Keuntungan
Kekurangan
sumber
Alasan utama yang saya temukan untuk menggunakan fondasi alur kerja adalah seberapa banyak itu membawa Anda keluar dari kotak dalam hal pelacakan dan ketekunan. Sangat mudah untuk mendapatkan layanan ketekunan dan berjalan, yang menghadirkan keandalan dan distribusi beban antara banyak instance dan host.
Di sisi lain, sama seperti formulir aplikasi, pola kode yang mendorong Anda ke arah workflow buruk. Tetapi Anda dapat menghindari masalah dengan menulis kode di alur kerja dan mendelegasikan semua pekerjaan ke kelas lain, yang dapat diatur dan unit diuji lebih anggun daripada alur kerja. Kemudian Anda mendapatkan aspek visual keren dari desainer tanpa sedikitpun kode spaghetti di belakang.
sumber
Secara pribadi, saya tidak dijual di WF. Bagi saya manfaatnya tidak sejelas teknologi MS baru lainnya, seperti WPF atau WCF.
Saya pikir WF akan banyak digunakan dalam aplikasi bisnis di masa depan, tetapi saya tidak punya rencana untuk menggunakannya karena sepertinya alat yang tepat untuk pekerjaan untuk proyek saya tidak ada.
sumber
Perusahaan saya saat ini bekerja untuk mendirikan Windows Workflow Foundation (WF) dan alasan mereka memilih untuk menggunakannya adalah karena aturan akan sering berubah dan itu akan memaksa mereka untuk melakukan kompilasi ulang berbagai dll dll dan solusi mereka adalah untuk menempatkan aturan di DB dan memanggilnya dari sana. Dengan cara ini mereka dapat mengubah aturan dan tidak perlu mengkompilasi ulang dan mendistribusikan kembali dll.
sumber
Windows Workflows merayu manajer TI non-coding, BA dan sejenisnya seperti halnya sepupunya BizTalk tetapi dalam pengujian unit praktik, debugging dan cakupan kode hanyalah tiga dari banyak jebakan. Anda dapat mengatasi beberapa dari mereka tetapi Anda harus berinvestasi dalam mencapai itu sedangkan dengan kode sederhana Anda baru saja mendapatkannya. Jika Anda benar-benar memiliki persyaratan jangka panjang maka Anda mungkin perlu sesuatu yang lebih canggih. Saya telah mendengar argumen tentang kemampuan untuk meletakkan file xaml baru ke dalam produksi tanpa mengkompilasi ulang dll. Tapi jujur waktu yang Workflow akan mengkonsumsi dapat lebih baik digunakan untuk meningkatkan Integrasi Berkelanjutan Anda ke titik di mana penyebaran yang dikompilasi tidak menjadi masalah.
sumber
Saya akan menggunakannya di lingkungan di mana saya harus bekerja dengan alur kerja, namun ketika menggunakannya bersamaan dengan K2 atau bahkan SharePoint 2007, kekuatan platform sangat berguna. Ketika mengembangkan aplikasi bisnis dengan spesialis BI penggunaan platform direkomendasikan dan ini biasanya hanya relevan untuk merampingkan dan meningkatkan proses bisnis.
Sebagai catatan, WF dikembangkan bersama dengan tim pengembangan K2 dan Blackpearl K2 baru dibangun di atas WF, demikian juga mesin alur kerja MOSS 2007 dan WSS 3.0.
sumber
Ketika Anda tidak ingin secara manual menulis semua kode untuk mempertahankan antarmuka visual, pelacakan dan ketekunan, itu adalah pilihan bijak untuk memilih WF.
sumber
Saya telah menggunakan alur kerja Windows selama berbulan-bulan sekarang untuk mengembangkan kegiatan khusus dan perancang ulang yang di-host yang dapat digunakan non-pengembang untuk membangun alur kerja. WF sangat kuat tetapi hanya sebagus aktivitas kustom yang dibangun oleh pengembang. Ketika sampai pada itu, seorang pengembang harus melihat alur kerja yang dibangun oleh non-pengembang untuk menguji dan men-debug tetapi dari titik itu mereka dapat membuat aliran kerja konsep - yang fantastis.
Selain itu, dalam kasus di mana Anda memiliki proses yang berjalan lama WF adalah tumpukan teknologi yang baik untuk digunakan ketika Anda perlu memperbarui proses secara dinamis - tanpa harus menginstal ulang / mengunduh atau melakukan apa pun, cukup tambahkan file XAML baru ke direktori dan arsitektur Anda harus atur dengan versi untuk menghapus yang lama dan gunakan yang baru.
sumber