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
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