Arda Çetinkaya Yazılım ve arada kendim ile ilgili karaladıklarım…

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…

 

 

 

 

, ,

Van için rock…

/ Leave a comment / ~ 2 dakikada okuyabilirsiniz.

Herkes bu kötü olayı biliyor zaten, o yüzden hemen konuya giriyorum…Yardım ve destek için 30 Ekim 2011 günü 40 kadar müzisyenin katılımı ile büyük bir etkinlik düzenleniyor…Katılamazsanız bile Biletix’den bilet alıp destek olabilirsiniz. Ayrıntılar aşağıda…

VAN İÇİN ROCK!

30 Ekim 2011 Pazar @ Maçka Küçükçiftlik Park

!! Biletleri, Yarından (25 Ekim) itibaren Biletix’ten veya Maçka Küçükçiftlik Park gişesinden temin edebilirsiniz. !!

Rock müzisyenleri Van için bir araya geliyor!

23 Ekim günü Van’da meydana gelen deprem sonrası çok sayıda yurttaşımız hayatını kaybetmiş, bir çoğu da evsiz kalmıştır.

Biz müzisyenler olarak, birlik ve beraberliğe en çok ihtiyacımız olduğu bu ortamda, en iyi yaptığımızı düşündüğümüz şeyle yani ürettiğimiz müziği arkamıza alarak Van’a destek için bir araya geliyoruz.

Yüzlerce sanatçı, gönüllü ve kurumun koşulsuz ve ücret almadan katılımıyla gerçekleşecek olan ‘VAN İÇİN ROCK!’ toplu konseri, 30 Ekim 2011 Pazar günü (bu Pazar) Maçka Küçükçiftlik Park’ta yapılacaktır.

DreamTV‘den canlı yayınlanacak olan konserin tüm geliri TÜRK KIZILAY’ı vasıtasıyla “sadece” Van’daki depremzedeler için kullanılacaktır.

Sahne Alacak İsimler: 4×4, Aslı, Aylin Aslım, Aydilge, Ayşe Saran- Murder King, Barlas, Can Bonomo, Cem Köksal, Çilekeş, Demirhan Baylan, Demir Demirkan, Dilemma, Duman, Direc-t, Emre Aydın, Ete Kurttekin, Feridun Düzağaç, Foma, Gece, Gece Yolcuları, Gripin, Haluk Levent, Kurban, Mabel Matiz, Malt, Marsis, Melis Danişmend, Model, Moğollar, Mor ve Ötesi, Multitap, Ogün Sanlısoy, Özge Fışkın, Öztürk, Pamela, Redd, Şebnem Ferah, TNK, Yüksek Sadakat.

Etkinlikte sahne alarak destek vermek istediğini bildiren ve burada ismi geçmeyen yüzlerce müzisyen dostumuz da konser günü yanımızda olarak desteklerini gösterecektir.

http://www.vanicinrock.org/

Twitter’dan takip için: http://twitter.com/vanicinrock

Etkinlikte yer alan ve destek veren tüm kişi ve kuruluşlar gönüllü olarak çalışmakta ve hizmet vermektedir.

VAN İÇİN ROCK KONSERİ

Yer : Maçka Küçükçiftlik Park
Tarih : 30 Ekim 2011 Pazar
Kapı Açılış : 11:00
Bilet Fiyatı : 20 TL

Biletleri, Yarından itibaren Biletix’ten veya Maçka Küçükçiftlik Park gişesinden temin edebilirsiniz.

İLETİŞİM : vanicinrock@gmail.com


 

Ç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.

Devam…

Uzun süredir beklediğim Roslyn’nin CTP versiyonu bügun itibari ile çıkmış bulunmakta…Peki nedir bu Roslyn diyecek olursanız, kısaca açıklamaya çalışim. Hangi platform olursa olsun compiler’lar kara kutudur genellikle…İçerisinde neler oluyor, neler bitiyor uygulama geliştiriciler tarafından hiç bilinmez. Roslyn ile bu biraz değişiyor işte. Rosyln sayesinde compiler’ların çalışma şekillerini kontrol edebileceğiz. Roslyn’nin sunduğu API’ler ile belki kendi managed programlama dilimizi bile yazabileceğiz. Kodu daha iyi analiz edebilecek yöntemler üretebileceğiz. Bütün bunların amacı aslında Microsoft’un ‘compiler as a service'(CaaS) yaklaşımından ortaya çıkıyor aslında…Önümüzdeki günlerde blog’u tekrardan canlandıracak konular ile Roslyn’e daha fazla değineceğim…

CTP versiyonu bu adresten indirebilirsiniz…

As you know Windows 8 Developer Preview has just released to the developers. I think most of you were waiting for the new UI engine called Metro UI which have been in Windows Phone 7.5 before.

If you are a developer who are not interested in with new Metro UI for now, maybe you would be annoyed when you click Start in Windows 8.

So how to disable Metro UI in Windows 8? It is not a big think in fact. Just some changes are needed to be done in registry. From RUN screen type regedit to open Registry Editor. And then find RPEnabled key in HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer and change it to 0 to enable Start menu. And to disable Start menu you can change it to 1. And of course you have to restart Windows 8 or kill explorer.exe and re-run from Task Manager to update registry.

I hope this make your life more easy while you are developing some nice things for Windows 8.