Tek Fotoluk İpucu - 15(Self Hosted Workflow Service) 07 Temmuz 2011 Burak-Selim-Senyurt Tek Fotoluk Ipucu, WCF, WCF 4.0, WF, WF 4.0 Merhaba Arkadaşlar, Elinizde bir Workflow Service kütüphanesi ve XAMLX uzantılı Workflow Service dosyaları var. Bu dosyalardan yararlanarak kendi Workflow Service Host uygulamanızı yazmak niyetindesiniz. Diyelim ki bu uygulama bir Console projesi olacak. Nasıl yaparsınız? İşte böyle ... [Daha fazla]
Workflow Foundation Öğreniyorum - Ders 6 - Expression Activities 01 Haziran 2010 Burak-Selim-Senyurt Workflow Foundation Öğreniyorum Bu dersimizde System.Activities.Expression isim alanı(Namespace) altında yer alan ve her biri Activity bileşeni olan tiplerden bir kaçını kavramaya çalışıyoruz. Özellikle üzerinde durduğumuz nokta ise, Workflow tasarım ortamına ait Component sekmesinde görünmeyen bu bileşenleri kullanabilmek için, XAML(eXtensible Application Markup Language) tarafında geliştirme yapmak. Haydi bakalım parmakları sıvayalım. [Daha fazla]
WF Ado.Net Entity Pack - Hello World 03 Mayıs 2010 Burak-Selim-Senyurt WF 4.0 Ne var ki ilerleyen zamanlarda çıkan PreBeta, Beta 1, Beta 2, RC ve nihayet RTM sürümlerinde yer alan Activity Component setinde bu tip bileşenlerin yer almadığına da şahit olduk. Hatta WF 4.0 öncesinde aşina olduğumuz State Machine tipinden şablonlarında kaldırıldığını gördük. Geçtiğimiz günlerde ise Codeplex üzerinden iki WF 4.0 Activity Pack yayınlandı. Bunlardan birisi WF Ado.Net Activity Pack CTP 1 iken diğer ise WF State Machine Activity Pack 1 isimli paketti. [Daha fazla]
Workflow Foundation 4.0 - Paralel Olmak ya da Olmamak 16 Mart 2010 Burak-Selim-Senyurt WF 4.0 RC Geçtiğimiz günlerde Workflow Foundation 4.0 içerisinde NativeActivity türevli bileşenlerde hata yönetiminin nasıl yapılabileceğini incelerken, ne olduysa kendimi ParallelForEach aktivitesini çalıştırmaya uğraşırken buldum. Bir türlü istediğim gibi ayrı Thread parçaları oluşturulmuyor dolayısıyla aktivite içerisine aldığım işler paralel olarak yürütülmüyordu. [Daha fazla]
Screencast - Workflow Foundation 4.0 Switch Aktivite Bileşeni [RC] 01 Mart 2010 Burak-Selim-Senyurt WF 4.0 RC Merhaba Arkadaşlar, Bildiğiniz üzere bir süre önce .Net Framework 4.0 RC sürümü yayınlandı. Bu da RTM ve Release sürüme çok yaklaştığımızı göstermekte. RC(Release Candidate) sürümünün önceki Beta sürümlerine g&ou... [Daha fazla]
WF 4.0 - Bookmarks [RC] 19 Şubat 2010 Burak-Selim-Senyurt WF 4.0 RC Çalışmakta olduğum yazılım şirketinin çok yakınında kocaman bir alışveriş merkezi bulunmakta. Bazen öğle yemekleri için alışveriş merkezinin tahsis ettiği servisler ile oraya gidiyoruz. Alışveriş merkezi olduğu için tehlikeli bir yer olduğunu da söyleyebiliriz. [Daha fazla]
Correlation Nedir? Yenir mi? İçilir mi? 01 Şubat 2010 Burak-Selim-Senyurt WCF 4.0 Beta 2, WF 4.0 Beta 2 Bazen bir kavramı yada konuyu anlamakta inanılmaz zorlandığınızı hatırlayın. Ne yaparsınız? Kimisi kendisini yemeğe verir. Kimisi hayat küsermişçesine bir köşeye çekilir. Kimisi kendiyle baş başa kalır ve çığlık çığlık haykırır. Kimisi de daha akıllı davranıp bir süre tatile çıkar veya anlayamadığı kavramla ilişkili herhangibir dökümanı bir süreliğine araştırmamaya, okumamaya karar verir. [Daha fazla]
Webiner - Workflow Foundation 4.0 - Introduction [Beta 2] 20 Ocak 2010 Burak-Selim-Senyurt WF 4.0 Beta 2 Merhaba Arkadaşlar, .Net Framework 3.0 sürümü ile birlikte gelen köklü yeniliklere baktığımızda Windows Presentation Foundation(WPF), Windows Communication Foundation(WCF) ve Workflow Foundation(WF) alt yapı modellerinin ön plana çıktıklarını görmekteyiz. S... [Daha fazla]
Workflow Foundation 4.0 - Kodlama Zamanında Doğrulama(Validation) 15 Ocak 2010 Burak-Selim-Senyurt WF 4.0 Beta 2 Bazen nerede duracağımızı bilmemiz gerekir ve bazende, mümkün olduğunca erken durup bazı şeyleri değiştirerek ilerlememiz...Bu teori yazılım geliştirmeninde pek çok noktasında karşımıza çıkmaktadır. Durmamız gereken noktalardan birisi, uygulamaların ürettiği ve önceden fark edebileceğimiz hatalardır(Genellikle Exception' ları düşünebiliriz). [Daha fazla]
Workflow Foundation 4.0 - Custom Async Activity Geliştirmek [Beta 2] 10 Ocak 2010 Burak-Selim-Senyurt WF 4.0 Beta 2 Hatırlayacağınız üzere bir önceki blog yazımızda Workflow Foundation 4.0 üzerinde özel aktiviteleri nasıl geliştirebileceğimizi incelemeye başlamış ve bu anlamda ilk olarak CodeActivity türevli bir bileşen üretmiştik. Workflow Foundation 4.0 ile gelen önemli yeniliklerden biriside asenkron aktivite bileşenlerini içeriyor olmasıdır. Özellikle .Net Framework 4.0 tarafında üzerinde ağırlıklı olarak durulmaya başlanan paralel programlamanın da bir sonucu olan bu durum karşısında, geliştiricilerin asenkron olarak çalışabilen aktivite bileşenleri yazması pek tabidir. [Daha fazla]
Workflow Foundation 4.0 - Persistence [Beta 2] 01 Aralık 2009 Burak-Selim-Senyurt WF 4.0 Beta 2 Workflow Foundation modeli ile geliştirilen uzun süreli işlemlerde(Long Running Process) en önemli konulardan biriside, Workflow örneğinin herhangibir t anında kalıcı olarak saklanabilmesi(Persist) ve istenildiğinde saklandığı yerdeki içeriği ile birlikte tekrardan ayağa kaldırılabilmesidir... [Daha fazla]
WF 4.0 : WorkflowInvoker ile Single Thread, WorkflowApplication ile Multi-Thread [Beta 2] 02 Kasım 2009 Burak-Selim-Senyurt WF 4.0 Beta 2 WF 4.0 öncesinde bir Workflow örneğini çalıştırmak için WorkflowRuntime sınıfından yararlanılmaktadır. Aşağıdaki kod parçasında Visual Studio 2008 üzerinde geliştirilen basit bir WF örneğinin çalıştırılması için otomatik olarak üretilen kod görülmektedir. Ancak Workflow Foundation 4.0 içerisinde bir Workflow örneğini çalıştırmak için iki farklı yol sunulmaktadır. İlk yol daha önceki yazı ve görsel derslerimizde de sıklıkla bahsettiğimiz WorkflowInvoker sınıfına ait static Invoke metodunun kullanılmasıdır. Bu tekniğin en önemli özelliği Workflow örneğinin çalıştığı uygulamaya ait Thread içerisinde senkron olaran yürütülmesini sağlamasıdır. Dilerseniz ne demek istediğimize basit bir örnek yardımıyla bakmaya çalışalım. Visual Studio 2010 Ultimate Beta 2 sürümü üzerinden oluşturduğumuz Workflow Console Application içerisinde aşağıdaki Workflow1 içeriği göz önüne alınmaktadır. [Daha fazla]
WF 4.0 Beta 1' den Beta 2' ye 27 Ekim 2009 Burak-Selim-Senyurt WF 4.0 Beta 2 Workflow Service' ler ile çalışırken Beta 1 sürümünde geliştirdiğim örneklerin Beta 2 sürümünde ne yazık ki çalışmadığını farkettim. Bu son derece doğaldı çünkü kısa bir süre önce yayınlanan .Net Framework Beta 2 sürümünde, WF tarafında özellikle tipler bazında bazı geri dönüşler ve değişimler meydana geldi. Hal böyle olunca konuyu hemen araştırmaya koyuldum. Pek çok blog yazısında WF 4.0 Beta 1 ve Beta 2 arasındaki farklılıkları bulabilirsiniz. [Daha fazla]
WCF 4.0 Yenilikleri - Workflow Services [Beta 2] 19 Ekim 2009 Burak-Selim-Senyurt WCF 4.0 Beta 2 Merhaba Arkadaşlar, WCF ve WF arasında ilişkiyi anlatan güzel bir cümle vardır. .Net Framework 3.0' da arkadaş olan WCF ve WF, .Net Framework 3.5 sürümünde nişanlanmış, .Net Framework 4.0 sürümünde ise evlenmişlerdir. Bu ikilinin bir arada ele alınması ... [Daha fazla]
WF 4.0 - Kod Yoluyla Workflow Service Oluşturmak, Kullanmak [Beta 1] 16 Ekim 2009 Burak-Selim-Senyurt WF 4.0 Beta 1 Örneğin her zaman elimizin altında Visual Studio IDE' sinin sunduğu gibi gelişmiş arayüzler bulunmayabilir. Örneğin Visual Studio 2010 Beta 1 üzerinde yaşadığım sorunlardan birisi WPF tabanlı Designer' ı Workflow uygulamaları için kullanamıyor oluşumdu. Bu gerçekten çok üzücü bir durum. [Daha fazla]
WF 4.0 - Veri(Data)[Beta 1] 12 Ekim 2009 Burak-Selim-Senyurt WF 4.0 Beta 1 Bir süredir Workflow Foundation 4.0 ile ilişkili blog yazılarını, makaleleri ve görsel dersleri takip etmekteyim. Bu araştırmalarım sırasında Workflow Foundation 4.0 modelinde veriye(Data) olan bakış açısının WF 3.X sürümüne göre oldukça farklılaştığını gördüm. [Daha fazla]
WF - ExternalDataExchange, Local Services ve CallExternalMethodActivity 25 Eylül 2009 Burak-Selim-Senyurt WF Birden fazla aktivitenin aynı fonksiyonları ortaklaşa kullanabilmeleri nasıl sağlanır? Yani bir fonksiyonun birden fazla aktivite içerisinde kullanılması gerektiği durumlarda nasıl bir yol izleyebiliriz? [Daha fazla]
WF - XAML Bazlı Workflow Örnekleri Geliştirmek 06 Mayıs 2009 Burak-Selim-Senyurt WF Geçtiğimiz günlerde Workflow 4.0 ile ilişkili araştırmalarıma devam ederken, özellikle dekleratif olarak tanımlanabilen WF servislerindeki önemli bir noktayı farkettim. Bu, aynı zamanda WF 4.0 ile birlikte gelen en önemli yenilikler arasındaydı. [Daha fazla]
Windows Workflow Foundation 4.0 - İlk İzlenimler 26 Mart 2009 Burak-Selim-Senyurt WF 4.0 Bundan sadece bir kaç sene önce .Net Framework 3.0 versiyonu ile birlikte iş akışlarının(Workflows) kod içerisinde modellenerek farklı uygulamalarda kullanılabilmesini sağlamak amacıyla Windows Workflow Foundation(WWF) alt yapısı duyurulmuştu. Paralelinde ise, Servis Odaklı Mimarilere(Service Oriented Architecture) yeni bir yaklaşım, Windows Communication Foundation(WCF) ile birlikte getirilmişti. Workflow Foundation her ne kadar iş akışlarının(çoğu zaman kod akışlarının) kendi içinde modellenmesini sağlasa da, zaman içerisinde dış ortamlar ile olan haberleşmesinde WCF ile birlikte hareket etmeye başlamıştır. [Daha fazla]
WCF ile WF Entegrasyonu - 2 23 Nisan 2008 Burak-Selim-Senyurt WCF, WF Bir önceki yazımızda WCF(Windows Communication Foundation) servislerinin, WF(Windows WorkFlow) uygulamaları içerisinden nasıl çağırıldığını incelemiştik. Bu yazımızda ise tam tersine, bir Workflow örneğinin servis olarak nasıl sunulabileceğini analiz ediyor olacağız. Bazı durumlarda kod akışlarının birer servis olarak istemcilere sunulması gerekebilir. [Daha fazla]
WCF ile WF Entegrasyonu - 1 17 Nisan 2008 Burak-Selim-Senyurt WCF, WF Bilindiği üzere Window Communication Foundation ve Windows Workflow Foundation, .Net Framework 3.0 ile birlikte gelen önemli teknolojilerdendir. WCF servis yönelimli mimariye(Service Oriented Architecture) yeni bir yaklaşım getirip, dağıtık mimari uygulama geliştirme kavramlarını bir çatı altında toplayarak güçlü, daha platform bağımsız ve güvenilir bir ortamda geliştirme yapılabilmesini olanaklı kılan bir alt yapı sunmaktadır. [Daha fazla]
Adım Adım State Machine Workflow Geliştirmek 15 Ocak 2008 Burak-Selim-Senyurt WF Öyle iş akışları vardırki, süreç(Process) içerisinde yer alan adımlar arasındaki geçişler herhangibir zamanda ve herhangibir olayın meydana gelmesi sonrasında mümkün olur. Çoğunlukla terminolojide Sonlu Durum Makinesi(Finite State Machine) olarak geçen bu yaklaşıma göre, herhangibir nesnel varlığın zaman içerisinde sahip olabileceği durumlar işaret edilmektedir. Çok doğal olarak bu durum, programatik ortamda yer alan iş problemlerinin çözümündede göz önüne alınmaktadır. İşte bu makalemizde Sonlu Durum Makinesi(Finite State Machine) kavramını irdelemeye ve Windows Workflow Foundation içerisindeki kullanımını araştırmaya çalışacağız. Başlamadan önce Sonlu Durum Makinesi(Finite State Machine) kavramını anlamaya çalışamakta yarar vardır. [Daha fazla]
WWF : Çalışma Zamanı Motoru, Singleton ve Factory Desenleri 04 Ocak 2008 Burak-Selim-Senyurt WF Bir önceki makalemizde iş akışı(Workflow) kavramını anlamaya çalışmış, Windows Workflow Foundation(WWF) mimarisini yüzeysel olarak incelemiş ve basit bir kaç Sequential Workflow örneği geliştirmiştik. Bu makalemizde ise WWF mimarisinin sunduğu çalışma zamanı ortamını derinlemesine kavramaya çalışacağız. Ağırlıklı olarak üzerinde durmaya çalışacağımız konu ise WorkflowRuntime sınıfı olacak. [Daha fazla]
İlk Bakışta Windows Workflow Foundation 01 Ocak 2008 Burak-Selim-Senyurt WF Gerçek dünyada pek çok iş probleminin çözümünde iş akışlarından(Workflow) yararlanılır. Temelde bir iş probleminin çözümünde veya amacının gerçekleştirilmesinde izlenen yol birdir. Önce problem yönetilebilir küçük parçalara bölünür. Bu parçalar, gerçekleştirilmesi gereken görevler(Tasks) olarak düşünülebilir. Her bir görevin(Task) içerisinde ona ait gerçekleştirilmesi gereken ne varsa adımlar(Steps) halinde tasarlanır. Bu adımlar dahil oldukları görevin tamamlanmasında rol oynarlar. Adımlar arasındaki geçişler basit olabileceği gibi çeşitli çevresel koşul veya faktörlerede bağımlı olabilir. Bir başka deyişle adımlar arası geçişlerde koşullar(Conditions) söz konusu olabilir. Adımlar düzenli bir sırada olup aralarındaki geçişler önceden tanımlanmış ve belirli olabileceği gibi, çeşitli olaylara göre farklı şekillerde ele alınabilirlerde. Sonuç olarak ortaya iş probleminin çözümü için tasarlanmış bir süreç(Process) ve kontrollü bir akış(Control Flow) çıkar. [Daha fazla]