Muhammed Tahiroğlu yazıyor
Yazılım ve Sanat

Resource Dosyalar İçin Public Class Generator

Ekim 18, 2007 21:37, Muhammed

Yukarıdaki başlık .NET'e yabancı olanlar için eminim bir mana ifade etmiyordur. Öyle okurlarım varsa hepsi beni affetsinler. Derinlikli mevzular oluyor bazı yazdıklarımız. Ama bu da benim hakkım değil midir? Arabanın alternatör kasnağı da benim kafamda bir şey ayaklandırmıyor.

Neyse sevgili okur. Hala niyetliysen Resource denen kavramın dertlerine ortak olmaya, devam et okumağa.

.NET Framework Resource türü dosyalara "strongly-typed" biçimde erişebilmemiz için sınıf kodunu üreten bir araç sunuyor. Bu konsol aracı ön tanımlı olarak Visual Studio bünyesine dahil edili durumda. Bir resource dosya eklediğinizde onu temsil eden sınıf kodu da üretilip .resx'in peşine takılıyor. Yalnız kadı kızında olabilecek kusurlardan birisi de bu araçta var. Bu aracın ürettiği sınıf kodu "internal" erişim seviyesine sahip. Siz el ile "public" yapayım, dış dünyadan da rahatlıkla kullanayım deseniz de nafile. Tekrar "internal" ile eziyor erişimi. Hani beklediğimiz nedir, bunu bize seçtirmesi. Ama yok işte.

Bu sıkıntıyı yaşayan her bünye internete olta atar. Code Project'ten bir zat, hayrına bu kod jeneratörünün gelişmişini yazmış. Ve kullandıktan sonra farkettiğimiz bir güzellik de bu jeneratörün içinde placeholder karakteri "{0}" geçen string ifadeler için "degiskenAdiFormat()" metodları üretmesi. Normalde string.Format deyip içine o değişkeni verirdik ya! Sevineceksiniz, emin olun. 

Bu tip kod geliştirenler Code Project'ten çıkmıyor sadece. Bizim de Gökhan Altınören'imiz "public" kod üretme derdimize yine aynı usülle çare bulmuş.

Bir ara da resource refactoring'ten bahsetmiştim. Onunla birleşince güzel bir bahis olur bu. Hoşçakal kardeşim deniz.

Related posts

Yorum ekle


(Gravatar simgesini gösterecek)  

  Country flag




 
EOS 40D
Site Meter