Applet'lere Özgü Kısıtlamalar
Yerel makineden (çalıştıkları makine) dosya kopyalayamazlar.
|
Dosya silemezler.
|
Dosya açamazlar veya oluşturamazlar.
|
İndirildikleri sunucudan başka bir sunucu ile herhangibir ağ bağlantısı kuramazlar.
|
İndirildikleri bilgisyarda başka programları çalıştıramazlar.
|
Dosya sistemine erişemezler veya okuyamazlar.
|
Applet'lerin çalışması ile ilgili olarak en dikkat çekici nokta, çağırıldıkları sunucudan istemci bilgisayarın tarayıcısına indirilmeleridir. Nitekim, bu işlemin gerçekleştirilmesi için, applet'e ait class dosyasının bir şekilde html kodu içerisine gömülmesi gerekecektir. Bunun nasıl yapıldığını görmek için öncelikle bir applet geliştirmek gerektiği kanısındayım. Ne kadar basit olursa olsun en azından nasıl çalıştığını görmem gerekiyor. Kaynaklarımı inceledikten sonra, aşağıdaki gibi bir örnek java dosyasını oluşturdum.
import java.awt.*;
import java.applet.Applet;
public class IlkApplet extends Applet
{
public void Paint(Graphics g)
{
g.drawString("Yihuuu",50,50);
}
}
|
Burada oluşturduğum java dosyasını javac ile derlediğimde herhangibir sorun ile karşılaşmadım. Peki ama kodum ne yapıyordu? Her şeyden önce ilk dikkatimi çeken, kullanılmak üzere eklediğim awt ve applet paketleriydi. Awt paketini ileride detaylı incelemeyi düşünüyordum zaten.
Ancak yinede ön bilgiye ihtiyacım vardı. Awt paketi içerisinde, java ile kullanabileceğimiz görsel arayüzlere ait nesneler için bir çok sınıf bulunuyordu. Applet'lerde sonuç itibariyle, tarayıcı penceresinde çalışacaklarından, kullanıcılar ile görsel iletişim sağlamamıza yarayacak buton,textbox gibi nesneler içerebilirdi. İşte bu amaçla awt paketi vardı. Gerçi kullandığımız bir nesne yok gibi gözükebilir ancak, Graphics sınıfı awt paketi içerisinde yer alan ve appletin çalıştığı alan içerisine bir şeyler çizmek için (örnekte olduğu gibi yazı yazmak için mesela) kullanılan bir sınıftır.
Diğer önemli bir kavramda, sınıfın Applet sınıfından türetilmiş olmasıydı. Bu, yazılan java sınıfının bir applet olarak değerlendirileceğini belirtmekteydi. Dolayısıyla applet sınıfından bir takım özellikleri kalıtımsal olarak alacağımız kesindi. Gelelim, Paint metoduna. İşte işin en can alıcı noktası burasıydı. Bu metod, tarayıcı pencersinde, appletin çalıştığı alana birşeyler çizmek için kullanılıyordu. Daha doğrusu applet, sınırları ile birlikte tarayıcı penceresinde çizilmeye başladığında çalışıyordu.
Artık, değerli dostumun tarihi java kitabındaki kırmızı burunlu kahramanın nasıl taklalar attığını daha iyi anlamaya başlamıştım. O zamanlar çizgi filim gibi gelmişti. Ancak şimdi gerçeğin ta kendisi karşımdaydı. Peki şimdi ne olacak? Bir şekilde yazdığım appleti test etmem gerekiyor. İlk aklıma gelen ancak denemek istemediğim şeyi deneyerek işe başladım. Şöyleki,
Böyle birşeyin başıma geleceği kesindi diyebilirim. Elbetteki appletin çalışma sistemine bakıldığında farklı şekilde uygulanmaları gerekirdi. Her şeyden önce, bu applet bir tarayıcıya indirilecek ve oradaki JVM tarafından derlenecekti. Bunu test etmenin iki yolu vardı. Birincisi bir applet tagı ile bu sınıfı bir html sayfasına koymak yada Applet Viewer aracını kullanmaktı. İlk önce applet tagını aşağıdaki gibi denedim. Bunun için applet sınıfım ile aynı klasörde olan bir html sayfası hazırladım.
New Page 1
<%
String adim="Burak";
out.println(adim);
%>
<%=request.getParameter("tAd")%> |
<%=request.getParameter("tSoyad")%> |
|
Dostları ilə paylaş: |