Java uygulaması
| uygulama | ||
|---|---|---|
| bilgisayar programının bir parçası | ||
| Genel bilgi | ||
| geliştirici | Güneş Mikrosistemleri | |
| Teknik Bilgiler | ||
| Zamanlanmış | Java | |
| Bağlantılar | ||
Java uygulaması , Java programlama dilinde yazılmış bir uygulamadır . Java uygulamaları , Java Sanal Makinesi (JVM) kullanılarak bir web tarayıcısında veya Sun'ın AppletViewer'ında çalışabilir .
Özellikleri arasında, bilgisayarda çalışan uygulamaların , siz onlara sistemde gerekli izinleri vermediğiniz sürece hassas parçalara (örneğin, dosya yazamazlar) erişememesini sağlayan bir güvenlik şemasından bahsedebiliriz; Bu yaklaşımın dezavantajı, izinlerin tesliminin ortak kullanıcı için zahmetli olmasıdır; bu, Java uygulamalarının hedeflerinden birine karşı çalışır : uygulamaları web tarayıcısından çalıştırmanın kolay bir yolunu sağlamak.
Java'da uygulama , bir HTML belgesine , yani bir web sayfasına gömülebilen bir programdır . Bir tarayıcı, uygulama içeren bir web sayfası yüklediğinde , uygulama web tarayıcısına indirilir ve çalışmaya başlar. Bu, herhangi bir kullanıcının yalnızca web sayfasını tarayıcılarına yükleyerek çalıştırabileceği programlar oluşturmanıza olanak tanır.
Uygulamayı yükleyen ve çalıştıran tarayıcı, genel terimlerle uygulamalar için "kapsayıcı" olarak bilinir . Java Standard Edition 7 için Yazılım Geliştirme Kiti ( 1.7.1 -- 18 Ekim 2011'de yayımlanan en son sürüm), uygulamaları bir sayfaya yerleştirmeden önce test etmek için uygulama görüntüleyici adı verilen bir uygulama sarmalayıcı içerir.
Avantajlar
Java uygulamaları tipik olarak aşağıdaki avantajlara sahiptir:
- Platformlar arasıdırlar ( Linux, Windows, OS X ve Java Sanal Makinesinin bulunduğu herhangi bir işletim sisteminde çalışırlar).
- Aynı uygulama , yalnızca eklentinin en son sürümünde değil, Java'nın "tüm" sürümlerinde çalışabilir. Ancak, bir uygulama Java Runtime Environment'ın (JRE) sonraki bir sürümünü gerektiriyorsa , istemci yeni JRE indirilirken beklemeye zorlanır.
- Çoğu web tarayıcısı ile uyumludur .
- Çoğu web tarayıcısında önbelleğe alınabilir , bu nedenle web sayfası yeniden yüklendiğinde hızlı bir şekilde yüklenir, ancak önbellekte takılıp yeni sürümler yayınlandığında sorunlara neden olabilir.
- Kullanıcı izin verirse, üzerinde çalıştığı makineye tam erişime sahip olabilir.
- C++ (JVM sürümüne bağlı olarak) gibi diğer derlenmiş dillerle karşılaştırılabilir hızlarda çalışabilir .
- Çalışmayı sunucudan istemciye taşıyabilir , böylece bir web çözümünü kullanıcı veya istemci sayısını göz önünde bulundurarak daha ölçeklenebilir hale getirebilirsiniz.
Dezavantajları
Java uygulamaları aşağıdaki dezavantajlara sahiptir:
- Java eklentisini gerektirir , ancak Chrome ve Edge tarayıcıları eklentileri desteklemez ve Firefox yakında bunları desteklemeyi bırakacaktır. Bu anlamda Oracle , Java 9'un yayınlanmasından itibaren Java eklentisinin geliştirilmesinden vazgeçeceğini de duyurdu. [ 1 ]
- JVM çalışır duruma gelene kadar yürütmeyi başlatamazsınız ve bu, bir uygulama ilk kez çalıştırıldığında zaman alabilir .
- Güvenilir olarak imzalanmadıysa, kullanıcının sistemine sınırlı erişimi vardır - özellikle müşterinin sabit sürücüsüne veya panosuna doğrudan erişimi yoktur.
- Bazı kuruluşlar yalnızca yöneticilerin yazılım yüklemesine izin verir. Sonuç olarak, birçok kullanıcı ( tarayıcılarına eklentiyi yükleme ayrıcalığı olmayan) uygulamaları göremez .
- Bir uygulama , JRE'nin belirli bir sürümünü gerektirebilir.
- Kötü amaçlı kodun yürütülmesine izin veren güvenlik açıkları içerebilir. [ 2 ]
Tek başına bir uygulama ile bir uygulama arasındaki farklar
Tek başına bir program ile bir uygulama arasında farklar vardır :
- Güvenlik kısıtlamaları: Uygulamalar , tüm İnternet kullanıcıları tarafından paylaşıldıkları için güvenilmeyen kod olarak kabul edilir [ 3 ] ( dijital bir imza taşımadıkları sürece ). Örneğin, yerel dosyalara erişime veya uygulamanın barındırıldığı sunucudan başka bir sunucuya bağlantıya izin verilmez .
- Görüntülenmek için bir tarayıcıya veya appletviewer gibi bir uygulama görüntüleyiciye ihtiyaçları var.
- Ana bir metodları yoktur.
Applet oluşturma ve çalıştırma
Bir uygulama oluşturun
Bir applet yaratmak için, Java.applet.* paketinden Applet sınıfının bir soyundan gelen bir şey yazmanız gerekir ;
java.applet'i içe aktarın.* ;
public class MyApplet , Applet { //'' Applet''in gövdesini genişletir . }
Yukarıdaki kod, Java Applet sınıfının tüm yeteneklerini devralan yeni bir MyApplet sınıfı bildirir. Sonuç bir MyApplet.java dosyasıdır.
Applet'i oluşturan sınıf oluşturulduktan sonra, kodun geri kalanı yazılır ve derlenir ve MiApplet.class dosyası elde edilir.
java.applet'i içe aktarın.* ;
içe aktar java.awt.* ;
içe aktar java.util.* ;
java.text.DateFormat'ı içe aktarın ;
public class MyApplet , Applet'i genişletir Runnable { private Thread thread = null ; özel Yazı tipi yazı tipi ; private String currentTime = "00:00:00" ;
public void init ()
{
yazı tipi = yeni Yazı Tipi ( "Verdana" , Yazı Tipi .BOLD , 24 ) ; } public void start () { if ( thread == null ) { thread = new Thread ( this , "Clock" ); iplik . başlat (); } } public void run () { Thread currentThread = Thread . akımKonu (); while ( thread == currentString ) { //geçerli saati al Calendar cal = Calendar . getInstance (); Tarih saat = kal . getTime (); DateFormat df = DateFormat . getTimeInstance (); akımZaman = df . biçim ( zaman ); yeniden boyamak (); { Konu . _ uyku ( 1000 ); } catch ( InterruptedException e ){} } } public void paint ( Grafik g ) { // g kabının çevresine bir dikdörtgen çizin . draw3DRect ( 1 , 1 , getSize ( . genişlik - 3 , getSize ( ). yükseklik - 3 , yanlış ); //Yazı Tipini Ayarla g . setFont ( yazı tipi ); // Zaman g'yi göster . drawString ( currentTime , 14 , 40 ); } public void stop () { thread = null ; } }
Swing grafik kitaplığı kullanılıyorsa , Applet yerine javax.swing'deki JApplet sınıfı kullanılabilir:
javax.swing'i içe aktarın .* ;
public class MyApplet , JApplet'i genişletir { // ''Applet''in gövdesi. }
Yürütme
Applet'i bir web sayfasına gömmek için aşağıdaki yapı kullanılır:
<parametre etiketi = "değer"></ etiketi>
<applet> etiketi
Yukarıdaki yapıyı takip ederek, uygulamayı çalıştırmak için bir HTML örneği :
< uygulama kodu = "MyApplet.class" genişlik = "370" yükseklik = "270" ></ uygulama >
Aşağıdaki nitelikler kullanılabilir:
| Bağlanmak | Tanım | Örnek |
|---|---|---|
codebase
|
Applet'i yükleyecek Java sınıfının indirilebileceği adres , sınıfın URL'si . Belirtilmezse, HTML sayfasının geçerli konumu olacaktır. | codebase="http://www.pagina.com/applet/"
|
code
|
Uygulamaya yüklemek istediğiniz sınıfın adı. Bulunduğu adres, codebase. Belirtilmezse codebase, uygulamayı yükleyen HTML sayfasıyla aynı klasördür.
|
code="NombreClase.class"
|
width
|
Genişliğin piksel cinsinden boyutu. | width=100
|
height
|
Yüksekliğin piksel cinsinden boyutu. | height=100
|
alt
|
Tarayıcı yüklenmesine izin vermiyorsa, uygulamanın yüklenmesi gereken yerde görüntülenen metin. | alt="Su navegador no permite cargar este Applet"
|
name
|
Uygulama için benzersiz bir ad belirleyin. | name="MiApplet"
|
archive
|
Çalıştırılmadan önce yerel kullanıcı önbelleğine yüklenmesi gereken virgülle ayrılmış bir sınıf listesidir. | archive="Clase1.class, Clase2.class, Clase3.class"
|
hspace
|
Yan kenar boşluklarını piksel olarak ayarlar. | hspace=25
|
vspace
|
Üst ve alt kenar boşluğunu piksel olarak ayarlar. | vspace=25
|
align
|
Diğer unsurlara göre hizalama. Değerler: left, center, right, top, middlevebottom
|
align="center"
|
mayscript
|
Uygulamanın JavaScript koduna erişip erişemeyeceğini belirtir | İlişkili bir değeri yoktur. Görünüyorsa geçerlidir. |
etiketi içinde , Java programı tarafından istenilen sayıda okunan anahtar/değer çiftlerini içeren
etiket <applet>görünebilir .<param>
<object> etiketi
HTML'nin 4.0 sürümünden itibaren, etiketin kullanımı modası geçmiş olarak kabul edildi <applet>ve yerine <object>.
Bu etiket, Microsoft Internet Explorer , Netscape 6 (ve üstü) ve Mozilla Firefox tarayıcıları tarafından desteklenir .
<applet>Bu etiket için tek
olan birçok özelliği paylaşır :
| Bağlanmak | Tanım | Örnek |
|---|---|---|
classid
|
Nesne türü tanımlayıcısı. | Java için bu:classid="clsid:CAFEEFAC-0014-0001-0000-ABCDEFFEDCBA"
|
codebase
|
.cabİçeriği yürütebilmek için gerekli olan eklentinin ağındaki
bir dosyaya işaret eden URL . |
codebase="Dirección_del_instalador_de_la_Máquina_Virtual_Java"
|
type
|
Nesne tarafından oynatılacak dosya türü. | <param name="type" value="application/x-java-applet;jpi-version=1.5.0">
|
Yaşam döngüsü
Bir uygulama yüklendiğinde, bu sırayla aşağıdaki yöntemler çağrılır:
init: genellikle uygulamayı başlatmak için yönergeler içerir .start: likeinit, genellikle başlatmak için kullanılır, ancak bu yöntemin uygulama yeniden başlatıldığında da çağrılması farkıyla .paint: appletin içeriğini görüntülemekten sorumludur . Her yeniden çizilmesi gerektiğinde yürütülür.
Yürütmeyi sonlandırmak veya duraklatmak için aşağıdaki yöntemler çağrılır:
stop: programın yürütülmesini askıya alır. Uygulama geçici olarak görünmez hale geldiğinde çağrılır .destroy: uygulama artık gerekli olmadığında . Kaynakları serbest bırakmak için kullanılır.
Ayrıca
Referanslar
- ↑ Peter Bright (27 Ocak 2016). "Oracle, Java tarayıcı eklentisini kullanımdan kaldırıyor, çöküşüne hazırlanıyor" . Ars Technica . Erişim tarihi: 28 Ocak 2016 .
- ↑ http://www.abc.es/tecnologia/20130115/abci-java-desactivar-problemas-201301151402.html
- ↑ "Sun Microsystem Uygulamaları ile ilgili Güvenlik Kısıtlamaları makalesi " . 10 Şubat 2009 tarihinde kaynağından arşivlendi . Erişim tarihi: 15 Ocak 2009 .
Bibliyografya
- Deitel, Harvey, Paul & Associates (2004). Java'da Nasıl Programlanır . Meksika: PEARSON EĞİTİMİ. 970-26-0518-0 .