Showing posts with label sınıf kütüphanesi oluşturma. Show all posts
Showing posts with label sınıf kütüphanesi oluşturma. Show all posts

Friday, September 21, 2012

Nesne Tabanlı Programlama (C#)


NESNE TABANLI PROGRAMLAMA

Nesne yönelim tekniği, gerçek hayatı programlar için simule edecej yöntemler topluluğudur. Her nesnenin kendine has özellikleri
vardır. Nesneler tamamen birbirlerinden soyutlanarak farklılaştırılır. Tabi her nesnenin birbirine mesaj göndermesi de son
derece doğaldır. Bu gerçek yaşamda da böyledir. Nesne yönelimli programlama tekniğinde gerçek bir sistem parçalara ayrılır
ve parçalar arasında ilişkiler kurulur. Nesne tabanlı programlamada önemli olan her parçayı etkili bir şekilde tasarlamaktır.



NESNE KAVRAMI

Nesneler gerçek hayatta görebildiğimiz ya da varlığını bildiğimiz eşyalardır. Nesne yönelimli programlama tekniğinde sınıflar
nesnelerin biçimlerini belirler. Oluşturduğumuz nesneler dınıf türlerinden nesneler olarak da adlandırılabilir. Her bir nesne
kendi içinde tutarlı bir yapıya sahiptir. Yani veriler arasında sıkı bir bağ vardır.

C#'ta nesne yönelimli programlama yapısını sınıflar sağlar. Sınıfları kullanarak nesneler tanımlarız. Hatırlayacağınız gibi
bir nesne aşağıdaki gibi oluşturuluyordu.

using System;

class Sınıf
{
   puplic int a;

   puplic int A()
   {
     return a;
   }
}

class MainMetodu
{
   static void Main()
   {
     Sınıf x = new Sınıf();
   }
}


Yukarıdaki programda Sınıf bir nesnenin şeklini belirlemektedir. Kısacası bir tür bilgisi saklamaktadır. new anahtar sözcüğünü
kullanarak bu türdeb x isimli bir nesne tanımlıyoruz. Bu x nesnenin bir tane veri taşıyan yapısı, bir tanede iş yapan metodu
mevcuttur.

Sınıflar bir tür  bilgisi olduğuna göre bu türü paketleyip istediğimiz programda kullanabilmemiz gerekir.



Sınıf Kütüphanesi Oluşturma

Her zaman olduğu gibi boş olduğu gibi boş bir metin dosyası açıp aşağıdaki sınıf yazalım ve RastgeleSayi.cs adıyla kaydedelim.
Bu sınıf yapısında rastgele bir değer bulunan bir özelliğe sahiptir. Ayrıca rastgele sayıyı daha sonra değiştirebilmek için
bir de Değiştir() isimli bir metot sağlanmıştır. Bu örnekte rastgele sayılar üretmek için System isim alanında bulunan
Random sınıfı kullanılmıştır.

using System;

namespace Csharp
{
  puplic class Rastgelesayi1
  {
    pravite Random rnd = new Random();
    pravite int mSayi;

    Puplic int sayi
    {
      get
       {
         return mSayi;
       }
    }
    puplic RastgeleSayi()
    {
      mSayi = rnd.Next(0,100);
    }

    puplic void Değistir()
    {
     mSayi = rnd.Next(0,100);
    }
  }
}


Yukaridaki kaynak kodda Main() metodunun olmadığına dikkat edin. Burada tanımladığınız sınıf kendi başına çalışabilen bir yapı
değildir. Ancak bir program içinde bu sınıf türünden nesneler tanımlayabiliriz.

yazdığımız sınıfın solution kısmına sağ tıklayarak build ettiğimizde daha önce belirtilen yolda sınıfın .dll dosyası derlenir.
bu dosya da yazdığımız sınıfı içeren binary düzeyde bilgiler bulunur. Dosyayı açtığımızda kodlarımızı açık bir şekilde
göremeyiz. Sınıfın  .dll dosyası elimizde olduğu sürece programlarmızda sınıfı dilediğimiz gibi kullanabiliriz.

Sınıf Kütüphanesi kullanma

Oluşturduğumuz bu sınıfı programlarımızda kullabilmek için derleyiciye .dll dosyasının yolunu bildirmek gerekir.

ana sınıfımızın bulunduğu programımızda solutionun referansına add referans dediktikten sonra .dll dosyamızı seçtikten sonra
programızın refaranslarının çağrıldığı kısma using .dll ismini eklediğimiz oluşturduğumuz sınıfı kullanabiliriz.
namespaceini eklicez bitti.