Posts Tagged With '.NET'

  • Oct
  • 28
  • 2011

MEF 2.0 Preview 4 yayınlandı…

Tags: , , | View: 172 | Comments:

MEF’in(Managed Extensibility Framework) geliştirmesi devam eden 2.0 sürümünün Preview 4′ü yayınlandı. Diğer Preview’lara nazaran büyük yenilikler içeren bu yeni sürümü, MEF ile ciddi anlamda uğraşan kişilere tavsiye ederim. İndirmek için bu adrese gitmeniz yeterli.

Kısaca benim neler en çok hoşuma gitti onlardan bahsetmek isterim, belki daha cazip gelir bu haber bu sayede (:

Benim en çok hoşuma giden yenilik MEF Part’larını belirtmek için kullandığımız attribute’ları yeni gelen RegistrationBuilder ile sayesinde farklı bir şekilde belirtebiliyor olmamız. Mesela belli bir sınıfta belirtilen Part’larımızdan türüyen export edilecek diğer sınıflarımız için [Export] attribute’unu tanımlamak gerekmekteydi. Hem kendini tekrarlayan bir yapı oluşmasıns sebep olan hem de bazen unutulabilen ve  runtime’da fark edilebilen bir durum oluyordu. Yeni gelen RegistrationBuilder ile aşağıdaki gibi Export edilecek Part’larımı daha kolay ve anlaşılır bir şekilde tanımlayabiliyoruz.

 //ForTypesDerivedFrom() metodu ile BaseModule gibi kendi sınıfımızdan
 //türümiş tüm objelerin export edilebileceğini söylüyoruz.
 var builder = new RegistrationBuilder();
 builder.ForTypesDerivedFrom().Export();

//MEF kataloglarına da RegistrationBuilder objemizi verebiliyoruz
 var catalog = new AssemblyCatalog(System.Reflection.Assembly.GetExecutingAssembly(), builder);
 

Generic olan sınıfları artık Export edebiliyoruz. Yani IGenericType<T> gibi bir arayüzümüz olduğunda ve bundan türeyen sınıflarımızı Export etmek istediğimiz de [Export(IGenericType<>)] şeklinde attribute’u güncellemek yeterli olacak.

Ayrıca Exception mesajlarında ki iyileştirmeler de Run-time’da alınan hataları biraz daha açıklayıcı hala getiriyor. Bu da hata tespiti için çok can kurtaracak.

Bu arada MEF 2.0 versiyonu, .NET Framework 4.5′ün içinde de geliyor olacak. Ama tabi ondan önce çıkar mı bilemiyorum…Çıkarsa ne ala…Neyse şimdilik bu kadar…

 

 

 

 

  • Oct
  • 24
  • 2011

IObserver ve IObservable ile biri bizi gözetliyor…

Tags: , , | View: 317 | Comments:

Çok uzun bir ara vermiştim fark etmiş olduğunuz üzere…Ama şimdi kaldığım yerden devam ediyor ve fazla uzatmadan hemen bu yazının konusuna geliyorum… .NET Framework 4.0 ile gelen iki yeni arayüzü kısaca anlatmaya çalışacağım.

IObservable<T> ve IObserver<T> yeni gelen arayüzlerimizden…Bu arayüzler “push-based notifications” diye literatürde yer alan sistemler oluşturmamız için faydalanabileceğimiz arayüzler. “push-based notifications” nedir ile başlasak sanırım daha kolay olacak bazı şeyler. Artık bir çok kişinin kullandığı sosyal paylaşım sitelerinden örnekler verebiliriz daha iyi anlamak için. Facebook’da örneğin, sayfa ile her hangi bir etkileşim olmadan zaman zaman sağdan soldan “1 tane mesajınız var”, “X kişisi Y’nin fotoğrafını beğendi” gibi bildirimler alıyoruz. Bu tarz bildirimlere “push-based notifications” diyoruz. Türkçeleştirmek için kasamadım açıkcası ama basitçe bir nesnenin, kendisine bağlanan ya da üye olan parçalara bildirimler göndererek, kendinde olan değişimleri bildirmesi olarak açıklayabiliriz. Gözlemci ve gözlenen olarak düşünürsek biraz daha netleşebilir sanırım. Bütün bu kavramlar aslında mevcut event yaklaşımı ile üstü kapalı olarak bize sunulmakta tüm yazılım geliştirme dillerinde. Ayrıca “Observer” tasarım kalıbı şeklinde de literatürde yerini uzun süredir korumakta.

  • Nov
  • 29
  • 2010

Bakmakta fayda var VOL. II

Tags: , , , | View: 444 | Comments:

Daha önce “Bakmakta fayda var” yazısı ile başlamaya niyet ettiğim link paylaşımlarının yenisi ile bu niyetimi biraz daha ciddileştirmiş oluyorum… .Net teknolojileri ile haşır neşir olanlara bir kaç güzel Türkçe kaynak…Mutlaka takip edin, okuyun derim…

  • Sep
  • 17
  • 2010

NedirTV?com söyleşileri…

Tags: | View: 330 | Comments:

.NET ile yazılım geliştirenlerin mutlaka duyduğu ve takip ettiği görsel olarak .NET konusunda konulara yer veren NedirTV?com sitesinde, Burak Selim Şenyurt, Uğur Umutluoğlu ve Selçuk Yavuz ile .NET 4.0 ile gelen yenilikler hakkında söyleştik. İlk defa bu tarz bir paylaşım içerisinde olmama rağmen ben çok eğlendim ve zevk aldım. Burdan bir kez daha Burak hocama,Uğur hocama ve Selçuk hocama bana bu söyleşide söz verdikleri için çok teşekkür ederim. Aşağıdaki linklerden söyleşilere ulaşabilirsiniz.

Biraz fazla anırmışım (: ama ilk defa böyle bir söyleşide yer almanın tecrübesizliği diye kendimi avutuyor ve bunun için özür diliyorum. İlerleyen günler içerisinde bu söyleşilerin devamının geleceğini de söylemeden edemicem. Takip edin derim…

  • Aug
  • 01
  • 2010

Asp.Net MVC Framework 3 göz kırpıyor…

Tags: , , | View: 510 | Comments:

Asp.Net MVC Framework 3 geçtiğimiz günlerde yayınlanan “Preview 1″ versiyonu ile göz kırptı. Bu adresten indirip deneyebilirsiniz. Bu versiyonda, daha önceleri Web Matrix ile duyurulan “Razor View Engine” de mevcut. Açıkcası en merak uyandıran yenilik bu benim için. Bunun dışında yeni ActionResults’lar ile “Action”ları yönetmek daha kolaylaşıyor. Modelleri direk JSON formatında kullanabiliyor olmamız ise, Asp.Net MVC 3′ün Javascript ile uğraşmayı sevenlerin en çok hoşuna gidecek özelliği gizi gözüküyor…

Şu an ki versiyonun “Preview” olduğunu ve bir çok sorunla karşılaşabileceğinizi hatırlatmakta fayda var.

  • Jul
  • 06
  • 2010

Web Matrix yeniden mi türedi yoksa…

Tags: , | View: 717 | Comments:

Asp.Net ilk çıktığı zaman Asp.Net Web Matrix diye oldukça basit bir IDE çıkarmıştı Microsoft…Daha sonra Visual Studio’nun alıp başını gitmesi ile, sessiz sedasız kayboldu gitti…Eminim hatırlayanlar olacaktır…Neyse konumuz Asp.Net Web Matrix değil…Yani en azından içerik bakımından…

Bugün itibari ile Microsoft, WebMatrix adında yeni bir araç çıkardı. Şu an Beta olan bu araç, oldukça faydalı bir araç aslında… WebMatrix, Windows ortamında Visual Studio olmadan basitçe Asp.Net uygulamaları geliştirebileceğiniz bir ortam. Ortam diyorum çünkü içerdiği IIS Express Edition,SQL Server Compact Edition ile ciddi anlamda dolu dolu bir içeriğe sahip. WebMatrix ile Microsoft, geçtiğimiz günlerde duyurulan Asp.Net’in yeni “View” motoru “Razor”u da bu araç ile de test edebilirsiniz.

Bu adresten daha ayrıntılı bilgilere ulaşabilirsiniz. Yetmez ise Scott Guthrie’nin bu yazısı oldukça yeterli olacaktır.

  • Jun
  • 18
  • 2010

Windows Workflow Foundation bilmeyen kalmıyor…

Tags: | View: 761 | Comments:

Türkiye’de ki, .NET konusunda bilgi paylaşan en aktif kişilerin başında gelen Burak Selim Şenyurt(MVP) hazırladığı Workflow Foundation görsel dersleri ile Workflow Foundation nedir, ne değildir,neler yapabiliyoruz,nasıl yapabiliyoruz gibi kavramları anlatıyor. Başlangıç ya da ileri seviye bilgisi olan herkese hitap ettiğini düşünüyorum. Mutlaka zaman ayırıp bakın derim…Cidden faydalı…Cidden…

  1. Workflow Foundation Öğreniyorum – Ders 0 – Hello World
  2. Workflow Foundation Öğreniyorum – Ders 1 – Biraz Daha Bileşen
  3. Workflow Foundation Öğreniyorum – Ders 2 – Kodla Başbaşayız
  4. Workflow Foundation Öğreniyorum – Ders 3 – Yeni Bir Yüz – Flowchart
  5. Workflow Foundation Öğreniyorum – Ders 4 – Flowchart için Ek İşlemler
  6. Workflow Foundation Öğreniyorum – Ders 5 – Argument Kavramı ile Tanışalım
  7. Workflow Foundation Öğreniyorum – Ders 6 – Expression Activities
  8. Workflow Foundation Öğreniyorum – Ders 7 – Homework
  9. Workflow Foundation Öğreniyorum – Ders 8 – Exception Handling

Devamını da takip ediyor olun da derim…Aha da dedim… :)

  • May
  • 06
  • 2010

Bakmakta fayda var…

Tags: , , , , | View: 610 | Comments:

Her ne kadar yazılım ile uğraşan bizlerin az biraz ingilizcesi olsa da, bazen türkçe kaynak okuyor olmak, bazı şeyleri daha iyi anlamaya yardımcı olabiliyor. Ne yazık ki bu noktada da biraz kıtlık çekiyoruz…Bu kıtlık ortamında beğendiğim ve paylaşmak istediğim bazı yazıları paylaşmak istedim. Bir kuplesini aşağıda bulabilirsiniz. Boş zamanlarınızda mutlaka göz atmanınızı öneririm.

Zaman zaman bu tarz link paylaşımlarında bulunuyor olacağım. Tabi her zaman teknik konular içeren linkler de olmayacak (:
  • May
  • 04
  • 2010

Managed Extensibility Framework(MEF)’de ki kataloglar…

Tags: , | View: 796 | Comments:

MEF‘in en önemli bileşenlerinden biri katalog(catalog) kavramı. Belli ihtiyaçlar ve yaklaşımlar doğrultusunda MEF içinde kullanabileceğimiz çeşitli kataloglar mevcut. Bunların ne olduğuna geçmeden, bu katalog kavramı tam olarak ne önce bunu anlayalım…

Managed Extensibility Framework(MEF)‘de, “Part”lar bu kataloglar ile framework bünyesine dahil olur. Bir başka deyişle, MEF, [Export] ettiğimiz bileşenlerimizi(ki bunlar “Part”lar oluyor) bu kataloglar yardımı ile bulur. Yapboz parçalarının tutulduğu kutu, ya da bilgisayar parçalarının birleştiği kasa gibi düşünebiliriz aslında. Bu kataloglar neler, kısaca bakalım bir, ne çıkacak içlerinden…:)

DirectoryCatalog

Adından aslında anlaşılıyor. “DirectoryCatalog”, MEF’de “Part”ların, belli bir dizindeki assembly’ler içinde aranmasını sağlıyor. Yani MEF ile geliştirdiğimiz uygulama eğer DirectoryCatalog kullanıyrsa, belirttiğimiz bir dizin içerisindeki dosyalarda(*.dll gibi), [Export] ettiğimiz tipleri arayacaktır. Sanırım MEF’de en çok kullanılan, daha doğrusu tercih edilen katalog budur…Yanlız burda hatırlatmak gereken bir nokta var. DirectoryCatalog’u Silverlight’ın mimarisinden dolayı, Silverlight uygulamalarında kullanamıyoruz.

AssemblyCatalog

MEF’in “Part”ları bellirtilen assembly’de aramasını sağlayan katalog tipi AssemblyCatalog oluyor. Uygulamamızın kendi içinde gizlediğimiz [Export]‘ları kullanabilmek adına kullanımı tercih edilebilir. Ya da “reflection” ile yarattığımız “assembly”leri kullanmak için de kullanabiliriz.

TypeCatalog

MEF’in belli tipte “Part”ları aramasını belirttiğimiz katalog tipi de TypeCatalog oluyor. Bu uygulama içersindeki belirttiğimiz tipte olan tüm [Export]‘ları MEF tarafından kullanılabilir hale getiriyor.

AggregateCatalog

MEF’in birden fazla “Catalog” ile arama yapmasını istediğimiz zaman AggregateCatalog’dan faydalanıyoruz. Bu katalog tipi, çalışma zamanında farklı katalogları bünyesine ekleyerek, birden fazla katalog tipinde MEF Part’larının aranmasını sağlıyor.

Bu sefer hiç kod yazmadık ama MEF için önemli bir kavramı biraz daha netleştirmeye çalıştık. Umarım faydalı olmuştur. Bu kataloglar ile örnekleri ilerleyen yazılarda yapıyor olacağım…Farklarını,artılarını,eksilerini çok daha iyi beraber anlıyor oluruz…Şimdilik bu kadar…

  • Apr
  • 21
  • 2010

Microsoft Enterprise Library 5.0 versiyonu yayınlandı…

Tags: , , , | View: 1,069 | Comments:

patterns & practices ekibinden uzun süredir beklenen haber geldi. Microsoft Enterprise Library 5.0 versiyonu son halini alıp yayınlandı.  Bu adresten kütüphanenin kurulum dosyalarını ve kaynak kodlarını indirip, kendi geliştirmekte olduğunuz uygulamalarda kullanabilirsiniz.

Ayrıca ayrıntılı bilgi ve dökümantasyon için de MSDN sayfasına göz atmanızı tavsiye ederim.