Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Nesne yönelimli programlama

bullvar_katip

Administrator
Katılım
21 Mayıs 2024
Mesajlar
532,105
Nesne yönelimli programlama veya kısaca NYP (, Kısaltma: OOP), Her işlevin nesneler olarak soyutlandığı bir programlama yaklaşımıdır. NYP destekleyen programlama dilleri yüksek seviye diller olarak adlandırılır. sağ|250px|küçükresim|NYP'den önceki uygulamaların bakım maliyeti ve karmaşıklık ilişkisi 1960'lı yılların sonuna doğru ortaya çıkan bu yaklaşım, o dönemin yazılım dünyasında beliren bir bunalımın sonucudur. Yazılımların karmaşıklığı ve boyutları sürekli artıyor, ancak belli bir nitelik düzeyi korumak için gereken bakımın maliyeti zaman ve çaba olarak daha da hızlı artıyordu. NYP'yi bu soruna karşı bir çözüm haline getiren başlıca özelliği, yazılımda birimselliği (modularity) benimsemesidir. NYP ayrıca, bilgi gizleme (information hiding), veri soyutlama (data abstraction), çok biçimlilik (polymorphism) ve kalıtım (inheritance) gibi yazılımın bakımını ve aynı yazılım üzerinde birden fazla kişinin çalışmasını kolaylaştıran kavramları da yazılım literatürüne kazandırmıştır. Sağladığı bu avantajlardan dolayı, NYP günümüzde geniş çaplı yazılım projelerinde yaygın olarak kullanılmaktadır. NYP'nin altında yatan birimselliğin ana fikri, her bilgisayar programının (izlence), etkileşim içerisinde olan birimler veya nesneler kümesinden oluştuğu varsayımıdır. Bu nesnelerin her biri, kendi içerisinde veri işleyebilir ve diğer nesneler ile çift yönlü veri alışverişinde bulunabilir. Hâlbuki NYP'den önce var olan tek yaklaşımda (Yordamsal programlama), programlar sadece bir komut dizisi veya birer işlev (fonksiyon) kümesi olarak görülmektedirler. Günümüzde çok çeşitli nesne tabanlı programlama dilleri olmasıyla beraber, en popüler diller sınıflar üzerine kurulmuşlardır . Bu dillerde nesneler sınıfların birer üyesidir ve nesnelerin tipini de bu sınıflar belirlerler. En yaygın NYP dillerinden bazıları, Python, C++, Objective-C, Smalltalk, Delphi, Java, Swift, C#, Perl, Ruby ve PHP' dir. Nesne yönelimli programlama dilleri yukarıda adı geçen tüm ögelere sahip olurken, Ada, JavaScript, Visual Basic gibi nesne tabanlı programlama dilleri birkaçından yoksundur, bu dillerin başlıca yoksunluğu kalıtıma sahip olmamalarıdır. Nesneler ve sınıflar NYP'yi destekleyen programlama dilleri genellikle tekrar kullanım ve genişletilebilirlik açısından, prototipler ve sınıflar şeklinde kod kalıtımına sahiptirler ve NYP deki nesneler kimi zaman gerçek dünyada bulunan şeylere karşılık gelebilir. Mesela bir grafik programı "kare", "üçgen" ve "yuvarlak" gibi nesnelere sahip olabilir. Bazen nesneler daha soyut şeyleri de temsil edebilirler, mesela bir hesap makinesi programı logaritma almanızı ya da metreyi fite çevirmenizi sağlayacak nesnelere sahip olabilir. İşte bu bahsi geçen nesneler belli sınıflar altında bulunurlar, mesela "Kasım" adında bir nesne Aylar sınıfının bir üyesi olabilir ya da "Faktöriyel" olarak isimlendirilmiş bir nesne Fonksiyonlar sınıfında yer alıyor olabilir. Tarih Nesne yönelimli programı, 1960 yılında Norveç’li Norsk Resgnesentral tarafından icat edildi. Resgnesentral, ilk nesle odaklı dili olan Simula’yi üretti. 1961 yılında Simula l sınıflandırması ve sınıfların kullandığı nesneleri kullanılmaya başladı. 1967’de Ole-Johan Dahl ve Kristen Nygaard Simula 67’yi keşfetti. Simula 67, nesne yönelimlin ilk dili olarak kabul edildi ve nesne yönelimli olma kriterlerini karşılıyor. Algo 60 temelini Simula’yi olusturmak icin kullanılmışteır. Simula üniversite dışında pek ilgi görmedi. 1970 yılındaki yazılım krizinde modülerleştirmede yeni doğan dillerde nesne yönelimli olmasa da ona gerekli olan veri türü kavramını içeriyordu. Bu diller sayesinde, nesne yönelimli programlar geliştirildi. 1980 yılında ise yeni nesne yönelimli diller üretildi, örneğin Objective-C, C++ ve Eiffel. Nesne yönelimli diller üretildiğinde nesne yönelim yeri yazılımda sağlama alindi. 1990’larda nesne yönelimli programlama yaygınlaştı bunun sebebi ise doksanlarda grafik kullanıcı arayüzlerinin popülerliğinin artmasıydı. Son zamanlarda, nesne yönelimli programların değeri daha’da artti, çünkü nesne yönelimli programların verimli ve bakımını kolay elde etmek icin büyük katkıda bulunyor. Günümüzde yaygin olan Python ve Ruby dilleri, prosedürel programlama dilleri ile uyumludur. Ticari açıdan ise muhtemelen en önemli programa dili ise Java’dır. Java’nin kurucusu Sun Microsystems ayni zamanda C# ve Visual Basic.NET’in (VB.NET olarak da bilinir) kurucusudur. Kaynakça Ayrıca bakınız CORBA Nesne tabanlı programlama dili Nesne Yönelimli Çözümleme ve Tasarım Sarma (Bilgisayar Bilimleri) Soyutlama (Bilgisayar Bilimleri) Tasarım şablonları Dış bağlantılar İTÜ Ninova Açık Ders Malzemeleri , Nesne Yönelimli Programlama Actionscript ve Nesne Yönelimli Programlama (OOP) (Türkçe) Kategori:Nesne yönelimli programlama
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Izgara yada normal mod

Temanızda forum listeleme yapısını ızgara yapısında yada normal yapıda listemek için kullanabilirsiniz.

Forum arkaplan resimleri

Forum arkaplanlarına eklenmiş olan resimlerinin kontrolü senin elinde, resimleri aç/kapat

Sidebar blogunu kapat/aç

Forumun kalabalığında kurtulmak için sidebar (kenar çubuğunu) açıp/kapatarak gereksiz kalabalıklardan kurtula bilirsiniz.

Yapışkan sidebar kapat/aç

Yapışkan sidebar ile sidebar alanını daha hızlı ve verimli kullanabilirsiniz.

Radius aç/kapat

Blok köşelerinde bulunan kıvrımları kapat/aç bu şekilde tarzını yansıt.

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Geri