Φ Muallim-i Âli Gönderi tarihi: 25 Kasım , 2007 Paylaş Gönderi tarihi: 25 Kasım , 2007 Python İle Java Applet'i Yazmak - (Jython) - Anlatım Linux'a Göre Yapılmış Jython (Pythonun tamamen java ile yazılmış halidir. Python kütüphaneleri yerine java kütüphanelerini kullanmaya imkan tanır) Python ile java, .NET, PE (Portable Executable) programlar oluşturabilirsiniz. Zaten yazdığınız kod hiçbir değişikliğe uğramadan. Linux, Mac ve Windows'ta çalışabilmektedir. Linux ise ARM, SPARC, Intel, AMD, PowerPC gibi bir çok işlemcide çalışabildiğine göre varın gerisini siz düşünün. Python ile yazdığımız uygulamayı nasıl java bytecode'ları ile çalışabilecek hale getirebiliriz? import java.applet.Applet; import java.awt.Graphics; public class HelloWorld extends Applet { public void paint(Graphics g) { g.drawString("Hello world!", 50, 25); } } Bu tahmin edeceğiniz üzere "merhaba dünya" java applet'imiz Derleme işlemimiz kısaca şöyle (Tabi Java SDK'sının kurulu olması gerekli). $ javac HelloWorld.java from java.applet import Applet class HelloWorld(Applet): def paint(self, g): g.drawString("Hello from Jython!", 20, 30) Bu da aynı uygulamanın python eşdeğeri, bir başka ifade ile jython eş değeri. jython'da derleme sonucu .jar arşivleri oluşturuyoruz. Çünkü gereken python dönüştürücüsünün (adapter) arşive eklenmesi gerekmekte. $ jythonc --deep --core --jar HelloWorld.jar HelloWorld.py Eğer programımız applet değilde swing, awt veya console programı olsaydı $ java HelloWorld Şeklinde çalıştırabilirdik. Fakat java bytecode'larına derlenen appletleri html içine gömüp çalıştırabiliriz. <html> <head></head> <body> Java ile yazılıp javac ile derlenmiş applet:<br> <applet code="HelloWorld.class" width="200" height="50"></applet><br> Jython ile yazılıp jythonc ile derlenmiş applet:<br> <applet code="HelloWorld.class" archive="HelloWorld.jar" width="200" height="50"> </applet> </body> </html> Gömülü html dosyasını $ appletviewer test.html Şeklinde veya doğrudan tarayıcınız ile test.html dosyasına erişerek deneyebilirsiniz. Ancak.... jython kullanıyorsanız kodu derlemeden de deneyebilirsiniz. Bütün python uygulamalarında olduğu gibi. jython tercümanı derlemeye gerek duymaz. Bu nedenle ufak bir kaç ek kod ile derlemeden de jython appletimizi görebiliriz. from java.applet import Applet import sys class HelloDirect(Applet): def paint(self, g): g.drawString("Hello from Jython %s!" % sys.version, 20, 30) if __name__ == '__main__': import pawt pawt.test(HelloDirect()) Burada __name__ değişkeni __main__ katarına eşitse yani jython betiği doğrudan çalıştırılıyorsa, betik kendi kendini test eder. Normal jython betiklerini çalıştırdığımız gibi betiği deneyebiliriz. $ jython HelloWorld.py Alıntı Yoruma sekme Diğer sitelerde paylaş Daha Fazla Paylaşım Siteleri
Önerilen İletiler
Katılın Görüşlerinizi Paylaşın
Şu anda misafir olarak gönderiyorsunuz. Eğer ÜYE iseniz, ileti gönderebilmek için HEMEN GİRİŞ YAPIN.
Eğer üye değilseniz hemen KAYIT OLUN.
Not: İletiniz gönderilmeden önce bir Moderatör kontrolünden geçirilecektir.