06.03.2015 Views

Java Kitabı

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

JAva`nın çalışma mantığıyla başlayıp basitten gelişmişe iyi bir kaynak

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Bu hata mesajının anlamı, ikinci catch bloğunun boĢu boĢuna konulduğu yönündedir çünkü zaten ilk<br />

catch bloğu, bu istisnayı yakalayabilir, bu yüzden ikinci catch bloğuna ()<br />

Bu dökümanın her hakkı saklıdır.<br />

© 2004<br />

<strong>Java</strong> 24 Bölüm 14: 7 Yıl Sonra Applet<br />

Yıllar önce ben üniversitede öğrenciyken (sanırım 1996 veya 1997 yılıydı) değerli bir<br />

sınıf arkadaşımı ziyarete gitmiştim. Kendisi bilgisayar teknolojilerine son derece ilgili<br />

birisiydi ve bu anlamda ortak pek çok yönümüz vardı. O yıllarda ikimizde, özellikle<br />

görsel programlamaya yönelik yazılım geliştirme ortamlarına ilgi duyuyorduk. O<br />

günkü ziyaretimde, dostumun elinde o güne kadar gördüğüm en kalın kitap<br />

duruyordu. Sanırım o zamanlar gözüme çok büyük gözükmüştü. Öyleki o güne dek<br />

hiç 900 sayfalık bir bilgisayar kitabı görmemiştim. Oysaki şimdi o 900 sayfalık<br />

kitapları arar oldum. En son çalıştığım bilgisayar kitabı 1500 sayfaya yakın olunca,<br />

insan ister istemez özlüyor.<br />

Neyse sözün kısası, arkadaşımın elinde tuttuğu kitap, ingilizce bir bilgisayar kitabıydı<br />

ve <strong>Java</strong> diye bir şeyden bahsediyordu. Oha falan oldum yani der gibi arkadaşımın<br />

gözlerine baktım. Çünkü ilk aklıma gelen StarWars serisindeki <strong>Java</strong> olmuştu. Hemen<br />

ne demek istediğimi anladı ve anlatmaya başladı. <strong>Java</strong>’nın yeni bir programlama dili<br />

olduğunu, C++’ın syntax’ına çok benzer yer yer aynı yazımları kullandığını ancak işin<br />

içinde platform bağımsızlığın yer aldığını söyledi. O zamanlar bende pek çok kişi gibi<br />

platform bağımsız kısmına geldiğinde, hafif bir tebessümle hadi canım demiştim. Çok<br />

geçmeden bana kitabın ilk kaynak uygulamsından geliştirdiği kodu gösterdi. Burada<br />

komik bir çizgi karakter (kırmızı burunlu) bir internet explorer penceresinde bir oraya<br />

bir oraya taklalar atıyordu. Bu nedir diye sorduğumda bana bunun bir Applet<br />

olduğunu ve browser’ın üzerinde dinamik olarak yerel makinede çalıştığını söyledi. O<br />

zamanlar elbetteki browser üzerinde çalışan dinamik uygulamalara hiç aşina<br />

değildim.<br />

<strong>Java</strong> dilini öğrenmeye başladığımda, günün birinde bu değerli arkadaşımı<br />

hatırlayacağımı ve kulaklarını çınlatacağımı biliyordum. Artık o zamanlar söyledikleri<br />

şimdi kulağıma daha teknik olarak geliyor. Eeee ne demişler "geç olsunda güç<br />

olmasın". İşe appletlerin ne olduğunu kavramak ile başlamam gerekiyordu. Daha<br />

sonraki kahve molalarımda ise appletleri kullanıcı ile dinamik olarak etkileşime<br />

sokmaya çalışacaktım. Ama önce teknik bilgi ve basit kodlara ihtiyacım vardı. Tabiki<br />

appletin basit bir tanımından sonra.<br />

Bir applet, istemci uygulamada yada başka bir deyişle yerel makinede, <strong>Java</strong> Virtual<br />

Machine’e sahip herhangibir tarayıcıda (browser) derlenerek çalıştırılan dinamik bir<br />

java programcığından başka bir şey değildir. Applet’leri normal java programları<br />

yazar gibi java dosyaları olarak yazar ve javac aracı ile class olarak byte-code’a<br />

çeviririz. Tek fark, bu program parçalarının, tarayıcıdan talep edilmeleri halinde,<br />

tarayıcının sahip olduğu JVM sayesinde derlenerek bu tarayıcının yer aldığı yerel<br />

makinede dinamik olarak çalışacak olmalarıdır. Dolayısıyla normal java byte kodları<br />

gibi, bu kodlarda çalıştırıldıklarında derlenirler. Ancak çalışma sistemleri, içerdikleri<br />

olay yapıları konsol veya görsel arabirime sahip java uygulamalarından biraz daha<br />

farklıdır. Herşeyden önce, tarayıcıda çalıştıkları için, belirli bir alan içerisinde<br />

çizilebilirler yada kullanılabilirler. Bununla birlikte dinamik çalışmaya müsait oldukları<br />

için aşağıdaki olayları gerçekleştirmelerine, yerel makinelerin güvenliği açısından izin<br />

248

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!