- Katılım
- 29 Mar 2009
- Konular
- 2,176
- Mesajlar
- 9,577
- Çözüm
- 49
- Online süresi
- 1y 4mo
- Reaksiyon Skoru
- 5,109
- Altın Konu
- 497
- Başarım Puanı
- 449
- MmoLira
- 137,024
- DevLira
- 27
HERAKLES Otomatik Avlı kalıcı sunucu. 19 Haziran'da açılıyor. Atius & Wizard güvencesiyle hemen kayıt ol, ön kayıt ödülleri aktif. HEMEN TIKLA!
Teknoloji ilerledikçe, birçok şirket bilgisayar programlama bilgisine sahip çalışanlara yüksek talep görmeye devam ediyor. Birçok programlama dili arasında ortak bir sınıflandırma, nesne yönelimli programlamadır (OOP). Bir geliştirici veya programcı olarak OOP'yi anlamak, çeşitli dilleri kullanarak yazılım programları oluşturmanıza ve sürdürmenize yardımcı olabilir.
Bu yazıda nesne yönelimli programlamayı, yapısını ve temel ilkelerini tartışıyor ve bu programlama stilinin faydalarını anlatıyoruz.
Nesneye yönelik programlama nedir?
Nesne yönelimli programlama, bir grup veri niteliğini işlevler veya yöntemlerle nesne olarak bilinen bir birimde düzenleyen bir programlama paradigması veya sınıflandırmadır. Tipik olarak, OOP dilleri sınıf tabanlıdır; yani bir sınıf, sınıfın örnekleri olan nesneleri oluşturmak için bir plan olarak veri niteliklerini ve işlevlerini tanımlar. Bir sınıf birbiriyle karmaşık yollarla etkileşime giren birden fazla bağımsız nesneyi temsil edebilir. Popüler sınıf tabanlı programlama dilleri arasında Java, Python ve C++ bulunur.Örneğin, bir sınıf bir kişiyi temsil ediyorsa, kişinin yaşı, adı ve boyu gibi çeşitli verileri temsil edecek nitelikler içerebilir. Sınıf tanımı ayrıca kişinin adının ekrana yazdırılması gibi işlevler de içerebilir. Her aile üyesinin sınıfındaki kişi nesnelerini temsil ederek bir aile oluşturabilirsiniz. Her kişi benzersiz olduğundan, her kişi nesnesi farklı veri nitelikleri içerir.
Nesne yönelimli programlamanın yapısı
Nesneye yönelik programlama, OOP'nin yapı taşları olarak bilinen çeşitli yapıları içerir. Bu yapılar şunları içerir:- Sınıf: Sınıf, nesneleri oluşturmak için bir çerçeve sağlayan bir veri türüdür. Ek kod yazmadan birden fazla nesne oluşturmak için bir sınıf tanımlayabilirsiniz.
- Nesne: OOP'ta bir nesne, bir sınıfın örneğini veya oluşturulmasını temsil eder. Nesneler, kodu uygulamak için özellikler ve davranışlar gibi belirli verileri tanımlar.
- Yöntem: Yöntem, bir görevi veya eylemi gerçekleştiren bir işlevdir. Örneğin, bir yöntem bir nesnenin verileri hakkında bilgi döndürebilir.
- Nitelik: Bu yapı, bir nesne hakkındaki bilgileri saklar ve durumunu tanımlar. Bir niteliği sınıfın bir parçası olarak tanımlayabilirsiniz.
Nesne yönelimli programlamanın 4 ilkesi
Nesneye yönelik programlamanın dört temel kavramı vardır: kapsülleme, soyutlama, kalıtım ve polimorfizm. Birlikte nasıl çalıştıklarını bilmek, bir OOP bilgisayar programının temel işlevlerini anlamanıza yardımcı olabilir. Her bir kavramın açıklamasını gözden geçirin ve bunları anlamanıza yardımcı olacak örnekleri inceleyin:
1. Kapsülleme
Kapsülleme, verileri bir nesnenin içine yerleştirerek kapsüllemek anlamına gelir. OOP'ta kapsülleme, verileri kodun geri kalanından korumak için verilerin etrafında bir bariyer oluşturur. Verileri ve işlevlerini bir sınıfa bağlayarak kapsülleme gerçekleştirebilirsiniz. Bu eylem, bir sınıfın özel ayrıntılarını gizler ve yalnızca onunla arayüz oluşturmak için gerekli olan işlevselliği ortaya çıkarır. Bir sınıf, özel verilerine doğrudan erişime izin vermediğinde, iyi bir şekilde kapsüllenmiştir.
Örnek
Bir kişiyi temsil edecek sınıf oluştururken kişinin Sosyal Güvenlik Numarası gibi özel verileri tanımlayabilirsiniz. Bu verileri sınıfta özel bir değişken olarak kapsülleyebilirsiniz; bu, dış kodun ona erişemeyeceği anlamına gelir. Bir banka işlemini gerçekleştirmek için kişi sınıfına bir yöntem yazarsanız işlev, gerektiğinde veri değişkenine erişebilir. Bu örnekte kişinin özel verileri sınıf içinde iyi bir şekilde kapsüllenmiştir.
2. Soyutlama
Soyutlama, nesnelere erişmek için karmaşık uygulama kodu yerine basitleştirilmiş sınıfların kullanılmasını ifade eder. Çoğu zaman, bir sınıfın arayüzünü uygulamasından ayırabildiğiniz zaman, bir program tasarlamak daha kolaydır. OOP'ta bir sınıfın uygulama ayrıntılarını soyutlayabilir ve sınıf üyesi işlevleri aracılığıyla temiz, kullanımı kolay bir arayüz sunabilirsiniz. Soyutlama, kodda yapılan değişikliklerin etkisinin yalıtılmasına yardımcı olur; böylece bir hata meydana gelirse, değişiklik yalnızca sınıfın uygulama ayrıntılarını etkiler, dış kodu etkilemez.
örnek 1
Stereo sistemi, içinde karmaşık bir mantık panosu bulunan bir nesne olarak düşünün. Stereo sistemin dışında nesneyle etkileşime izin verecek düğmeler bulunur. Bir düğmeye bastığınızda, siz panonun içinde ne olduğunu göremeseniz bile mantık panosu sistemi açacak bir işlevi tamamlar. Bu örnek, nesne yönelimli programlamada yaygın olarak uygulayabileceğiniz soyutlama kavramını temsil etmektedir.
Örnek 2
OOP'ta insan vücudunu temsil edecek bir sınıf tanımlayabilirsiniz. Yürümek veya yemek yemek gibi bazı işlevleri genel arayüzün parçası olarak tanımlayabilirsiniz. Soyutlamayı kullanarak, bir kişinin yürümesine veya yemek yemesine olanak tanıyan bedensel işlevleri açıklamak için kod yazmaya gerek yoktur. Bunun yerine, bu bilgiyi temsil etmek için son kullanıcıdan soyutlanmış basit işlevler oluşturabilirsiniz.
3. Miras
Çoğu nesne yönelimli dil kalıtımı destekler; bu, yeni bir sınıfın otomatik olarak üst sınıfıyla aynı özellikleri ve işlevleri barındırdığı anlamına gelir. Kalıtım, bir sınıfın bir veya daha fazla ebeveyn veya alt sınıfa sahip olabileceği, sınıfları hiyerarşiler halinde düzenlemenize olanak tanır. Bir sınıfın bir ebeveyn sınıfı varsa, bu, sınıfın ebeveynin özelliklerini miras aldığı anlamına gelir. Alt sınıf ayrıca ebeveyn sınıfının davranışını değiştirebilir veya genişletebilir. Kalıtım, bir alt sınıfın işlevlerini yeniden tanımlamadan kodu yeniden kullanmanıza olanak tanır.
Örnek
Örneğin hayvanlar aleminde bir böcek, bir böcek sınıfına ait olabilir. Bu sınıftaki tüm böcekler, altı bacaklı ve dış iskeletli olmak gibi benzer özelliklere sahiptir. Çekirge ve karınca gibi farklı böcek türleri için alt sınıflar oluşturabilirsiniz. Bu çocuk sınıfları böcek sınıfının özelliklerini miras alır, yani aynı özellikleri paylaşırlar.
4. Polimorfizm
Polimorfizm, paylaşılan davranışlara sahip nesneler yaratmayı ifade eder. OOP'ta polimorfizm, sınıfların hiyerarşik olarak tekdüze bir şekilde ele alınmasına izin verir. Hiyerarşinin kökündeki nesneler için kod yazdığınızda, hiyerarşi içindeki bir alt sınıf tarafından oluşturulan tüm nesneler aynı işlevlere sahip olur. Nesnenin türüne bağlı olarak farklı davranışlar sergileyebilir.
Örnek
Kedi ve köpek olmak üzere iki çocuk sınıfına sahip, hayvan adında bir sınıfınız varsa, ses çıkarmak için bir sınıf işlevi oluşturabilirsiniz. Polimorfizmi kullanarak kedi ve köpek alt sınıflarından miras alınan bu işlevi geçersiz kılabilirsiniz. Bunun yerine, bu işlevi kedi ve köpek için sırasıyla "miyav" ve "havlama" yapabilirsiniz. Arayüzden geçen hayvan nesnesinin türüne bağlı olarak ya "miyav" ya da "havlama" sesi çıkarır.
Nesne yönelimli programlamanın faydaları
Nesneye yönelik programlama birçok dilde popüler bir programlama stilidir. OOP, bir programdaki nesneleri temsil eden ve kapsülleyen sınıf kümelerini tanımlayarak, sınıfları modüller halinde düzenleyebilir ve yazılım programlarının yapısını geliştirebilir. Yazılım geliştiricilerin karmaşık programlar oluştururken OOP'yi kullanması yaygındır çünkü sınıfları ve onların ilişkilerini tanımlamalarına olanak tanır. OOP'nin diğer faydaları şunlardır:
- Yeniden kullanılabilir kod: OOP'un kalıtım ilkesi, kodu tekrar tekrar yazmanıza gerek kalmadan yeniden kullanmanıza olanak tanır. Bu özellik, kod oluştururken hataların azaltılmasına yardımcı olabilir.
- Artan üretkenlik: Sınıflardan nesneler oluşturarak yeni yazılım geliştirirken zamandan tasarruf edebilirsiniz. Üretkenliğinizi artırmak için kitaplıkları ve yeniden kullanılabilir kodları da kullanabilirsiniz.
- Gelişmiş güvenlik: Hassas bilgileri gizlerken sınırlı verileri görüntülemek için kapsülleme ve soyutlamayı kullanabilirsiniz. Bu özellikler karmaşık kod geliştirirken gelişmiş güvenlik sağlayabilir.
Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)
Benzer konular
- Cevaplar
- 2
- Görüntüleme
- 54
- Cevaplar
- 2
- Görüntüleme
- 54
- Cevaplar
- 2
- Görüntüleme
- 62




