Kaba Kuvvet Metin Arama Algoritması (Bruteforce Text Search Algorithm)

Yazan: Şadi Evren ŞEKER 1. Algoritmanın başarısı 2. Algoritmanın çalışması ve bir örnek 3. Algoritmanın kodlanması Bilgisayar bilimlerinde bir metnin içerisinde başka bir metnin aranması için kullanılan en ilkel ve dolayısıyla en düşük performanslı arama algoritmasıdır (search algorithm). Algoritma hedef metinde, aranan metni harf harf bulmaya çalışır. Bu yapısından dolayı diziler üzerinde kullanılan doğrusal arama […]

Devam

JAVA ile Sohbet İstemci/Sunucusu

Yazan : Şadi Evren ŞEKER 1. Giriş 2. Sunucu / İstemci Mimarisi (Client /Server) 3. JAVA ile ağ programlama 4. JAVA dilinde veri iletişimi için akışların (streams) kullanımı 5. JAVA dilinde Temel bir istemci sunucu (client / server) kodlaması 6. Kodların derlnemesi ve çalıştırılması 7. Java dilinde çok lifli bir istemci / sunucu kodlaması 8. […]

Devam

Ekrana Kare Çizdiren Kod

Soru: Kullanıcıdan bir sayı alarak ekrana verilen sayı boyutlarında *’lardan oluşan içi dolu bir kare kodu yazınız. Çözen : Şadi Evren ŞEKER Yukarıdaki soruyu 4 ayrı dil için (C,C++,JAVA ve C#) ayrı ayrı çözeceğim. Böylelikle okuyucu bu diller arasında mukayese yapabilecek ve bildiği bir dilden diğer dillere kolayca geçebilecektir. Çözüm: Soru, yapısı itibariyle 2 boyutlu […]

Devam

Java Crypto ve Security Kütüphaneleri ile Kriptografi

Yazan : Şefik İlkin Serengil Temel Kriptografi işlemleri, Java Development Kit ile standart olarak gelen Crypto ve Security kütüphaneleri ile çok basite indirgenmiştir. Bu kütüphaneler, Özetleme fonksiyonlarından, blok şifrelere, açık anahtarlama altyapısından dijital imza’ya kadar birçok kriptografi tekniğinin kullanılmasına olanak sağlamaktadır. Açık Anahtarlama ile Şifreleme import java.security.*; import javax.crypto.*; public class AcikAnahtarlaSifreleme { public static […]

Devam

Geri İzleme Algoritması (BackTracking Algorithm)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde bir değerin aranması veya bir hedefe ulaşmak için kullanılan algoritmanın ismidir. Burada bir amaç bulunmalı ve amaca ulaşan çeşitli yollar arasından bir doğru seçim aranıyor olmalıdır. Örneğin bulmacalarda sorulan klasik iki boyutlu labirentler geri izleme algoritmaları (back tracking algorithms) biçilmiş kaftandır. Bu tip örneklerde labirentin bir ucundan başlanır […]

Devam

Paskal Üçgeni (Pascal’s Triangle)

Yazan : Şadi Evren ŞEKER İstatistikte sıkça kullanılan binom dağılımı ile elde edilen ve üssel ifadelerin açılımında çarpan olarak kullanılan üçgenin ismidir. Üçgen basitçe aşağıdaki şekilde inşa edilebilir. Her satır 1 ile başlayıp 1 ile biter Her değer kendi üzerindeki iki değerin toplamına eşittir 1 1 1 1 2 1 1 3 3 1 1 […]

Devam

JAVA JDK Kurulumu

Yazan : Şadi Evren ŞEKER JDK kurulum paketlerini java.sun.com adresinden temin edebilirsiniz. Bu kitap kapsamında kullanılacak olan JDK, J2SE (java 2 standard edition) olarak da geçmektedir. Bu yazı yazılırken en son sürüm J2SE 6.0 update 12 olarak yayınlanmıştır. Bu isimlendirme aynı zamanda JDK 1.6.0_12 olarak da geçmektedir. Burada sık yapılan bir hata JDK yerine JRE […]

Devam

Eşlemeli Metotlar (Synchronized Methods)

Yazan : Şadi Evren ŞEKER JAVA, C++ veya C# gibi nesne yönelimli programlama dillerinde kullanılan bir terimdir. Basitçe, aynı anda çalışan birden fazla lifin (thread) veya işlemin (process) sıralı olmasını ve birbiri ile iletişim halinde çalışmasını sağlar. Nesne yönelimli programlama ortamında iki farklı kavram birbirine sıkça karışmaktadır. Aslında anlam olarak birbirine yakın olan synchronized methods […]

Devam

Nesne serileme ve dizme (Object Serialization , Marshalling)

Yazan : Şadi Evren ŞEKER Bilgisayar bilimlerinde kullanılan bir yaklaşım olan nesne yönelimli programlama (object oriented programming) sayesinde gelişmiş olan bir kavramdır. Basitçe bir nesnenin (object) hafızada (RAM) olan bilgilerinin saklanmak veya ağ üzerinden yollanmak gibi amaçlarla bir dizgiye (string) dönüştürülmesi işlemidir. Bu dizginin yapısı olarak çoğunlukla XML dili kullanılır. bu sayede verinin içeriğini belirleyen […]

Devam

JML ( Java Modelleme Dili)

Yazan  : Şadi Evren ŞEKER JML ingilizce Java modelling language kelimelerinin baş harflerinden oluşan bir kısaltmadır. Basitçe bir java kaynak koduna eklenen ilave satırlar ile progam doğruluğunu (program correctness) sağlamayı amaçlar (program verification). İlave olarak eklenecek satırlar java kodunun içerisine yorum satırı gibi ilave edilir. Normal java yorum satırlarından tek farkı ilave olarak konulan @ […]

Devam