create account

Turkish Tutorial for Jython Part #1 by mustafacan

View this thread on: hive.blogpeakd.comecency.com
· @mustafacan · (edited)
$20.29
Turkish Tutorial for Jython Part #1
Hi Utopians,
This tutorial series are about the Jython script language. This article is about short information about jython, setup and how it works.
                                                     
Merhaba arkadaşlar bu seride sizlere Jython kullanımı hakkında bilgiler vermeye çalışacağım umarım sizler için faydalı bir içerik serisi olacaktır.
Jython, Python programlama dili için bir JVM uygulamasıdır. Java platformunda çalışacak şekilde tasarlanmıştır.
>
> Jython 1997'de Jim Hugunin tarafından oluşturulmuştur. CPython adı verilen standart Python uygulamasını yakından takip eder. Jython 2.7.0 Mayıs 2015'te piyasaya çıktı ve CPython 2.7'ye karşılık geldi. 

https://i.hizliresim.com/vjYzd6.png
[Source Image](https://blog.smartbear.com/programming/embedding-jython-in-java-applications/)

Bu, Jython'ın temellerini kapsayan çeşitli modüllerini ve alt modüllerini nasıl kullanmanız gerektiğini anlatan bir tanıtım yazısı olacaktır. (JVM: java kodlarını çalıştırabilmek için gerekli ortamı sağlayan sanal platform.)
Jython, Java platformunda çalışacak şekilde geliştirilmiştir. Bir Jython programı herhangi bir Java içeriğini içe aktarabilir ve çalıştırabilir.Jythonun esas avantajlarından biri, Phyton'da tasarlanmış AWT,Swing veya SWT paketlerinin GUI öğelerini kullanabilmesidir. 
### Python - Jython Kıyaslayalım
 * CPython isimli Python referans uygalaması C dili ile yazılmıştır. Jython ise tamamen Java ile yazılmış olan bir JVM uygulamasıdır.
* Standart Python kodunun çıktısı .pyc olarak dosyalandırılırken, Jython için bu .class olarak dosyalanır.
* Python birden çok platformda çalıştırılabilirken, Jython JVM yüklü platformlarda kullanılabilir.
* Python uzantıları C dilinde yazılabilir, Jython'un uzantıları java ile yazılmıştır.
### Python - Java Kıyaslayalım
* Java ''{}'' parantez tipini kullanırken, Python ''[]'' parantez tipini kullanır.
* Python geliştiriciye bağlı bir dildir, ayrı bir derleme basamağı yoktur.Java tarafında ise programı bayt koduna düzenlenmeli ve sırayla JVM tarafından çalıştırılmalıdır.
* Python, dinamik olarak yazılmış bir dildir. Bundan dolayı, değişken türünün bildirimi gerekli değildir.Java ise, statik olarak yazılmış bir dildir; bu, değişken türünün zorunlu olduğu ve değiştirilemediği anlamına gelir.
* Python, Java'ya kıyasla daha zengin dahili veri yapısına sahiptir.
## Jython Kuralım:
Öncelikle Jython kurulumuna başlamadan sisteminizde JDK7 veya daha üst sürümünün kurulu olması gerekmektedir. [Buradan](http://www.jython.org/downloads.html ) .jar dosyası olarak indirip açarak kurabileceğiniz gibi, aşağıda vermiş olduğum kodu çalıştırarakta Jython kurulumunu gerçekleştirebilirsiniz.
```java -jar jython_installer-2.7.0.jar```

JDK7' yi [buradan](http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html) edinebilirsiniz.
https://i.hizliresim.com/76m9P5.png 
[Source Image](http://techdows.com/wp-content/uploads/2011/07/Java-7.png)
### Java Kitaplıklarını İçe Aktarma
Şimdi Jython programının en önemli özelliklerinden olan, Python programından java paketlerini Jython'da içe aktarma özelliğini göreceğiz.Aşşağıda vermiş olduğum örnek, tarih nesnesinin java.util paketlerinin Python (Jython) komut dosyası ile nasıl içe aktarılacağını göstermektedir.
```
from java.util import tarih
tarih = date()
print tarih
```
Yukarıdaki kodu kaydedin ve Tarih.py komut satırından çalıştırın. Geçerli tarih örneği görüntülenecektir.
```
C:\jython27\bin>jython Tarih.py
Mon Jan 08  19:21:31 TUR 2018
```
Java kitaplığındaki aşağıda verilmiş olan paketler, çoğunlukla standart Python kitaplığının eşdeğerleri olmadığı için Jython programında sıklıkla içe aktarılır.
* Javadoc
* JMS
* Servlets
* J2EE
Burada bir Java paketini Jython komut dosyasına aktarılabiliriz. Burada, aşağıdaki java programı depolanır ve foo isimli paket içinde derlenir.
```
package foo;
public class HerkeseBendenCay {
   public void cay() {
      System.out.println("Herkese Benden Cay!");
   }
   public void cay(String cay_gelsin) {
      System.out.printf("Herkese Benden Cay %s!", cay_gelsin);
   }
}
```
Bu HerkeseBendenCay.class aşağıdaki Jython Komut Dosyasında içe aktarılır. Bu sınıftaki yöntemler Caytesti.py Jython komut dosyasından çağırılabilir.
```
from foo import HerkeseBendenCay
ilkcayimiz = HerkeseBendenCay ()
ilkcayimiz.cay()
ilkcayimiz.cay("Caylar MCB'den :) ")
```
Aşağıdaki çıktıyı almak için komut satırından yukarıdaki komutu kaydedin ve çalıştırın.
```
C:\jython27\bin>jython importex.py
Herkese Benden Cay
Herkese Benden Cay Caylar MCB' den
```
Arkadaşlar görmüş olduğunuz üzere fonsiyonları boş parametre ile kullanıp direk çalıştırabilme imkanımız var aynı zamanda kullanıc girdisi isteyerekte belirlemiş olduğumuz mesajın sonuna yukarıda da görüldüğü gibi kullanıcının girmiş olduğu ifadeyi fonksiyona yollayıp ekran görüntüsü olarak çıktı alabiliyoruz.


<br /><hr/><em>Posted on <a href="https://utopian.io/utopian-io/@mustafacan/turkish-tutorial-for-jython-part-1">Utopian.io -  Rewarding Open Source Contributors</a></em><hr/>
👍  , , , , , ,
properties (23)
authormustafacan
permlinkturkish-tutorial-for-jython-part-1
categoryutopian-io
json_metadata"{"community":"utopian","app":"utopian/1.0.0","format":"markdown","repository":{"id":35235321,"name":"jython3","full_name":"jython/jython3","html_url":"https://github.com/jython/jython3","fork":false,"owner":{"login":"jython"}},"pullRequests":[],"platform":"github","type":"tutorials","tags":["utopian-io","tutorial","tr"],"users":["mustafacan"],"links":["https://blog.smartbear.com/programming/embedding-jython-in-java-applications/","http://www.jython.org/downloads.html ","http://www.oracle.com/technetwork/java/javase/downloads/java-archive-downloads-javase7-521261.html","http://techdows.com/wp-content/uploads/2011/07/Java-7.png"],"moderator":{"account":"manishmike10","reviewed":true,"pending":false,"flagged":false}}"
created2018-01-08 18:15:00
last_update2018-01-10 11:15:00
depth0
children2
last_payout2018-01-15 18:15:00
cashout_time1969-12-31 23:59:59
total_payout_value14.258 HBD
curator_payout_value6.027 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length5,032
author_reputation1,029,005,121,365
root_title"Turkish Tutorial for Jython Part #1"
beneficiaries
0.
accountutopian.pay
weight2,500
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id28,058,299
net_rshares2,308,455,867,745
author_curate_reward""
vote details (7)
@manishmike10 ·
$0.24
Thank you for the contribution. It has been approved.

You can contact us on [Discord](https://discord.gg/UCvqCsx).
**[[utopian-moderator]](https://utopian.io/moderators)**
👍  
properties (23)
authormanishmike10
permlinkre-mustafacan-turkish-tutorial-for-jython-part-1-20180110t111505601z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-01-10 11:15:06
last_update2018-01-10 11:15:06
depth1
children0
last_payout2018-01-17 11:15:06
cashout_time1969-12-31 23:59:59
total_payout_value0.236 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length172
author_reputation20,399,732,899,016
root_title"Turkish Tutorial for Jython Part #1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id28,473,115
net_rshares22,679,867,190
author_curate_reward""
vote details (1)
@utopian-io ·
### Hey @mustafacan I am @utopian-io. I have just upvoted you!
#### Achievements
- You have less than 500 followers. Just gave you a gift to help you succeed!
- Seems like you contribute quite often. AMAZING!
#### Suggestions
- Contribute more often to get higher and higher rewards. I wish to see you often!
- Work on your followers to increase the votes/rewards. I follow what humans do and my vote is mainly based on that. Good luck!
#### Get Noticed!
- Did you know project owners can manually vote with their own voting power or by voting power delegated to their projects? Ask the project owner to review your contributions!
#### Community-Driven Witness!
I am the first and only Steem Community-Driven Witness. <a href="https://discord.gg/zTrEMqB">Participate on Discord</a>. Lets GROW TOGETHER!
- <a href="https://v2.steemconnect.com/sign/account-witness-vote?witness=utopian-io&approve=1">Vote for my Witness With SteemConnect</a>
- <a href="https://v2.steemconnect.com/sign/account-witness-proxy?proxy=utopian-io&approve=1">Proxy vote to Utopian Witness with SteemConnect</a>
- Or vote/proxy on <a href="https://steemit.com/~witnesses">Steemit Witnesses</a>

[![mooncryption-utopian-witness-gif](https://steemitimages.com/DQmYPUuQRptAqNBCQRwQjKWAqWU3zJkL3RXVUtEKVury8up/mooncryption-s-utopian-io-witness-gif.gif)](https://steemit.com/~witnesses)

**Up-vote this comment to grow my power and help Open Source contributions like this one. Want to chat? Join me on Discord https://discord.gg/Pc8HG9x**
properties (22)
authorutopian-io
permlinkre-mustafacan-turkish-tutorial-for-jython-part-1-20180111t080336608z
categoryutopian-io
json_metadata{"tags":["utopian-io"],"community":"utopian","app":"utopian/1.0.0"}
created2018-01-11 08:03:36
last_update2018-01-11 08:03:36
depth1
children0
last_payout2018-01-18 08:03:36
cashout_time1969-12-31 23:59:59
total_payout_value0.000 HBD
curator_payout_value0.000 HBD
pending_payout_value0.000 HBD
promoted0.000 HBD
body_length1,508
author_reputation152,955,367,999,756
root_title"Turkish Tutorial for Jython Part #1"
beneficiaries[]
max_accepted_payout1,000,000.000 HBD
percent_hbd10,000
post_id28,695,048
net_rshares0