Skip to main content

Kitap İncelemesi : Java Collections Framework Java Veri Yapıları

2011-2012 Eğitim Öğretim Yılı  önemli kararlar almama vesile oldu 🙂 Herşeyden az biraz bilmemin bana bir şey katmadığını biraz geçte olsa farkettim. Yaklaşık 2003 yılında HTML ile başlayan kod maceram yıllar içinde farklı dillerle devam etti. Ne olacağıma karar veremediğim zamanlar oldu 🙂 Henüz daha Liseye yeni başlamışken HTML   ile hiçte göze hitap etmeyen siteler yapmaya çalişarak adım atmıştım bu dünyaya.  HTML ile tanışmamda  tamamen Microsoft Office paketinin içinde yer alan Frontpage programı ile olmuştu onuda unutmamak gerek. Sonra yıllar içinde Pascal, Visual Basic, C, Delphi,  Vb.Net ,  C# ile irili ufaklı kendi çapımda denemelerim oldu. Bütün dillerde bir yere kadar geldim.  Ama hiç bir zaman çok çok ileriye gitmedim 🙂  Gün geldi canım sıkıldı SQL ile MYSQL ile uğraştım 🙂    Furyaya katılıp bir ara  iyi bir şekilde PHP öğrenmeye karar verdiysemde yeterli vakti bulup PHP öğrenemedim.  Web programlamayı sevmeme rağmen tasarım alanında  beceriksiz olmamdan dolayı bu alanda asla kendimi ilerletemedim .    Masaüstü programcılığıda ise önüme bir sorun koyulduğunda onun için bir şeyler geliştirdim ama oturupta kendim bir şey yapayım hiç demedim.  İşte bu yüzde hiç bir zaman bir alanda en iyi olamadım.

2012  bu açıdan bir dönüm noktasıydı  ve daha önceki blog yazılarımda bir tanesinde Java  ile devam etmeye karar verdiğimi en azından Java da iyi olmayı hedeflediğimi söylemiştim.  Bu amaçla aldığım kitaplardan birini sizlere tanıtmak istiyorum. Kitap  Oracle desteği ile yazılmış bir kitaptır.  Java ‘nın temel  kurallarına hakim olduktan sonra alınması gereken bir kitaptır. Yani Java Programaya bu kitap ile başlamanız kesinlikle önerilmez.

 

Programlamaya başlayan  bir insanın  ilk öğrenmesi gereken kavram Algoritma kavramıdır. Bir algoritma nasıl tasarlanır, nasıl test edilir , yeni algoritmalar nasıl geliştirilir,  var olan algoritmalar nasıl daha verimli hale getirilebilir gibi bir çok soru sorabiliriz kendimize.     Eğer C , C++  , Delphi gibi diller kullanıyorsak bu tür algoritmaları kendimiz geliştirmek zorunda kalabiliriz. Örneğin bir sıralama algoritması yazmaya çaliştiğımızı düşünelim.  Bunu için  öncelikle kendimize bir algoritma belirlememiz ve  bu algoritmaya uygun bir şekilde kod yazmamız gerekiyor.    Örneğin  tek boyutlu bir dizinin verilerini sıralamak istediğimizi düşünelim.  Bunu yapabilmenin en kolay yolu Seçmeli Sıralama olarak adlandırdığımız sıralama algoritmasını kullanmaktır. Her ne kadar yavaş çalışan bir sıralama olsa da kolay en kolay uygulanabilir algoritma olması sebebiyle bu algoritma genelde yeni başlayanlar tarafından tercih edilir. Algoritma şu şekilde işler.

  1. Listedeki en küçük değerli öğeyi bul.
  2. İlk konumdaki öğeyle bulunan en küçük değerli öğenin yerini değiştir.
  3. Yukarıdaki adımları listenin ilk elemanından sonrası için (ikinci elemandan başlayarak) yinele.

Örneğin tek boyutlu diziyi sıralayan bir  fonksiyon C dilinde şu şekilde kodlanabilir..

 

public int[] secmeliSiralama(int[] dizi)
{
    int enkucuk, yedek;
    for (int i = 0; i < dizi.Length - 1; i++)
    {
         enkucuk = i;
         for (int j = i + 1; j < dizi.Length; j++)
             if (dizi[j] < dizi[enkucuk])
                 enkucuk = j;
         if (enkucuk != i)
         {
             yedek = dizi[i];
             dizi[i] = dizi[enkucuk];
             dizi[enkucuk] = yedek;
         }
     }
     return dizi;
}

Görüldüğü gibi en basit bir sıralama işlemini yapmak için bile bir efor harcamak gerekmektedir. İşte günümüzde bir takım programlama dilleri bu olayları kolaylaştırmayı kendisine hedef olarak belirlemiştir. Eğer bir C programcısıysanız basit bir sıralama yapmak için yukarıdaki algoritmayı kullanmanız şart. Ama Java gibi C# gibi dillerde bunu yapmanız gerekmiyor. Çünkü bu tür diller içersinde bu algoritmaları barındıran metodlara halihazırda sahipler. İşte bu kitap Java dilinde bu tür veri yapılarını nasıl kullanacağımızı bize anlatan bir kitap.

Kitaba söyle göz ucuyla baktım . Güzel konulara değindiğini söyleyebilirim. Baskı kalitesi oldukça iyi, ve boyutları taşınabilir düzeyde. Kitap Java’nın 5. sürümüyle hayatımıza giren JFC ( Java Collection Framework) kavramını bize  öğretmeye çalışıyor. Java Collections Frameworks çatısı içersinde yer alan yapıları ve bu yapıların metodlarının nasıl kullanıldığını öğrenmek istiyorsanız ve  Temel Java bilginiz varsa kitap kesinlikle  edinmeniz gereken kaynaklardan bir tanesi. Türkçe kaynak sıkıntısını göze aldığınızda bu alanda  oldukça değerli bir kaynak  olduğunu rahatlıkla söylebilirim.

Kitap 40 Lira civarında bir ücretle satılıyor. Kitapçıdan kitapçıya ücret değişebilir 🙂 Ben Beyazıt Sahaflar çarşısından o fiyata aldım 🙂   Ayrınca Yayınevine  de dikkat çekmek istiyorum. Kitap  Pusula Yayınlarından çıkmakta. Pusula yayınlarının  Türk bilişim dünyasına kazandırdığı kitapları sanırım saymaya gerek yok.  Java dünyasında bir adım daha yukarı çıkmak isteyen herkesin kitaplığında  bu kitaba yer vermelerini gerekiyor. 🙂

Kitap Hakkında  daha fazla bilgiye  ve içerdiği konulara göz atmak için aşağıdaki kitap yurdu linkini incelemeyi unutmayın 🙂

http://www.kitapyurdu.com/kitap/default.asp?id=589082

 

 

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Aytaç Cici

İstanbul Üniversitesi Bilgisayar Mühendisliği mezunu bir Yazılım Geliştirici. Çeşitli zamanlarda Java, PHP, C# ve Delphi gibi diller kullanarak yazılım geliştirmiştir. Bir dönem SEO alanında da çalışmalar yapmıştır.

Kitap İncelemesi : Java Collections Framework Java Veri Yapıları” hakkında 1 yorum

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Email
Print