Son Yazılar

JAVA Nesne Yönelimli Programlama

JAVA da nihai uygulması (Final)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, java dilinde bulunan final kelimesini açıklamaktır. Temel olarak final kelimesi, java dilinde 3 farklı yerde bulunabilir: Sınıf tanımında Metot (fonksiyon) tanımında Değişken tanımında Sırasıyla bu durumları uygulamalar üzerinden görelim. public final class…

JAVA Nesne Yönelimli Programlama

JAVA dilinde çoklu kalıtım (miras)

Yazan : Şadi Evren ŞEKER Bu yazının amacı, JAVA programlama dilinde bir sınıfın, birden fazla sınıftan nasıl miras aldığını anlatmaktır. Temel olarak JAVA dilinde doğrudan çoklu kalıtım (multiple inheritance) bulunmaz. Yani aşağıdaki gibi bir kod hatalıdır: public class bilgisayar_mühendisliğ_öğrencisi extends…

JAVA Nesne Yönelimli Programlama

Nesne Akışı (Casting)

Yazan : Şadi Evren ŞEKER Nesne yönelimli programlama dillerinde, sınıflar (class) arasında miras ilişkisi bulunması halinde (inheritance), bu sınıflardan türetilen nesnelerin birbirine akıtılması durumudur. Bu durumu aşağıdaki örnekler üzerinden anlamaya çalışalım: public class insan{ int boy; int kilo; } public…

JAVA Nesne Yönelimli Programlama

Nesne Kopyalama

Yazan : Şadi Evren ŞEKER Bu yazının amacı, nesne yönelimli programlama ortamlarında (object oriented programming) kullanılan iki temel kopyalama işlemini anlatmaktır. Literatürde bir nesnenin kopyalanması için geçen iki terim bulunur: Sığ kopyalama (shallow copying) Derin kopyalama (deep copying) Sığ kopyalama…

Sınavlar Veri Güvenliği (Cryptography)

Veri Güvenliği 2 dersi vize çözümleri

Soru 0) Ayrık logaritma çözme algoritmalarının mod n için kaçar deneme yapacağını yaklaşık olarak hesaplayınız ve algoritmaları buradaki başarısına göre sıralayınız. (30 puan)   Kaba kuvvet ile ayrık logaritma alma yöntemi mod n için en kötü n deneme gerektirir. Bebek…

Veri Güvenliği (Cryptography)

Zaman Etiketlemeli Yetkilendirme (Timestamp based authentication)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinin bir alt alanı olarak değerlendirilebilecek olan şifreleme (kriptoloji) konusunda kullanılan yetkilendirme (authentication) algoritmalarından birisidir. Özellikle günümüzde gelişmekte olan akıllı kart (smart card) kullanımıyla birlikte, bu algoritmaya duyulan gereksinim artmış ve sıkça kullanılır olmuştur….

Veri Güvenliği (Cryptography)

Legendre Sembolü

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde özellikle veri güvenliği konusunda kullanılan sayılar teorisinde (number theory) geçen bir semboldür. Basitçe, sonuçları -1, 0 veya 1 olabilen bir çarpım fonksiyonu olarak tanımlanabilir. Sembolün elde edilmesi için iki adet sayı kullanılır: p,…

Bilgisayar Matematiği

İkinci dereceden tortu (quadratic residue)

Yazan : Şadi Evren ŞEKER Sayılar teorisinde (number theory), herhangi bir tam sayının karesi (örneğin x diyelim), verilen bir modüloda (örneğin n diyelim), bir mükemmel sayıya (perfect number) denk ise (örneğin q diyelim), bu x sayısına modulo n’de ikinci dereceden…

Programlama Dilleri Temel Bilgisayar Kavramları Yazılım Mühendisliği

Spagetti Kod (Spaghetti Code)

Yazan : Şadi Evren ŞEKER Bilgisayar kodlamasında, bir kodun okunabilirliğinin düşük olması, yani kod takibinin zor olması durumunda, koda verilen isimdir. Genellikle yapısal programlama dillerinde (structured programming languages) fonksiyonların bulunması ile birlikte GOTO veya JMP gibi, kodun içerisinde bir yerden…

Bilgisayar Matematiği Veri Güvenliği (Cryptography)

Pohlig Hellman Algoritması

Yazan : Şadi Evren ŞEKER Steven Pohlig ve Marin Hellman tarafından geliştirilen, ayrık logaritma probleminin (discrete logarithm) çözümü için bir alternatif sunan algoritmadır. Algoritma basitçe aşağıdaki denklemde bulunan x değerine bir çözüm arar: e ≡ gx (mod p) Bu durum…