Veri Bütünlüğü (Data Integrity)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin birinci derece uğraştığı varlık veridir. Yani bilgisayar bilimlerinde yapılan her işi bir bakışa göre veriyi işlemek olarak görmek mümkündür. İşlenen bu verinin bütünlüğü ise ayrı bir problemdir. Veri bütünlüğü ile genelde verinin birden fazla parçaya bölünmesi durumunda bu parçaların bütün olarak tutulması kastedilir. Veri’nin bölünmesi ne zaman gerekir […]

Devam

Atomluluk (Atomicity)

Yazan: Şadi Evren ŞEKER Latince bölünemez anlamına gelen atom kökünden üretilen bu kelime, bilgisayar bilimlerinde çeşitli alanlarda bir bilginin veya bir varlığın bölünemediğini ifade eder. Örneğin programlama dillerinde bir dilin atomic (bölünemez) en küçük üyesi bu anlama gelmektedir. Mesela C dilinde her satır (statement) atomic (bölünemez) bir varlıktır. Benzer şekilde bir verinin bölünemezliğini ifade etmek […]

Devam

SableCC

Yazan : Şadi Evren ŞEKER SableCC 1998 yılında Étienne Gagnon tarafından bir yüksek lisans tezi olarak hazırlanmış ve dil geliştirmekte kullanılan, JAVA üzerinde çalışan, nesne yönelimli bir geliştirme ortamıdır. Temel olarak SableCC üzerinde bir dil geliştirmek için aşağıdaki adımların takip edilmesi gerekir: Dilde bulunacak olan kelimeler (lexicons) için bir kelime tanımı (lexical definition) yapılmalıdır. Tanım […]

Devam

Varlık-Ağaç Modelleme (Tree Model)

Yazan : Şadi Evren ŞEKER Bilgisayar grafiklerinde nesneleri modellemek için kullanılan yapılardan birisidir. Buna göre modelleme işlemi için bir veri ağacı kullanılır ve bu veri ağacının her üyesi bir nesneden oluşur. Bu sayede nesneler arasındaki bağlantı tutulabileceği gibi nesneler gruplanarak daha üst nesne tanımları elde edilmiş olur. Örneğin aşağıdaki araba modelini ele alalım: Yukarıdaki ara […]

Devam

Tasarım Kalıpları (Tasmim Kalıpları, Design Patterns)

Yazan : Şadi Evren ŞEKER Yazılım mühendisliğinde sıkça kullanılan tasarım kalıplarının bir kütüphane haline getirilmesi ve bu kütüphanenin ileriki projelerde kullanılmasıyla proje gelitşrime sürelerinin kısaltılması hedeflenmektedir. Bu kütüphane (design patterns library) genelde farklı yapılar içerebilmesine karşılık aşağıdaki gruplarda toparlanabilir: Web tasarım kalıpları (web design patterns) UML tasarım kalıpları (UML Design patterns) Grafik arayüzü tasarım kalıpları […]

Devam

RMI (Remote Method Invocation, Uzaktan Metod Çağırma)

Yazan : Şadi Evren ŞEKER Dağıtık programlamanın bir parçası olan RPC( Remote Procedure Call ) üzerine inşa edilmiş olan ve nesne yönelimli programlama akımıyla birlikte gelişmiş olan RMI yaklaşımı basitçe bir kodun bir parçası olan methodun başka bir kod tarafından çağrılmasını sağlar. Temel olarak sistemde rmiregistry ismi verilen bir kayıt üzerinde RMI için çağrılması uygun […]

Devam

Kütük (stub, nesne vekili, object Proxy)

Yazan : Şadi Evren ŞEKER Nesne yönelimli programlamanın gelişmesiyle birlikte dağıtık nesne mimarisi denilen bir kavram gün yüzüne gelmiştir. Bu kavrama göre bir nesne yönelimli projeyi farklı bilgisayarlar üzerinde dağıtmak ve projenin bu farklı bilgisayarlar üzerindeki farklı nesneler ile iletişim kurmasını sağlamak mümkündür. Bu işlem için örneğin JAVA dilindeki RMI (uzaktan metod çağırma , remote […]

Devam

Tip İnkılabı (Tip Dönüştürme, Type Casting)

Yazan : Şadi Evren ŞEKER Programlama dilinde bir değişkenin (variable) tipinin değiştirilmesi anlamındadır. Temel olarak değişkenlerin tanımlandığı andan itibaren bir tipi bulunur. Bunun her ne kadar bazı dillerde istisnası olsa da (php, visual basic, perl gibi) bu dillerde de değişkenin tipi yine de tipsiz olarak belirtilmektedir. İşte tanımlama sırasında sahip olunan tipin daha sonradan değiştirilmesi […]

Devam

Yapıcı (Constructor)

Yapıcı (Constructor) Yazan : Şadi Evren ŞEKER Nesne yönelimli programlama yaklaşımında bir nesnenin oluşturulması sırasında ilk çalışan fonksiyonun ismidir. Buna göre bir nesnenin oluşturulması demek, nesneyi tarif eden sınıftan bir türün hafızada (RAM) bir kopyası için yer açılması ve bu nesnenin bütün değişken ve metodlarının tanımlanan kısıtlamalarla erişilebilir olması demektir. Bilindiği üzere nesne yönelimli programlamada […]

Devam

İstisna Yakalama (kabz-ı istisna, Exception Handling)

Yazan : Şadi Evren ŞEKER Nesne yönelimli programlama dillerinde istisnai bir durumu, beklenmedik bir olayı algılayıp buna karşı bir kod parçasının çalışmasıdır. Örneğin hafıyza bir dosya okuyacak olalım. Bu işlemler sırasında: dosyanın disk üzerinden bulunarak açılması dosyanın boyutunun belirlenmesi dosya için hafızda boyutu kadar yer açılması dosyanın bu hafızada açılmış yere yüklenmesi dosyanın kapatılması işlemlerinin […]

Devam