16 Ekim 2013 Çarşamba

Keman

Hobi olarak çaldığım bi kaç keman videosunu paylaşayım dedim ve bunları yükledim.
Hatalarım olduğunu biliyorum ama adı üstünde hobi olduğundan çok da şeyapmayın :D

Bülbülüm Altın Kafeste

http://www.youtube.com/watch?v=0tcTds2lqsE

Fikrimin İnce Gülü

http://www.youtube.com/watch?v=NXmYo5-5Nb0&feature=youtu.be

13 Ekim 2013 Pazar

Object Oriented Programming (Nesne Tabanlı Programlama)

Merhaba,
Bayram yaklaşırken gerek temizlikten kaçış ;) gerek artık bir bloga başlama isteğim beni acil olarak bu yazıyı yazmaya itti ve bildiğim en temel şeylerden biriyle başlamaya karar verdim.

OBJECT ORIENTED PROGRAMMING NEDİR?

Bilirkişi gibi cümleler kurmayı sevmediğimden dolayı böyle şeylerin tanımını tam olarak yapamasam da mantığını anlatmaya çalışacağım.

Kurban bayramında olduğumuzdan dolayı kurbanlık hayvanlar üzerinden bir örnek vermek istiyorum :) .
Bu hayvanlardan koyunu ele alalım. Bir koyunun; yaşı, türü, ağırlığı,rengi gibi özellikleri vardır. Bunun yanında otlanma, yürüme gibi fonksiyonları da vardır. Bu özelliklerin hepsi birleşerek koyun türünü oluşturur. Koyun türünden oluşmuş değişik renklerde değişik ağırlığa sahip bir çok koyun vardır.

Nesne tabanlı programlamada da bazı veri türleri ve fonksiyonlar birleşerek sınıfları (class) oluştururlar. Bu oluşturulan sınıfı kendi ürettiğimiz yeni bir veri türü gibi düşünebiliriz. Ve bu türden ürettiğimiz değişkenlere nesne diyoruz.

Yani önceki örneğimizde koyun türü bir sınıfken bu türden oluşturulmuş olan Doly isimli beyaz renkli koyun bir  nesnedir.

Peki biz bilgisayarda bir sınıfı ya da nesneyi nasıl tanımlarız? Bunun için öncelikle nesne tabanlı bir programlama diline ihtiyacımız olacak. Bunu C++, Java, C#, Phyton, Ruby gibi dillerle yapabiliriz. Ben şu an Java ile örnek vermek istiyorum.

Nesne kullanmak için önce o nesnenin sınıfını tanımlamalıyız. oluşturacağımız sınıfta bazı veri türleri ve metodlar ( classa ait fonksiyonlar) olacak. Ve sınıfımızın bir adı olacak.
class Koyun{}


ifadesi Koyun adında bir class oluşturmamızı sağlar. Şimdi bu sınıfımızın belirli özelliklerini tanımlamamız gerekiyor.
public class Koyun{

public int yasi;

public double kilo;

public string renk;

public void otla(double ot_agirligi){

kilo = kilo + ot_agirligi;

}

}

Şimdi sınıfımızı daha belirgin hale getirdik. Koyunların sahip olduğu özellikleri ekledik ve bir otla() metodu yazdık. Otla() metodumuz koyuna verilen otun ağırlığını koyunumuzun ağırlığına ekliyor. Biraz düz mantık olsa da kolay anlaşılması için başka bir ifade yazmadım.

Public ifadesine şimdilik takılmadan nasıl nesne oluşturacağımıza geçelim. Daha kolay anlaşılması için şimdilik tüm özellikleri public olarak tanımladık bu konuyu daha sonra anlatacağım.
Nesnemizi Java ve birçok programlama dilinde programımız başladığı anda çalıştırılan main metodu içinde oluşturacağız.
public static void main(String [ ] args){
ak_koyun = new Koyun();

ak_koyun.kilo = 20;

kara_koyun = new Koyun();

kara_koyun.kilo = 30;

ak_koyun.otla(5);

kara_koyun.otla(3);

}

Nesne Oluşturma

nesne_adi = new Class_Adi(); ifadesi yeni bir nesne oluşturmamızı sağlar. Örnekte koyunların sadece kilo özelliklerini belirttik ve 2 adet Koyun nesnesi oluşturduk. Yani bir sınıftan istediğimiz kadar nesne oluşturabiliriz. Nesne oluşturduğumuzda Koyun classına ait bütün değişkenler her nesne için ayrıca oluşturulmuş oluyor.

Metod Çağırma

nesne_adi.metodAdi(); ifadesi oluşturduğumuz nesnenin sahip olduğu bir metodu çalıştırmamızı sağlar. Örnekte otla metoduna 5 göndererek ak_koyun adlı koyunun ağırlığına 5 eklemiş olduk. otla metodunu çağırdıktan sonra ak_koyun nesnesinin kilosu 25 oldu.

Bu yazımda kısaca class oluşturma classa değişken ve metod ekleme nesne oluşturma ve bu metodları kullanmaktan bahsettim.

Şu an bu yazının pek güzel olduğunu düşünmüyorum ama ilerde daha iyi bir anlatım tarzım olacak :D

Herkese iyi bayramlar :)