Ortaklarımız: Ant Mekanik , Teknova Shop , Taliasoft

AutoCAD Gunlugu

Üye Girişi

RSS

Autocad Günlüğü RSS besleyicisine üye ol.


Mar 05
Pazartesi
Genel
DLL nedir?

Windows’un herhangi bir sürümünü kullanmış olanlarınız mutlaka bahsettiğim dosya türünün ne olduğunu hemen hatırlarlar. Ancak programlamayla ilgilenmemiş çok az insanın bu dosya türü hakkında detaylı bilgisi vardır. DLL(Dinamic Link Library) yani dinamik bağlı kütüphanelerin ne olduğunu,nerelerde kullandığı ve ne avantaj sağladığı hakkında bildiklerimi bu yazımda sizinle paylaşacağım.

Yapısaldan nesneye yönelik (OOP) tüm dillerde kullanılan fonksiyon ve nesne kavramına benzetilebilir. Nasıl ki program için bir işlemi birden çok gerçekleştireceğiniz zaman onu fonksiyon yapmamız gerektiğinde gerekli parametrelerle çağırıyorsanız, DLL ler için de aynı mantık geçerlidir. Tek fark exe(Executable), yani programın çalıştırılabilir ana dosyasından farklı yerde saklanmasıdır. Bu arada artık Windows ortamında çalıştırılabilir 2 dosya türünden bahsetmenin zamanı geldi sanırım. Birincisi EXE dosyaları ikincisi ise DLL’ lerdir. İkilik sayı tabanında kayıt edilirler ve çalıştırılabilir kod barındırırlar. Asıl konumuza dönersek, fonksiyonların programı parçalara bölüp zamandan ve okunabilirlikten kazanç sağladığını hatırlatalım. DLL ler de aynı mantık ile çalışır. Eeee…”programı fonksiyonlara bölüp zamandan tasarruf etmek yetmez mi?” derseniz; şimdi DLL lerin sağladığı avantajları bir görün derim.

DLL Kullanmanın Avantajları

Herhangi bir dilde yazılmış bir DLL diğer bir dillerden uygun tipte parametreler kullanılarak çağrıldığında da kullanılabilir. Şöyle düşünün: Bir programlama dili kullanarak bir yazılım geliştiriyorsunuz ve kullandığınız dilin yeteneği olmayan bir konuda işlem yapmanız gerekti. İşte bu nokta başka dilde yazılmış bir DLL’ i kullanıp o işlemi gerçekleştirebilirsiniz.

Bütün kodların tek bir EXE dosyasında olduğunu düşünün. Ortalama bir programın hafızada ne kadar yer kapladığını da siz tahmin edin. Büyük çoğunluğu EXE dosyasının kapladığını gerçektir. Programı her çalıştırdığınızda tüm EXE hafızaya yüklenip çalıştırılacağından facia gibi bir şeyle karşılaşırsınız. Bu yüzden tüm kodlar EXE’ye gömülmek yerine DLL dosyalarına bölünür ve gerektiğinde hafızaya yüklenip kullanılırlar.

Şimdi, geniş çapta bir program yazdığınızı ve fazlaca kullanıcınızın olduğunu düşünün. Siz de programınız tek exe halinde (yaklaşık 100 mb diyelim) yazıp dağıtmışsınız. Aksilik bu ya :)  programı güncellemeniz gerekti. İnternet sayfanızda gerekli düzeltmeleri yapıp müşterilerinizden güncelleme yapmalarını istediniz. Eminim 100 mb lık programı yeniden indirmek size epey müşteri kaybettirecektir. Eğer programı işlev işlev DLL dosyalarına bölseydiniz, yanlızca hata olan fonksiyonun bulunduğu DLL’i müşterilerinizden güncellemesini istemeniz yetecekti. Bu da belki birkaç megabyte demek olacaktı.

Kısaca DLL dosyalarının hız, zaman ve hafızadan tasarruf sağladığından bahsedebiliriz.

Biraz da MS Windows işletim sisteminin DLL dosyalarından nasıl faydalandığına bakalım. Bunun için Windows dizinindeki system32 klasörüne bakmanız yetecektir. Hiç de yabancı gelmeyen dosya isimleriyle karşılaşacaksınız. Bunlar Windows ta yaptığınız günlük rutin işleri gerçekleştiren fonksiyonların barındıkları dosya formatlarıdır.

Hoçakalın…

Technorati Tags: , ,

Read this article in English.

Şimdiye kadar 1,887 kere okunmus. Bu hafta: 19 Bu gun: 3 En son: 4 July 2009, 12:43

1 Yıldız2 Yıldız3 Yıldız4 Yıldız5 Yıldız (Henüz oy verilmemiş)
Loading ... Loading ...
Yazı Etiketleri:

3 Yorum to “ DLL nedir? ”
  1. Merhaba Özgür,
    Yazınız çok başarılı olmuş, emeğinze sağlık
    Teşekkürler

  2. yazınız gayet güzel ve anlaşılır olmuş.
    Teşekkür ederim

  3. HAKAN SEVİMLİ

    May 2, 2008
    Yanıtla

    autocat kullanırken geçersiz proğramda bir sürüm yüklenmek istedi yazıyor ve DLL hatası veriyor ne yapabilirim acil cevap yazarsanız sevinirim teşekkürler


Yorum bırakın:



All content and source © 2008 Autocad Günlüğü | News Plus wordpress theme brought to you by Zidalgo.